(1). 有一函数:
用scanf函数输入x的值,求y值。 运行程序,输入x的值(分别为x<1、1≤x<10、x≥10三种情况),检查输出的y值是否正确 #include <stdio.h> int main() { int x,y; scanf("%d", &x); if (x < 1) y = x; else if (x >= 1 && x < 10) y=2*x-1; else if (x >= 10 ) y=3*x-11; printf("%d\n",y); return 0; }
(2). 给出一个百分制成绩,要求输出成绩等级A、B、C、D、E。90分以上为A,80-89分为B,70-79分为C,60-69分为D,60分以下为E。 ① 事先编好程序,要求分别用if语句和switch语句实现(写两个程序)。运行程序,并检查结果是否正确。 #define _CRT_SECURE_NO_WARNINGS 1 #include <stdio.h> int main() { float i; printf("输入成绩: "); scanf("%f", &i); if (i >= 90) printf("等级为A\n"); else if (i >= 80 && i <= 89) printf("等级为B\n"); else if (i >= 70 && i <= 79) printf("等级为C\n"); else if (i >= 60 && i <= 69) printf("等级为D\n"); else if (i < 60) printf("等级为E\n"); return 0;}
② 再运行一次程序,输入分数为负值(如-70),这显然是输入时出错,不应给出等级。修改程序,使之能正确处理任何数据。当输入数据大于100或小于0时,通知用户“输入数据错”,程序结束。 Switch 语句
3). 给一个不多于3位的正整数,要求:①求出它是几位数;②分别打印出每一位数字;③按逆序打印出各位数字,例如原数为321,应输出123。 应准备以下测试数据: l 要处理的数为1位正整数; l 要处理的数为2位正整数; l 要处理的数为3位正整数; 除此之外,程序还应当对不合法的输入作必要的处理。例如:
#include "stdio.h" void main() { unsigned int x; int a,b,c,d,t; printf("请输入一个正整数x:",x); scanf("%d",&x); a=x/1000; b=(x/100)%10; c=(x%100)/10; d=x%10; t=a+b*10+c*100+d*1000; printf("它个位数上是d=%d\n",d); if(a!=0) { printf("它十位数上是c=%d\n",c); printf("它百位数上是b=%d\n",b); printf("它千位数上是a=%d\n",a); printf("这个数是一个四位数\n"); printf("它逆序结果为t=%d\n",t); } else if(b!=0){ printf("它十位数上是c=%d\n",c); printf("它百位数上是b=%d\n",b); printf("这个数是一个三位数\n"); printf("它逆序结果为t=%d\n",t/10); } else if(c!=0){ printf("它十位数上是c=%d\n",c); printf("这个数是一个十位数\n"); printf("它逆序结果为t=%d\n",t);} else { printf("这个数是一个一位数\n"); printf("它逆序结果为t=%d\n",d); } } (4). 输入4个整数,要求按由小到大顺序输出。 得到正确结果后,修改程序使之按由大到小顺序输出。 #define _CRT_SECURE_NO_WARNINGS 1 #include <stdio.h> int main() { int a, b, c, d, t; printf("输入; a,b,c,d: \n"); scanf("%d,%d,%d,%d", &a, &b, &c, &d); if (a > b) { t = a; a = b; b = t; } if (a > c) { t = a; a = c; c = t; } if (a > d) { t = a; a = d; d = a; } if (b > c) { t = b; b = c; c = t; } if (b > d) { t = b; b = d; d = t; } if (c > d) { t = c; c = d; d = t; } printf("%d,%d,%d,%d\n", a, b, c, d); return 0; } |
好难,这章考察的是对于if else和switch case语句的应用,其中也含有对变量的处理,对于新手来说还是有一定难度的,第三第四题这种对于数据处理后再输出,自己也是有参考学习才做出来,绕不少弯子,还有待巩固 |
C语言,练习4
最新推荐文章于 2023-11-18 22:11:40 发布