《2 C语言上机-3顺序结构-精品文档整理.pptx》由会员分享,可在线阅读,更多相关《2 C语言上机-3顺序结构-精品文档整理.pptx(19页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、顺序结构第三章 2程序举例【例例】给定一个大写字母,要求用小写字母输出给定一个大写字母,要求用小写字母输出。如。如:Aa#includeintmain()charc1,c2;c1=A;c2=c1+32;printf(%cn,c2);printf(”%dn”,c2);return0;输出:a97 3强制类型转换运算符强制类型转换运算符强制类型转换运算符的的一般形式为一般形式为(类型名)(表达式)(类型名)(表达式)(double)a(将转换成(将转换成double类型)类型)(int)(x+y)(将(将x+y的值转换成的值转换成int型)型)(float)(5%3)(将(将5%3的值转换成的值转
2、换成float型)型)自动自动类型转换类型转换:不需要程序员转换,由:不需要程序员转换,由c语言自动完成语言自动完成charc2=c1+32;/c1将自动转换为数字,以满足将自动转换为数字,以满足+对操作数对操作数的要求的要求printf(”%dn”,c2);/c2将自动转换为数字,以满足将自动转换为数字,以满足%d对来源对来源的要求的要求 4强制类型转换运算符#include main()float a=12.34;b=(int)a;printf(%d,%f,b,a);return 0;/以上代码有错,在哪里?以上代码有错,在哪里?程序运行结果:12,12.340000 5在在C程序中用来实
3、现输出和输入的,主要是程序中用来实现输出和输入的,主要是printf函数和函数和scanf函数函数第三章 6用printf函数输出数据1.printf函数的一般格式printf(格式控制,输出表列)例如:printf(”i=%d,c=%cn”,i,c);格式声明格式声明普通字符普通字符可以是常量、变量或表达式可以是常量、变量或表达式 7用printf函数输出数据2.常用格式字符格式符。用来输出一个有符号的十进制整数可以在格式声明中指定输出数据的域宽 printf(”%5d%5dn”,12,-345);%d输出int型数据%ld输出long型数据 8用printf函数输出数据2.常用格式字符格式
4、符。用来输出一个字符 char ch=a;printf(”%c”,ch);或 printf(”%5c”,ch);9用printf函数输出数据2.常用格式字符f格式符。用来输出实数,以小数形式输出不指定数据宽度和小数位数,用%f用%f输出实数,只能得到位小数。double a=1.0;printf(”%fn”,a/3);10用printf函数输出数据2.常用格式字符f格式符。用来输出实数,以小数形式输出 指定数据宽度和小数位数。用%m.nf printf(%20.15fn,1/3);printf(%.0fn”,10000/3.0);11用printf函数输出数据2.常用格式字符f格式符。用来输出
5、实数,以小数形式输出float型数据只能保证6位有效数字double型数据能保证15位有效数字计算机输出的数字不都是绝对精确有效的 12*用scanf函数输入数据*13用scanf函数输入数据1.scanf 函数的一般形式 scanf(格式控制,地址表列)以开始,以一个格式字符结束,中间可以插入附加的字符scanf(a=%f,b=%f,c=%f,&a,&b,&c);/badscanf(%f%f%f,&a,&b,&c);/good 含义同含义同printf函数函数可以是变量的地址,或字可以是变量的地址,或字符串的首地址符串的首地址 14用scanf函数输入数据2.使用scanf函数时应注意的问题
6、scanf(”%f%f%f”,a,b,c);错scanf(”%f%f%f”,&a,&b,&c);对对于scanf(a=%f,b=%f,c=%f,&a,&b,&c);1 3 2 错 a=1,b=3,c=2 对 a=1 b=3 c=2 错 15用scanf函数输入数据3.使用scanf函数输入3个实数的better版本#includestdio.h“main()float a,b,c;printf(input a:);scanf(%f,&a);printf(input b:);scanf(%f,&b);printf(input c:);scanf(%f,&c);printf(%f%f%fn,a,b
7、,c);16例1.输入一个数,求该数个位,十位,百位上的数之和。输入一个数,求该数个位,十位,百位上的数之和。知识点说明:知识点说明:1)%求模(求余)运算,两整数相除,求余数求模(求余)运算,两整数相除,求余数2)/除法运算,整数相除,结果为整数,实数相除,结果为除法运算,整数相除,结果为整数,实数相除,结果为double型数型数过程举例:过程举例:1231)123%10123除以除以10的余数为的余数为3(个位)(个位)2)123/10123除以除以10商为商为12;3)123/10%1012除以除以10的余数为的余数为2(十位);(十位);4)123/100123除以除以100商为商为1
8、(百位)(百位)17例#includestdio.hmain()intiNum;inti1,i2,i3,iSum;printf(pleaseinputainteger(100-999):);scanf(%d,&iNum);i1=iNum%10;/*求个位数求个位数*/i2=iNum/10%10;/*求十位数求十位数*/i3=iNum/100;/*求百位数求百位数*/iSum=i1+i2+i3;printf(Thesumis:%d,iSum);18练习任务任务1:已知圆的半径为已知圆的半径为5,求该圆的周长和面积。,求该圆的周长和面积。任务任务2:输入两个数输入两个数,求它们的和、差、积、商以及
9、余数。求它们的和、差、积、商以及余数。任务任务3:发工资现金发工资现金2187元,用元,用100元、元、50元、元、20元、元、10元、元、5元和元和1元的票元的票子,问各多少张?子,问各多少张?任务任务4:编写程序,输入三个整数给编写程序,输入三个整数给a,b,c,然后然后交换交换它们它们中的数,把中的数,把a中原来的值给中原来的值给b,把,把b中原来的值给中原来的值给c,把,把c中原中原来的值给来的值给a,然后输出,然后输出a,b,c;19#includestdio.hmain()int a,b,c,d,e,f,k1,k2,k3,k4,k5;k1=2187%100;k2=k1%50;k3=k2%20;k4=k3%10;k5=k4%5;例题3参考答案a=2187/100;b=k1/50;c=k2/20;d=k3/10;e=k4/5;f=k5/1;printf(need 100 50 20 10 5 1n);printf(%d%d%d%d%d%dn,a,b,c,d,e,f);