南昌大学计算中心C语言程序设计南昌大学计算中心第3章顺序结构3.1赋值语句赋值语句由一个赋值表达式和一个分号组成。3.2数据输出把数据结果送到外部设备的操作叫输出。C调用标准库函数中的输入输出函数执行输出,并且应在源程序开头部分加上:#includestdio.h或#include“stdio.h”南昌大学计算中心3.2.1printf函数的一般调用形式printf(格式控制,输出项1,输出项2,…)格式控制是字符串,包含有两类信息:1.普通字符:即需要原样输出的字符。2.格式说明:由%和格式字符组成。如:#includestdio.hmain(){inta=3,b=5,c;c=a+b;printf(“c=%d”,c);}普通字符格式说明南昌大学计算中心3.2.2printf函数中常用的格式说明1、格式字符格式字符说明d,i以带符号十进制形式输出整数o以八进制无符号形式输出整数,无前导符x,X以十六进制无符号形式输出整数,无前导符u以无符号十进制形式输出整数c输出一个字符s输出字符串f以小数形式输出,保留6位小数e,E以指数形式输出,保留6位小数g,G选用%f或%e中宽度较短的一种格式,不输出无意义的0南昌大学计算中心2、长度修饰符在%和格式字符之间加入长度修饰符,以保证数据输出格式的正确和对齐.n指定数据输出的宽度n1.n2对实型数据,指定输出n位小数;+使输出的数值数据无论正负都带符号输出-使数据在输出域内按左对齐方式输出南昌大学计算中心3.2.3使用printf函数时的注意事项1、注意输出多个结果时之间的间隔。2、格式控制中的格式说明符与输出项的个数和类型必须一一对应。3、格式控制中可出现“普通字符”,它们原样输出;还可加入转义字符控制输出格式,如\n。4、%%表示输出“%”。南昌大学计算中心说明:格式控制中必须含有与输出项一一对应的输出格式说明,类型必须匹配。若格式说明与输出项的类型不一一对应匹配,则不能正确输出,而且编译时不会报错。若格式说明个数少于输出项个数,则多余的输出项不予输出;若格式说明个数多于输出项个数,则将输出一些毫无意义的数字乱码。南昌大学计算中心练习:下面程序的输出结果是____。main(){intx=102,y=012;printf(“%2d,%2d\n”,x,y);}A)10,01B)02,12C)102,10D)02,10√南昌大学计算中心练习:下面程序的输出结果是____。main(){intk=17;printf(“%d,%o,%x\n”,k,k,k);}A)17,021,0x11B)17,17,17C)17,0x11,021D)17,21,11√南昌大学计算中心√练习:下面程序段的输出结果是____。inta=1234;floatb=123.456;doublec=12345.54321;printf(“%2d,%2.1f,%2.1f”,a,b,c);A)无输出B)12,123.5,12345.5C)1234,123.5,12345.5D)1234,123.4,1234.5南昌大学计算中心3.3数据输入3.3.1scanf函数的一般调用形式scanf(格式控制,输入项1,输入项2,…)格式控制是字符串,包含有两类信息:1.普通字符:即需要照原样输入的字符。2.格式说明:由%和格式字符组成。如:#includestdio.hmain(){inta,b;scanf(“a=%d,b=%d”,&a,&b);}普通字符格式说明南昌大学计算中心3.3.2scanf函数中常用的格式说明整型数据%d输入十进制整型数%u输入无符号的十进制整型数%o输入八进制整型数%x输入十六进制整型数实型数据%f输入小数形式的单精度实型数%e输入指数形式的单精度实型数字符型数据%c输入单个字符%s输入一个字符串南昌大学计算中心3.3.3通过scanf函数从键盘输入数据1、输入数值数据输入的数值型数据之间用空格、回车、制表键隔开。如:scanf(“%d%d%d”,&a,&b,&c);用户可输入102030也可输入1020302、指定输入数据所占的宽度可在格式字符前加一个正整数指定输入数据所占宽度。如:scanf(“%2d”,&a);南昌大学计算中心3、跳过某个输入数据可在%和格式字符间加入“*”,可以跳过对应的输入数据,即不将此次输入的数据赋给相应的变量。如:scanf(“%d%*d%d”,&a,&b);printf(“%d%d”,a,b);用户若输入102030则输出10304、在格式控制字符串中插入其他字符(通配符)格式控制中有普通字符时(包括转义字符),必须照原样输入。为了减少不必要的麻烦,格式控制中尽量不要使用通配符。如:scanf(“%d,%d,%d”,&a,&b,&c);用户若输入10,20,30或输入10,20,30都能正确读入但输入10,20,30将不能正确读入南昌大学计算中心3.4复合语句和空语句3.4.1复合语句{语句1语句2…语句n}3.4.2空语句main(){;/*空语句*/}