上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
3.7 实践3
3.7.1 实验任务
1.会使用关系表达式和逻辑表达式。
2.会使用scanf语句和printf语句。
3.会熟练使用if语句和switch语句。
3.7.2 实践设备要求
装有Keil C51 uvision3集成开发环境的计算机。
3.7.3 实践步骤
1.下面程序利用条件语句,比较3个数的大小,分析怎样修改求出3个数中的最小值?Keil C51下仿真验证。
main() { int a,b,c,max,t; printf("input a,b,c: "); scanf("%d,%d, %d",&a,&b,&c); t=(a>b)? a : b; max=(t>c)?t : c; printf("max=%d",max); }
2.下面程序为输入3个整数,按值从大到小的顺序输出它们。先运行程序,再将它改为能够对4个整数进行由小到大的顺序输出。
main() { int x, y, z, temp; printf("Enter x, y, z.\n"); scanf("%d%d%d", &x, &y, &z); if (x <y) { temp = x; x = y; y = temp;} // 使x >= y if (x <z) { temp = x; x = z; z = temp;} // 使x >= z if (y <z) { temp = y; y = z; z = temp;} // 使y >= z printf("%d\t%d\t%d\n", x, y, z); }
3.分析下面程序的执行结果,然后再上机运行,结果是否一致。
main() { int x,y=1,z; if(y!=0) x=5; printf("x=%d\t",x); if(y==0) x=3; else x=5; printf("x=%d\t\n",x); x=1; if(z<0) if(y>0) x=3; else x=5; printf("x=%d\t\n",x); if(z=y<0) x=3; else if(y==0) x=5; else x=7; printf("x=%d\t",x); printf("z=%d\t\n",z); if(x=z=y) x=3; printf("x=%d\t",x); printf("z=%d\t\n",z); }
4.下面程序求函数输出值,试全部用if重新遍写,Keil C51下仿真验证。
main() { int x,y,t; printf("input x=:"); scanf("%d",&x); if(x<10) t=0; if(x>=100) t=10; else t=x/10; switch(t){ case 0: y=x; break; case 1: case 2: case 3: case 4: y=3*x–2; break; case 5: case 6: case 7: case 8: case 9: y=4*x+1; break; case 10: y=5*x; } printf("y=%d",y); }
成绩评定