实验2 格式化输入输出和分支语句
part 1.格式化输出函数printf()和格式化输入函数scanf()
/* 《C语言程序设计教程学习指导》p118 实验内容(1) 这是一个常用格式控制符使用示例 运行程序,结合运行结果,对照每一行printf()中的格式控制符,理解其功能和用法 */ #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%15s\n%10.5s\n%2.5s\n%.3s\n",a,a,a,a,a); return 0; }
/* 《C语言程序设计教程学习指导》p119 实验内容(2) 这是一个格式化输入输出函数及格式符使用练习 找出两处错误,修改并运行程序 为a1,a2,a3,c1,c2,c3,x,y输入数据,使得: a1=1,a2=2,a3=3,c1='a',c2='b',c3='c', x=1.5, y=2.5 */ #include <stdio.h> int main() { double x,y; char c1,c2,c3; int a1,a2,a3; scanf("%d%d%d",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("%f,%lf",&x,&y); scanf("%lf,%lf",&x,&y); printf("%f,%lf\n",x,y); printf("%lf,%lf\n",x,y); return 0; }
Part4: switch语句体验练习
以下有break的情形
1 /* 2 switch语句使用示例 3 输入1,2,3...的不同整数,显示不同提示信息 4 */ 5 #include <stdio.h> 6 int main() { 7 int level; 8 printf("输入现在状态等级(1-5): "); 9 scanf("%d",&level); 10 switch(level) { 11 case 1: printf("high翻了:)\n"); break; 12 case 2: printf("low爆了:(\n"); break; 13 default: printf("一言难尽,无法概括。。。\n"); 14 } 15 return 0; 16 }
以下是无break的情形
1 /* 2 switch语句使用示例 3 输入1,2,3...的不同整数,显示不同提示信息 4 */ 5 #include <stdio.h> 6 int main() { 7 int level; 8 printf("输入现在状态等级(1-5): "); 9 scanf("%d",&level); 10 switch(level) { 11 case 1: printf("high翻了:)\n"); 12 case 2: printf("low爆了:(\n"); break; 13 default: printf("一言难尽,无法概括。。。\n"); 14 } 15 return 0; 16 }
以下是有一个break的情形
1 /* 2 switch语句使用示例 3 输入1,2,3...的不同整数,显示不同提示信息 4 */ 5 #include <stdio.h> 6 int main() { 7 int level; 8 printf("输入现在状态等级(1-5): "); 9 scanf("%d",&level); 10 switch(level) { 11 case 1: printf("high翻了:)\n"); 12 case 2: printf("low爆了:(\n"); 13 default: printf("一言难尽,无法概括。。。\n"); 14 } 15 return 0; 16 }
part5
方法一
#include <stdio.h> int main() { char level; printf("输入字母A B C D: "); scanf("%c",&level); if(level == 'A') { printf("Binggo, you are right~"); } else { printf("try again~") ; } return 0; }
方法二
#include <stdio.h> int main() { char level; printf("输入字母A B C D: "); scanf("%c",&level); switch(level) { case 'A': printf("bingoo,you are right~\n"); break; default: printf("try again~\n"); } return 0; }
实验总结与体会
1.字符A 忘记加单引号;
2.输出格式字符容易搞混;
3.要多加练习;