getchar()getchar()与与putchar()putchar()函数函数它们是stdio.h文件中提供的单字符输入输出函数getchar()->将从键盘读入一个字符举例:charc;c=getchar();将从键盘读入一个字符存于c中putchar(intc)->输出一个字符举例:charb=‘A’;putchar(b);将在屏幕上输出字母Agetchar()getchar()与与putchar()putchar()函数举例函数举例输入一个字符,输出对应的大写字母:#includevoidmain(){charc;c=getchar();c=c-32;putchar(c);putchar('\n');}#includevoidmain(){charc;scanf(“%c”,&c);c=c-32;printf(“%c\n”,c)}实验实验22讲解讲解1.注意16进制和2进制的转化:char类型占一个字节0x1234->00010010001101002.getchar()读入一个字符,回车也是一个字符%c输出字符形式,%d输出它的ASCII3.float类型输出使用%f,注意后面为地址列表&a4.double类型输出使用%lf5.控制输出长度6.scanf()函数一般不包含格式信息,如果包含,输入时要严格遵守a=3.12,b=9.0c=10.0实验实验22讲解讲解7.unsingnedshortinta=65535;1111111111111111=216-1=65535shortintb=-1;-1原码1000000000000001-1反码1111111111111110-1补码1111111111111111所以,a,b在内存中的存储是一样的。hd——短整型十进制-1ho——短整型八进制1777hx——短整型十六进制ffffhu——短整型无符号(十进制)65535实现输入圆柱体的底面半径和高,输出其实现输入圆柱体的底面半径和高,输出其体积体积#include#definePI3.14voidmain(){floatr,h,s;printf("请输入圆柱的低面半径和高");scanf("%f%f",&r,&h);s=PI*r*r*h;printf("圆柱的面积为%f",s);}输入一个整数,分别用无符号方式、八进输入一个整数,分别用无符号方式、八进制方式、十六进制方式输出制方式、十六进制方式输出#includevoidmain(){inta;printf("请输入一个整数:");scanf("%d",&a);printf("八进制%o,十六进制%x,无符号显示%u",a,a,a);}编程实现输入一个字符,输出这个字符的编程实现输入一个字符,输出这个字符的ASCIIASCII码码#includevoidmain(){chara;printf("请输入一个字符:");scanf(“%c”,&a);//或者写成a=getchar();printf("输出字符的ascii码%d",a);}输入两个整数输入两个整数x,yx,y交换他们的值并输出交换他们的值并输出#includevoidmain(){intx,y,t;printf("输入整数x,y:");scanf("%d%d",&x,&y);t=x;x=y;y=t;printf("输出交换后的整数x的值为%d,y的值为%d",x,y);}输入一个输入一个doubledouble类型的数,对第三位小数进行四类型的数,对第三位小数进行四舍五入后处理,然后输出格式整数部分占舍五入后处理,然后输出格式整数部分占1212位,小位,小数点后两位,进行输出。数点后两位,进行输出。#includevoidmain(){doublex;scanf("%lf",&x);printf("x=%15.2lf\n",x);}实验注意问题:实验注意问题:实验1:注意一个程序调试完成后,一定要调用[Fle/Closeworkspace]关闭工作区,否则在一个工作区内出现两个main函数,无法通过连接实验2:1.注意scanf()函数中需要的是地址列表2.用scanf()、printf()输入输出不同数据类型,需要不同的格式控制符,否则结果可能错误3.注意不同数据类型的精度和表达范围,选择合适的数据类型实验注意问题:实验注意问题:实验3:注意逻辑运算符“短路”现象从左往右计算,得到结果,后面的运算被短路例:inta=0,b=1,c=2,d=3;b=a++&&c++;//a为0,c++被短路,a=1d=a++||++c;//a为1,++c被短路,a=2printf("a=%d,b=%d,c=%d,d=%d\n",a,b,c,d);逻辑运算举例逻辑运算举例#includevoidmain(){inta,b,c;a=5;b=2;c=3;a=a++||++b&&c++;printf("a=%d,b=%d,c=%d\n“,a,b,c);b=a>c&&c++||a++&&c++||a++;printf("a=%d,b=%d,c=%d\n“,a,b,c);}条件运算符条件运算符?:?:一般形式:表达式1?表达式2:表达式3C语言中唯一的3目运算符当表达式1的值为非0值时,表达式2的值作为表达式值,否则表达式3的值作为表达式值举例:a=-1;b=a>0?10:20;//b的值为20a=1;b=a>0?’A’:’B’;//b的值为’A’求a和b中的最大值a>b?a:b优先级仅高于逗号运算符和赋值运算符运算方向...