1、C程序设计教程第3章 顺序程序设计2023-5-61 顺序结构是程序设计语言最基本的结顺序结构是程序设计语言最基本的结构,其包含的语句是按照书写的顺序执行构,其包含的语句是按照书写的顺序执行的,且每条语句都将被执行。的,且每条语句都将被执行。C语言的语句可分为以下四类:简单语言的语句可分为以下四类:简单语语句(包括输入句(包括输入/输出语句)、空语句、复合输出语句)、空语句、复合语句和流程控制语句。语句和流程控制语句。3.1 C语言的基本语句语言的基本语句 C程序设计教程第3章 顺序程序设计2023-5-62C程序设计教程第3章 顺序程序设计2023-5-63 顺序结构程序由简单语句组成,程序
2、流顺序结构程序由简单语句组成,程序流程如图程如图3.1 所示,语句按书写顺序执行。所示,语句按书写顺序执行。先执行先执行A,再执行,再执行B。BA图3.1 顺序结构执行流程顺序结构执行流程C程序设计教程第3章 顺序程序设计2023-5-643.1.1 简单语句简单语句1.表达式语句就是一个表达式加上一个分号。表达式语句就是一个表达式加上一个分号。A+;x=1;2.函数调用语句由函数调用表达式加分号构成函数调用语句由函数调用表达式加分号构成 printf(“%d”,a);3空语句空语句空语句用一个分号表示,其一般形式为:空语句用一个分号表示,其一般形式为:;C程序设计教程第3章 顺序程序设计20
3、23-5-65C 语言有丰富的标准函数库语言有丰富的标准函数库,可提供各类可提供各类函数供用户调用调用标准库函数可完成预函数供用户调用调用标准库函数可完成预先设定好的操作先设定好的操作.例如调用标准库函数求数学函数值:例如调用标准库函数求数学函数值:sin(x)、cos(x)、exp(x)(求求ex)、fabs(x)(求求x的绝对值的绝对值)、log(x).C程序设计教程第3章 顺序程序设计2023-5-66表达式语句举例表达式语句举例#include#includemain()int a=2,b=4;float x,y;x=a/2+sqrt(b);/*x=3.0*/a+;/*a=3 */y=
4、x*a;/*y=9.0*/printf(“x=%6.2f,y=%6.2f”,x,y);C程序设计教程第3章 顺序程序设计2023-5-67 程序说明程序说明 注意表达式类型转换注意表达式类型转换 注意赋值类型注意赋值类型 输出结果输出结果:x=3.00,y=9.00C程序设计教程第3章 顺序程序设计2023-5-68调用调用标准库函数要注意以下几点调用调用标准库函数要注意以下几点 在程序中要包含相应的头文件在程序中要包含相应的头文件例如:例如:#include#includeC程序设计教程第3章 顺序程序设计2023-5-69调用调用标准库函数要注意以下几点调用调用标准库函数要注意以下几点调用
5、规则:调用规则:函数名函数名(参数表参数表)有返回值的函数要作为表达式的一部分有返回值的函数要作为表达式的一部分Y=sin(1.7);在表达式中调用函数在表达式中调用函数,实际上是转去执行一段实际上是转去执行一段预先设计好的程序预先设计好的程序,求出结果后返回调用点。求出结果后返回调用点。所以函数的值又叫函数的返回值。所以函数的值又叫函数的返回值。C程序设计教程第3章 顺序程序设计2023-5-610函数调用举例函数调用举例Y=sin(1.12);Y1=sin(x);Y2=3*sin(x+1.12)+sqr(x);Y3=sin(sqrt(x+1.12);C程序设计教程第3章 顺序程序设计202
6、3-5-6113.1.2 复合语句 内部数据说明内部数据说明;语句语句1;语句语句n;注意:注意:(1)在复合语句中说明的变量,是局部变量在复合语句中说明的变量,是局部变量,仅在仅在 复合语句中有效。复合语句中有效。(2)复合语句的复合语句的 之后,不能有分号之后,不能有分号。C程序设计教程第3章 顺序程序设计2023-5-612无返回值的函数可作为语句调用。无返回值的函数可作为语句调用。printf(“%d”,a);调用它不是为了得到返回值(函数值),调用它不是为了得到返回值(函数值),是为了完成某项任务。是为了完成某项任务。用一对花括号用一对花括号将多条语句组合在将多条语句组合在一起,在语
7、法上相当于一条语句。一起,在语法上相当于一条语句。C程序设计教程第3章 顺序程序设计2023-5-613复合语句复合语句(程序块程序块)示例示例main()int x=1;int x=2;int x=3;printf(“x=%d”,x);printf(“x=%d”,x);printf(“x=%d”,x);C程序设计教程第3章 顺序程序设计2023-5-6143.2 数据输入与输出数据输入与输出 C语言本身不提供输入输出语句,得由语言本身不提供输入输出语句,得由标准标准I/O库函数提供。输入输出库函数很库函数提供。输入输出库函数很丰富,可以从键盘、显示器、磁盘文件和丰富,可以从键盘、显示器、磁盘
8、文件和硬件端口进行输入或输出操作。硬件端口进行输入或输出操作。本节主要介绍用于键盘输入和显示器输出本节主要介绍用于键盘输入和显示器输出的函数。的函数。C程序设计教程第3章 顺序程序设计2023-5-615 3.2.1 字符输入输出函数1.字符输出函数字符输出函数stdio.hint putchar(int)向标准输出设备向标准输出设备(一般为显示器一般为显示器)输出一个字符,输出一个字符,并返回返回概字母的并返回返回概字母的ASCII码值。参数可以是字码值。参数可以是字符常量,变量或整型数。符常量,变量或整型数。putchar(97);putchar(n);putchar(a);C程序设计教程
9、第3章 顺序程序设计2023-5-616说明:说明:c可以是字符型变量或整型变量,也可以可以是字符型变量或整型变量,也可以是一个字符或一个整数。是一个字符或一个整数。Putchar()将将其转换为其转换为unsigned char,送到标准输送到标准输出设备。出设备。注意在使用函数前要在程序前用注意在使用函数前要在程序前用#include。C程序设计教程第3章 顺序程序设计2023-5-6172.字符输入函数字符输入函数int getchar(void)stdio.h从输入设备从输入设备(一般为键盘一般为键盘)上输入一个字符。它每上输入一个字符。它每被调用一次,就从标准输入设备上取一个自符,被
10、调用一次,就从标准输入设备上取一个自符,返回值是该字符的返回值是该字符的ASCII编码值。可以赋给字符编码值。可以赋给字符变量或整型变量。变量或整型变量。执行执行getchar()是输入字符后要回车。是输入字符后要回车。C程序设计教程第3章 顺序程序设计2023-5-618 说明:说明:getchar函数没有参数,函数值就是从输入设备函数没有参数,函数值就是从输入设备得到的字符。类型由得到的字符。类型由char-int。如,如,char c;c=getchar();();输入输入a,得到得到c=97。输完后,必须按输完后,必须按enter结束。结束。函数只接收一个字符而不是一个字符串。函数只接
11、收一个字符而不是一个字符串。函数值可以赋给一个字符或整型变量,也可以函数值可以赋给一个字符或整型变量,也可以不赋给任何变量。不赋给任何变量。getchar遇到文件结束标志时,返回遇到文件结束标志时,返回EOF。文文件结束标志:件结束标志:ctrl+z。C程序设计教程第3章 顺序程序设计2023-5-6193.2.2 格式输出函数格式输出函数1.格式输出函数原型格式输出函数原型:int printf(char*format,argument,)stdio.h前面两条语句非常方便,但一次只能前面两条语句非常方便,但一次只能处理一个字符,处理一个字符,按规定格式向输出设备按规定格式向输出设备(一般为
12、显示器一般为显示器)输输出数据,并返回输出的字符数。这个函数出数据,并返回输出的字符数。这个函数可以输出多字信息。可以输出多字信息。C程序设计教程第3章 顺序程序设计2023-5-6202.格式输出函数的一般形式格式输出函数的一般形式printf(“格式控制格式控制”,输出参数表输出参数表);可以是一个或多个输出项可以是一个或多个输出项.可以是常量或变量表达式,可以是常量或变量表达式,用逗号分隔。类型可以是用逗号分隔。类型可以是整型实型字符型和字符串型整型实型字符型和字符串型.用双引号括起来,用双引号括起来,控制输出项的格式控制输出项的格式和输出一些提示信息和输出一些提示信息 C程序设计教程第
13、3章 顺序程序设计2023-5-621 说明:说明:“格式控制格式控制”是用双引号括起来的字符串,也称是用双引号括起来的字符串,也称“转转换控制字符串换控制字符串”,它包括两种信息:,它包括两种信息:*格式说明:由格式说明:由“%”和格式字符组成。和格式字符组成。其作用是将内存中需输出的数据由二进制转为指定的其作用是将内存中需输出的数据由二进制转为指定的格式输出。格式输出。*普通字符:即需要原样输出的字符。普通字符:即需要原样输出的字符。“输出表列输出表列”,是需要输出的一些数据,可以是表达,是需要输出的一些数据,可以是表达式。式。如:如:printf(“%d%d”,a,b);格式说明格式说明
14、 输出表列输出表列 printf(“a=%d b=%d”,a,b);结果为:结果为:a=3 b=4 C程序设计教程第3章 顺序程序设计2023-5-6223.格式输出函数例程格式输出函数例程int i=97;char ch=a;printf(“i=%d,%cn”,i,i);两个输出项都是变量两个输出项都是变量i,i,但以不同的格式输出但以不同的格式输出,一个是输出的整型数一个是输出的整型数,一个输出的是字符一个输出的是字符a.a.其其格式是由格式是由,%,%d d与与%c c控制的控制的.输出结果输出结果:i=97,aC程序设计教程第3章 顺序程序设计2023-5-623int i=97;ch
15、ar ch=a;printf(“i=%d,%cn”,i,i);输出结果输出结果:i=97,aprintf(“i=%d,%cn”,i,i);两个输出项都是变量两个输出项都是变量i,i,但以不同的格式输出但以不同的格式输出,一一个是输出的整型数个是输出的整型数,一个一个输出的是字符输出的是字符a.a.其格式其格式是由是由,%,%d d与与%c c控制的控制的.int printf(char*format,argument,)int i=97;char ch=a;printf(“i=%d,%cn”,i,i);输出结果输出结果:i=97,a普通字符,普通字符,按原样输出按原样输出双引号括起来的普通字符
16、,在屏幕上原样输出。双引号括起来的普通字符,在屏幕上原样输出。转义字符指明特定的操转义字符指明特定的操作,如作,如n表示换行表示换行而格式说明部分由而格式说明部分由%和格式字符串组成,下面详细讨论。和格式字符串组成,下面详细讨论。C程序设计教程第3章 顺序程序设计2023-5-624%flagswidth.precF|N|h|LtypeFlags为选择的标志字符。常用的有:为选择的标志字符。常用的有:-:为左对齐,否则右对齐为左对齐,否则右对齐+:正数输出:正数输出+,负数输出,负数输出-空格:正数输出空格,负数输出空格:正数输出空格,负数输出-flagsC程序设计教程第3章 顺序程序设计20
17、23-5-625%flagswidth.precF|N|h|LtypeFlags为选择的标志字符。常用的有:为选择的标志字符。常用的有:-:为左对齐,否则右对齐为左对齐,否则右对齐+:正数输出:正数输出+,负数输出,负数输出-空格:正数输出空格,负数输出空格:正数输出空格,负数输出-Width为宽度指示符。用十进制数来设置输出值的最为宽度指示符。用十进制数来设置输出值的最少输出个数,少则补空格,多则按实际输出少输出个数,少则补空格,多则按实际输出。widthC程序设计教程第3章 顺序程序设计2023-5-626%flagswidth.precF|N|h|LtypeFlags为选择的标志字符。常
18、用的有:为选择的标志字符。常用的有:-:为左对齐,否则右对齐为左对齐,否则右对齐+:正数输出:正数输出+,负数输出,负数输出-空格:正数输出空格,负数输出空格:正数输出空格,负数输出-Width为宽度指示符。用十进制数来设置输出值的最为宽度指示符。用十进制数来设置输出值的最少输出个数,少则补空格,多则按实际输出。少输出个数,少则补空格,多则按实际输出。.prec.prec为精度指示符。用小数点加十进制正整数构成,为精度指示符。用小数点加十进制正整数构成,用来限制输出数的精度。用来限制输出数的精度。C程序设计教程第3章 顺序程序设计2023-5-627%flagswidth.precF|N|h|
19、LtypeFlags为选择的标志字符。常用的有:为选择的标志字符。常用的有:-:为左对齐,否则右对齐为左对齐,否则右对齐+:正数输出:正数输出+,负数输出,负数输出-空格:正数输出空格,负数输出空格:正数输出空格,负数输出-Width为宽度指示符。用十进制数来设置输出值的最少输出个为宽度指示符。用十进制数来设置输出值的最少输出个数,少则补空格,多则按实际输出。数,少则补空格,多则按实际输出。F|N|h|L.prec为精度指示符。用小数点加十进制正整数构成,用来限为精度指示符。用小数点加十进制正整数构成,用来限制输出数的精度。制输出数的精度。F|N|h|L为长度修饰符,为长度修饰符,F远程指针地
20、址远程指针地址 N近程指针地近程指针地址址h短整数据的值短整数据的值 L长整长整(双精度双精度)数据的值数据的值C程序设计教程第3章 顺序程序设计2023-5-628%flagswidth.precF|N|h|Ltypetypetype为格式字符。用来进行格式转换为格式字符。用来进行格式转换d以带符号的十进制形式输出整数(正数不输出符号)以带符号的十进制形式输出整数(正数不输出符号)o以以8进制无符号形式输出整数(不输出前导符进制无符号形式输出整数(不输出前导符O)x(X)以以16进制无符号形式输出整数(不输出前导符进制无符号形式输出整数(不输出前导符Ox)u以无符号以无符号10进制形式输出整
21、数进制形式输出整数 c以字符形式输出一个字符以字符形式输出一个字符s输出字符串输出字符串 f以小数形式输出单、双精度数,隐含输出以小数形式输出单、双精度数,隐含输出6位小数位小数 e(E)以标准指数形式输出单、双精度数,小数位数为以标准指数形式输出单、双精度数,小数位数为6位位 g(G)选用选用%f或或%e格式中输出宽度较短的一种格式格式中输出宽度较短的一种格式%百分号百分号C程序设计教程第3章 顺序程序设计2023-5-629例如:设例如:设int a=12;float b=1234.5678;分析不同格式的输出结果:分析不同格式的输出结果:a的格式说明:的格式说明:a的输出方式:的输出方式
22、:%d 12%8d 12(前空前空6个空格)个空格)%o 14 (8进制)进制)%x c (16进制)进制)%u 12 (无符号)无符号)%-8d 12 (后空后空6个空格,左靠齐)个空格,左靠齐)b的格式说明:的格式说明:b的输出方式:的输出方式:%f 1234.567800%e 1.234568e+03 (指数形式指数形式)%8.2f 1234.57 (小数两位,长小数两位,长8位位)%g 234.5678 (选择选择%f或或%e中一种,不输出无中一种,不输出无意义意义0)%10.2e 1.23e+03 (前有前有2空格)空格)%-10.2e 1.23e+03 (后有后有2空格空格)C程序
23、设计教程第3章 顺序程序设计2023-5-630 注意一:注意一:*不同的不同的c系统输出时可能有差别。系统输出时可能有差别。*long型应在格式字符前加字符型应在格式字符前加字符l,如如%ld,%lo,%lx,%lu,否则可能出错。否则可能出错。*一个负数以一个负数以%o,%x输出,不会输出带符号的输出,不会输出带符号的8进制和进制和16进制数。而是将符号位一起输出。例如:进制数。而是将符号位一起输出。例如:a=-2;printf(“%o”,a););结果为:结果为:177776。*可以在可以在printf()()中的中的“格式控制格式控制”字符串中包含字符串中包含“转义转义字符字符”。*一
24、个格式说明以一个格式说明以“%”开头,以开头,以d,o,x,u,c,s,f,e,g等等9个字符之一为结束,中间可以插入附加格式字符。个字符之一为结束,中间可以插入附加格式字符。例如:例如:printf(“c=%cf=%10.3s=%s”,c,f,s););C程序设计教程第3章 顺序程序设计2023-5-631 注意二:注意二:*如果想输出如果想输出“%”,应在,应在“格式控制格式控制”字符串中用连续字符串中用连续两个两个%表示。表示。例如:例如:printf(“%f%”,1.0/3);输出:输出:0.333333%。*如果格式控制说明项数多于输出表列个数,则会输出错如果格式控制说明项数多于输出
25、表列个数,则会输出错误数据。误数据。如果输出表列个数多于格式控制说明数,则多出数不如果输出表列个数多于格式控制说明数,则多出数不被输出。被输出。如:如:int i=23;float y=123.456,x=22.222;printf(“%-4d,%g”,i,y,x););结果为:结果为:23 ,123.456 结束。结束。C程序设计教程第3章 顺序程序设计2023-5-6323.2.3 格式输入函数格式输入函数1.格式输入函数原型格式输入函数原型int scanf(char*format,argument,)stdio.h这个函数可以从键盘输入任何类型的数据给所这个函数可以从键盘输入任何类型的
26、数据给所制定的单元,并返回输入的数据个数。制定的单元,并返回输入的数据个数。C程序设计教程第3章 顺序程序设计2023-5-6332.格式输入函数一般形式格式输入函数一般形式scanf(“格式控制字符串格式控制字符串”,地址列表地址列表);例如:例如:scanf(“%d%d,%f”,&a,&b,&c);控制字符串说明了需输入数据的类型,两个整型数和一个控制字符串说明了需输入数据的类型,两个整型数和一个实型数。实型数。&a&a,&b b和和&c c是变量是变量a a,b b和和c c的地址。的地址。C程序设计教程第3章 顺序程序设计2023-5-634 说明:说明:格式控制(格式说明格式控制(格
27、式说明+普通字符),含义同普通字符),含义同printf()。()。地址表列是由若干个地址组成的表列,可以是变量的地地址表列是由若干个地址组成的表列,可以是变量的地址,或字符串的首地址。址,或字符串的首地址。如:如:main()int a,b,c;s c a n f(“%d%d%d n”,&a,&b,&c);p r i n t f(“%d,%d,%d n”,a,b,c);其中:其中:&指指“地址运算符地址运算符”,&a指变量指变量a的地址。的地址。如果输入:如果输入:3 4 5,则输出,则输出3,4,5。scanf()()的作用的作用是,按照是,按照a,b,c在内存中的地址将在内存中的地址将a
28、,b,c的值存进的值存进去。去。a,b,c的地址在定义后被分配的地址在定义后被分配。输入数据时,如果输入数据时,如果%d%d%d格式,两个数据间可以用格式,两个数据间可以用一个或多个空格隔开,也可以用一个或多个空格隔开,也可以用enter、tab分隔。分隔。C程序设计教程第3章 顺序程序设计2023-5-635%*widthF|Nh|Ltype*输入赋值抑制字符,输入数据但不赋值输入赋值抑制字符,输入数据但不赋值%*widthF|Nh|Ltypewidth输入赋值抑制字符,输入数据但不赋值输入赋值抑制字符,输入数据但不赋值宽度指示符,表示最多可输入的字符个数。宽度指示符,表示最多可输入的字符个
29、数。C程序设计教程第3章 顺序程序设计2023-5-636%*widthF|Nh|LtypeF|N输入赋值抑制字符,输入数据但不赋值输入赋值抑制字符,输入数据但不赋值宽度指示符,表示最多可输入的字符个数。宽度指示符,表示最多可输入的字符个数。地址大小修饰符。地址大小修饰符。Ffar NnearC程序设计教程第3章 顺序程序设计2023-5-637%*widthF|Nh|Ltypeh|L输入赋值抑制字符,输入数据但不赋值输入赋值抑制字符,输入数据但不赋值宽度指示符,表示最多可输入的字符个数。宽度指示符,表示最多可输入的字符个数。地址大小修饰符。地址大小修饰符。Ffar Nnear输入数据类型。输
30、入数据类型。h短整型,短整型,l长整或双精度长整或双精度C程序设计教程第3章 顺序程序设计2023-5-638%*widthF|Nh|Ltypeh|L输入赋值抑制字符,输入数据但不赋值输入赋值抑制字符,输入数据但不赋值宽度指示符,表示最多可输入的字符个数。宽度指示符,表示最多可输入的字符个数。地址大小修饰符。地址大小修饰符。Ffar Nnear输入数据类型。输入数据类型。h短整型,短整型,l长整或双精度长整或双精度C程序设计教程第3章 顺序程序设计2023-5-639%*widthF|Nh|Ltypetypetype是必须的,表示输入后转换的数据类型。是必须的,表示输入后转换的数据类型。d(D
31、)十进制整数十进制整数o(O)八进制整数八进制整数x(X)十六进制整数十六进制整数i(I)自动根据数头分辨十、八、十六进制自动根据数头分辨十、八、十六进制u(U)无符号十进制整数无符号十进制整数c单个字符单个字符s字符串字符串f(e,g,G)实数实数n不输入数据,将已读入的字符输送到对应的地址中不输入数据,将已读入的字符输送到对应的地址中%百分号百分号C程序设计教程第3章 顺序程序设计2023-5-6403.使用使用scanf应注意应注意:scanfscanf()()的格式控制字符串中的字符不是用于输出的的格式控制字符串中的字符不是用于输出的,都是要求输入的。都是要求输入的。scanfscan
32、f(”x=%dx=%d”,&x&x);参数的第二部分一定是地址列表参数的第二部分一定是地址列表,不能是表达式,请记不能是表达式,请记得在变量前加上得在变量前加上&。执行执行scanf()scanf()输入数据时,在两个数据之间允许以一输入数据时,在两个数据之间允许以一个或多个空格间隔,也可以用回车键、个或多个空格间隔,也可以用回车键、tabtab键分隔。键分隔。实数不许规定精度,像实数不许规定精度,像%10.4%10.4f f是不合法的。是不合法的。%后面有后面有*号时,该数据会被禁止使用。号时,该数据会被禁止使用。如果输入时类型不匹配则停止处理,返回如果输入时类型不匹配则停止处理,返回0 0
33、。C程序设计教程第3章 顺序程序设计2023-5-641 综合练习综合练习 说明下面程序中各变量得到的值说明下面程序中各变量得到的值:main()int i;float x;char name50;s c a n f(“%d,%f,%s”,&i,&x,n a m e);输入:输入:25,54.32e-1,thompson enter 则:则:i=x=name=main()int i;float x;char name50;scanf(“%2d%f%*d%2s”,&i,&X,name);输入:输入:56789 0123 45a72 则:则:i=x=name=C程序设计教程第3章 顺序程序设计20
34、23-5-6423.3 程序举例程序举例 例例3.1 输入圆的半径,输出圆的周长和面积。输入圆的半径,输出圆的周长和面积。分析:分析:1.定义实型变量定义实型变量r、l、s用于存放半径、周长、面用于存放半径、周长、面积;积;2.调用输入函数,输入调用输入函数,输入r:3.分别利用周长公式和面积公式求出分别利用周长公式和面积公式求出l、s;4.调用输出函数输出调用输出函数输出l、s。C程序设计教程第3章 顺序程序设计2023-5-643程序:程序:#include void main()float r,l,s;scanf(“%f”,&r);/*输入一个浮点数据,存入地址输入一个浮点数据,存入地址
35、&r*/l=2*3.14159*r;/*计算周长,赋值给计算周长,赋值给l*/s=3.14159*r*r;/*计算面积,赋值给计算面积,赋值给s*/printf(“n l=%8.4f”,l);/*周长占周长占8个字符宽,个字符宽,4位小数位小数*/printf(“n s=%8.4f”,s);/*输出面积,数据共占输出面积,数据共占8个字符宽,个字符宽,4位小数位小数*/C程序设计教程第3章 顺序程序设计2023-5-644分析:分析:1.输入小写字母存入变量输入小写字母存入变量a;2.转换成大写转换成大写a=a-32;3.输出输出 a.例例3.2 从键盘输入一个小写字母,用大写形式输从键盘输入
36、一个小写字母,用大写形式输出该字母。出该字母。C程序设计教程第3章 顺序程序设计2023-5-645#include“stdio.h”void main()char a;printf(“Input a lowercase letter:”);a=getchar();a=a-32;/*将大写字母转换成对应的将大写字母转换成对应的小写字母小写字母*/printf(“%c n”,a);思考:如何使程序可以处理任何字符的输入。即思考:如何使程序可以处理任何字符的输入。即判断输入的是小写字母,才转换成大写;如果输判断输入的是小写字母,才转换成大写;如果输入的其他字符,则直接输出。入的其他字符,则直接输出
37、。程序:程序:C程序设计教程第3章 顺序程序设计2023-5-646简单程序设计举例简单程序设计举例 编写程序求出任一输入字符的编写程序求出任一输入字符的ASCII码码.(s27.c)编写程序从键盘输入三位整数编写程序从键盘输入三位整数,将它们逆将它们逆序输出,如,输入序输出,如,输入123,输出,输出321。(s2-9.c)C程序设计教程第3章 顺序程序设计2023-5-647 编写程序求出任一输入字符的编写程序求出任一输入字符的ASCII码码.#include main()char c;printf(“输入字符输入字符:”);scanf(“%c”,&c);printf(“字符字符%c的的A
38、SCII码为码为%dn”,c,c);C程序设计教程第3章 顺序程序设计2023-5-648 编写程序从键盘输入三位整数编写程序从键盘输入三位整数,将它们逆将它们逆序输出,如,输入序输出,如,输入123,输出,输出321。#include main()int a,i,j,k;printf(“输入三位整数:输入三位整数:”);scanf(“%3d”,&a);i=a/100;j=a/10-10*i;k=a-10*j-100*i;printf(“反向结果:反向结果:%d%d%dn”,k,j,i);C程序设计教程第3章 顺序程序设计2023-5-649写程序:输入半径,计算圆面积;(写程序:输入半径,计
39、算圆面积;(s1-s1-5.c5.c)提示:提示:1,1,定义两个变量存放半径和圆面积的值;定义两个变量存放半径和圆面积的值;2,2,给半径赋值;给半径赋值;3,3,计算圆面积计算圆面积=半径半径X X半径半径X3.14159;X3.14159;4,4,输出圆面积的值。输出圆面积的值。C程序设计教程第3章 顺序程序设计2023-5-650 写程序:通过出生年份和当前年份计算写程序:通过出生年份和当前年份计算年龄;年龄;(s1-6.c)s1-6.c)提示提示:1,1,输入变量输入变量:出生年份出生年份,当前年份当前年份;2,2,计算年龄计算年龄=当前年份当前年份-出生年份出生年份 3,3,输出年
40、龄。输出年龄。C程序设计教程第3章 顺序程序设计2023-5-651 写程序:假设三个变量分别是,写程序:假设三个变量分别是,;将它们的值交换,即;将它们的值交换,即a a的值放入的值放入b,bb,b的值放入的值放入c,cc,c的值放入的值放入a a;(s1-7.c)(s1-7.c)提示:交换三个变量的值,需要借助另一提示:交换三个变量的值,需要借助另一个变量。即该程序应定义个变量。即该程序应定义4 4个变量。个变量。C程序设计教程第3章 顺序程序设计2023-5-652编写程序:把编写程序:把10501050分钟换算成用小时和分分钟换算成用小时和分钟表示,然后进行输出。钟表示,然后进行输出。
41、(s1-8.c)s1-8.c)提示:输出语句为:提示:输出语句为:printf(printf(“%d%d小时小时%d d分分钟钟 n n”,h,m);,h,m);其中其中h,mh,m为存放小时和为存放小时和分钟的变量。分钟的变量。C程序设计教程第3章 顺序程序设计2023-5-653 写程序:交换输入的写程序:交换输入的X X,Y Y,并输出;并输出;(s3-4.c)s3-4.c)提示:提示:,用,用scanfscanf函数输入函数输入X,YX,Y的值;的值;,用第三个变量辅助交换,用第三个变量辅助交换X,YX,Y的值;的值;用用printfprintf函数将交换后的函数将交换后的X,YX,Y
42、输出。输出。C程序设计教程第3章 顺序程序设计2023-5-654 输入一个双精度数,对小数点后第输入一个双精度数,对小数点后第2 2位位进行四舍五入,即保留一位小数,输出进行四舍五入,即保留一位小数,输出四舍五入后的结果;四舍五入后的结果;(s3-5.c)s3-5.c)提示:注意提示:注意scanfscanf函数和函数和printfprintf函数具有不函数具有不同的格式字符;同的格式字符;注意数的真正精度与实际显示宽度是不同注意数的真正精度与实际显示宽度是不同的。的。分清数的精度与显示宽度。分清数的精度与显示宽度。四舍五入算法:四舍五入算法:x=(x+0.05)x=(x+0.05)*10;x=(int)x;10;x=(int)x;x=x/10;x=x/10;C程序设计教程第3章 顺序程序设计2023-5-655