资源描述:
《基本语句与结构化程序设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、第3章基本语句与结构化程序设计3.1程序与基本语句3.1.1程序的概念程序=数据结构+算法起止框判断框处理框输入输出框流程线【例3.1】设计一个算法:对任意给定的3个整数x、y、z,求出其最大值。算法的自然语言描述:用流程图来表示算法①输入变量x、y和z的值。②如果x>y,则x存入max;否则,y存入max。③如果z>max,则将z存入max。④输出结果max。intmain(){intx,y,z,max;scanf("%d%d%d",&x,&y,&z);if(x>y)max=x;elsemax=y;if(z>max)max=z;printf("max=%d",max);return
2、0;}3.1.2程序的评价1.正确性和健壮性正确性:对任何合法的输入,能得到正确的结果。健壮性:指对于错误的输入,程序能妥善处理。提醒1:编程时,应考虑各种可能情况。提醒2:调试时,应测试各种数据,尤其临界值。2.结构清晰,可读性好可读性:程序条理清晰、简洁明快、易于理解,有注释。提醒1:结构化书写程序代码。提醒2:认真选择变量名。提醒3:将大任务分解成若干个小问题,结构化编程。3.1.3C基本语句表达式语句表达式;x=y+z;y+z;控制语句条件判断语句if…elseswitch循环语句for、while、dowhile转向语句break、continue、return、goto函数调
3、用语句函数名(实际参数表);printf("CProgram");复合语句{多个语句}{x=y+z;a=b+c;printf("%d%d",x,a);}空语句;while(getchar()!='');3.2顺序结构程序设计3.2.1赋值语句变量=表达式;变量=(变量=表达式);变量=变量=…=表达式;a=b=c=d=e=5;留意细节:inta=5,b,c;对inta=b=c=5;错!3.2.2数据的格式化输入/输出1.输入/输出函数C语言没有输入/输出语句,需要借助于标准I/O库函数。#include2.格式化输出函数printf()printf("格式控制字符串
4、",输出表列);格式含义%d以10进制形式输出整数%o以8进制无符号形式输出整数%x,%X以16进制无符号形式输出整数%u以10进制无符号形式输出整数%f以小数形式输出单、双精度实数%e,%E以指数形式输出单、双精度实数%c以字符形式输出,只输出单个字符%s输出字符串【例3.2】printf()函数使用示例。intmain(){inta=18,b=67;printf("%d,%d",a,b);printf("%x,%x",a,b);printf("%c,%c",a,b);printf("a=%db=%d",a,b);return0;}格式控制符的详细语法:%[标志][输出
5、最小宽度][.精度]类型标志意义-左对齐,右边填空格+在正数前加正号空格输出值为正时冠以空格,为负时冠以负号【例3.3】printf()函数中格式串使用示例。intmain(){inta=12;floatb=123.;doublec=.;chard='m';printf("a=%d,%5d,%o,%x",a,a,a,a);printf("b=%f,%lf,%5.4lf,%e",b,b,b,b);printf("c=%lf,%f,%8.4lf",c,c,c);printf("d=%c,%4c",d,d);return0;}3.格式化输入函数scanf()scanf("格式控
6、制字符串",地址表列);注意:变量的值、变量的地址的区别。【例3.5】scanf()函数使用示例。intmain(){inta,b,c;printf("inputa,b,c");scanf("%d%d%d",&a,&b,&c);//空格、TAB或回车作间隔printf("a=%d,b=%d,c=%d",a,b,c);return0;}scanf("%c%c%c",&a,&b,&c);scanf("%c%c%c",&a,&b,&c);scanf("%d,%d,%d",&a,&b,&c);scanf("a=%d,b=%d,c=%d",&a,&b,&c);格式控制符的详细语法:%[输入
7、数据宽度]类型scanf("%4d%3d%2d",&a,&b,&c);scanf("%4d,%3d,%2d",&a,&b,&c);3.2.3字符数据的非格式化输入/输出1.字符数据的输出函数putchar()putchar('A');//输出大写字母Aputchar(x);//输出字符变量x的值putchar('101');//也是输出字符Aputchar('');//换行2.字符数据的输入函数getchar()intgetc