实验2
实验内容
Part1:格式化输出函数printf()和格式化输入函数scanf()
A.
#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,%0.2f,%.2e\n",f,f,f,f,f); printf("%lf\n",m); printf("%3c\n",ch); printf("%s\n%10.5S\n%2.5\n%.3\n",a,a,a,a,a); return 0; }
B.
#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("%lf,%lf",x,y); return 0; }
Part2:单个字符输出函数函数putcher()和单个字符输入函数getcher()
A.
#include<stdio.h> int main() { char ch; ch = 'A'; putchar(ch); putchar(ch+32); putchar('\x41'); putchar('\n'); return 0; }
B.
#include<stdio.h> int main() { char ch; ch = getchar(); putchar(ch); printf("%c",ch); return 0; }
Part3:if语句体验练习
A.单分支语句
若a>b,就交换,否则原数据输出
#include<stdio.h> int main() { int a,b; int t; printf("输入两个整数给a,b:\n"); scanf("%d%d",&a,&b); if(a>b){ t=a; a=b; b=t; } printf("a=%d,b=%d\n",a,b); return 0; }
B.两分支if语句
#include<stdio.h> int main() { int n; printf("输入一个整数给n;"); scanf("%d",&n); if(n%2==1) printf("n是奇数\n"); else printf("n是偶数\n"); return 0; }
C.多分支if语句
#include<stdio.h> int main() { int level; printf("输入现在状态等级(1-5):"); scanf("%d",&level); if(level==1) printf("high翻了:\n"); else if(level==2) printf("low爆了:\n"); else printf("一言难尽,无法概括。。。。\n"); return 0; }
Part4:switch语句体验练习
#include<stdio.h> int main() { int level; printf("输入现在状态等级(1-5):"); scanf("%d",&level); switch(level){ case 1: printf("hiagh翻了:\n");break; case 2: printf("low爆了:\n");break; default: printf("一言难尽,无法概括。。。\n"); } return 0; }
这个程序的结果和if 分支的程序运行结果是一样的,但是switch程序看起来更简便,更清晰。
Part5:简单编程练习
#include<stdio.h> int main() { int x; printf("请输入你的答案(A,B,CorD):"); scanf("%c",&x); if(x=='A') printf("binggo,you are right ") ; else printf("try again"); return 0; }
实验结论
Part1:格式化输出函数printf()和格式化输入函数scanf()
%d表示按十进制整数输出,%5d表示宽度为5的整数。
%f表示按浮点数输出,%.3f表示小数位的宽度为3位,%6.2f表示数字整体长度为6,小数部分保留两位,不足用空格填。
%c表示按字符输出。
%e表示按指数形式输出。
%s表示按字符串输出。
%lf对应的是双精度浮点型double。
Part 4:switch语句体验练习
case 后有break时,
casea后无break时,
实验总结与体会
a.格式化输入函数时,要记得有地址符
b.if语句中,要注意书写的格式,括号或者分号不能落写
c.switch语句已经大致理解了,与if语句相比,我认为switch语句看起来更规整。
d.本次实验涉及到一些需要自己编程的地方,编程需要有清晰的逻辑思维,善于思考,善于动手操作,才能在学习程序设计的时候理解的更快一些。