/* 《C语言程序设计教程学习指导》p118 实验内容(1) 这是一个常用格式控制符使用示例 运行程序,观察行结果,对照每一行printf()中的格式控制符,理解其功能和用法 */ #includeint main() { int x=1234; float f=123.456; double m=123.456; char ch='a'; char a[]="Hello, world!"; // 定义一个数组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("%.3f, %8.3f, %8.3f, %0.3f, %.5e\n",f,f,f,f,f);//调整精确度 printf("%lf\n",m); printf("%3c\n", ch); printf("%s\n%15s\n%10.12s\n%2.12s\n%.12s\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
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);//此处应空位防止把空格赋值给c
printf("%c%c%c\n",c1,c2,c3);
scanf("%lf %lf",&x,&y);//f改为lf
printf("%lf,%lf\n",x,y);//f改为lf
return 0;
} 
/* 《C语言程序设计教程学习指导》p122 实验内容(1):判断三角形类型:一般三角形、等腰三角形、等边三角形 这是一个使用多分支if语句编程解决非数值类问题示例 运行程序,输入不同边长数据进行测试,观察输出结果是否正确,理解和巩固if语句功能和用法 */ #includeint main() { double a,b,c; scanf("%lf %lf %lf", &a, &b, &c); if(a<0 || b<0 || c<0) printf("不能构成三角形\n"); else if(a+b>c && a+c>b && b+c>a) { if(a==b && a==c) printf("构成等边三角形\n"); else if(a==b || a==c || b==c) printf("构成等腰三角形\n"); else printf("构成一般三角形\n"); } else printf("不能构成三角形\n"); return 0; }
// 功能: 从键盘上输入数字选择屏幕配色方案,打印字符串 // 输入1, 选择黑底绿色配色方案 // 输入2,选择白底黑色配色方案 // 输入3,选择蓝底黑色配色方案 // 输入其它,选择黑底白字配色方案(默认) #include#include int main() { char choice; // 显示菜单 printf("输入0~9以内的数字,选择屏幕背景色前景色方案: \n"); printf("1-\t黑底绿色\n"); printf("2-\t白底黑色\n"); printf("3-\t蓝底白色\n"); printf("其它-\t黑底白色(默认)\n"); printf("\n请输入, 选择你想使用的屏幕配色方案: "); // 要求用户从键盘输入0~9的数字,选择屏幕配色方案 choice = getchar(); // 根据用户输入,设置屏幕配色方案 if (choice == '1') { system("color 02"); printf("《黑客帝国》一类的影视剧常见这种屏幕色:)\n"); } else if(choice == '2') { system("color f0"); printf("大部分编辑器默认是这种配色:)\n"); }
#includeint main() { int x,y; printf("请输入三位数以内的十进制整数:\n"); scanf("%d",&x); printf("计算其逆系数:\n"); if(x<0||x>999) {printf("数据输入错误,请重新输入:\n"); } if(0<=x&&x<=9) { printf("正序与逆序相同\n"); } if(10<=x&&x<=99) {y=(x%10*10+x/10); if(x==y) printf("正序与逆序相同\n"); else printf("正序与逆序不同\n"); } if(100<=x&&x<=999) {y=(x%10*100+x/10%10*10+x/100); if(x==y) printf("正序与逆序相同\n"); else printf("正序与逆序不同\n"); } return 0 ; }
#includeint main() {int y,m; printf("请输入年份 月份:\n"); scanf("%d",&y); scanf("%d",&m); if(y<=0||m<=0||m>12) { printf("数据输入错误,请重新输入:\n");} if(m==1||m==3||m==5||m==7||m==8||m==10||m==12) { printf("%d年%d月是31天",y,m);} if(m==4||m==6||m==9||m==11) { printf("%d年%d月是30天",y,m);} if(m==2) {if((y%4==0)&&(y%100!=0)||(y%400==0)) printf("%d年%d月是29天",y,m); else printf("%d年%d月是28天",y,m); } return 0; }
#include#include int main() { int score; scanf("%d",&score); if(score<0||score>100) { printf("数据错误:\n"); } switch(score/10) { case 10: case 9:printf("优秀\n");break; case 8:printf("良好\n");break; case 7:printf("中等\n");break; case 6:printf("合格\n");break; default:printf("不合格\n");break; } return 0; }
实验心得
1.if语句要记得加{}()。
2.switch语句记得加break.