实验二
part1
%d:按十进制整数输出 %f:按浮点数输出
%c:按字符输出 %e:按指数形式输出 %s:按字符串输出 %5d:输出宽度为5的十进制整数
%lf:输出双精度(double)型的浮点数 %.3f:输出小数点后保留3位数(四舍五入)的浮点数 %6.2f:输出宽度为6,小数点后保留2位数的浮点数
当在scanf里输入double型的浮点数时,输出必须使用%lf
#include <stdio.h> int main() { int x=1234; float f=123.456; double m=123.456; char ch='a'; char a[]="Hello,world"; int y=3,z=4; printf("%d %d\n",y,z); printf("y=%d,z=%d\n",y,z); printf("%8d,%2d\n",x,x); printf("%f,%8f,%8.1f,%.2f,%.2e\n",f,f,f,f,f); printf("%lf\n",m); printf("%3c\n",ch); printf("%s\n%15s\n%10.5s\n%2.5s\n%.3s\n",a,a,a,a,a); return 0; }

#include<stdio.h> int main() { double x,y; char c1,c2,c3; int a1,a2,a3; scanf("%d%d%d",&a1,&a2,&a3); printf("%d,%d,%d\n",a1,a2,a3); scanf("%c%c%c",&c1,&c2,&c3); printf("%c%c%c\n",c1,c2,c3); scanf("%lf,%lf",&x,&y); printf("%f,%lf\n",x,y); return 0; }

#include <stdio.h> int main() { int level; printf("输入现在状态等级(1-5): "); scanf("%d",&level); switch(level) { case 1:printf("high翻了:)\n");break; case 2:printf("low爆了:(\n");break; default:printf("一言难尽,无法概括。。。。\n"); } return 0; }
去掉break之后的代码
#include <stdio.h> int main() { int level; printf("输入现在状态等级(1-5): "); scanf("%d",&level); switch(level) { case 1:printf("high翻了:)\n"); case 2:printf("low爆了:(\n"); default:printf("一言难尽,无法概括。。。。\n"); } return 0; }
下面是运行结果的区别


part5
#include <stdio.h> int main() { char answer; printf("请输入A,B,C,D"); answer=getchar(); if(answer='A') printf("binggo you are right\n"); else if(answer='B') printf("try again\n"); return 0; }

总结与反思
总的来说比试验一轻车熟路一些,做的顺手一点
swith语句要加大括号
字符型用getchar函数
https://www.cnblogs.com/ningchenyang/p/10618488.html#4220072
https://www.cnblogs.com/1623449-w/p/10620157.html#4220069
https://www.cnblogs.com/verano/p/10638511.html#4220064

浙公网安备 33010602011771号