大学本科C语言上机考试题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C语言程序设计上机考试题
班级:姓名:学号:
使用C语言编写下列程序(20分×5=100分)
1、输入3个整型数据,求出最大数和最小数。
#include
int main()
{int a,b,c,e,d,f,g;
printf("请输入三个数\n");
scanf("%d,%d,%d",&a,&b,&c);
d=(a>b?a:b);
e=(d>c?d:c);
printf("Max is %d\n",e);
f=(a
g=(f printf("Min is %d\n",g); return 0; } 2、编写一个程序完成下列功能: 输入一个分数;当分数<60分时,输出’E’;当60≤分数<70,输出’D’;当70≤分数<80,输出’C’;当80≤分数<90,输出’B’;其余分数输出’A’。 #include int main() {float score; char grade; printf("请输入学生成绩:"); scanf("%f",&score); while(score>100||score<0)); {printf("\n输入有误,请输入); scanf("%f",&score); } switch((int)(score/10)) {case 10: case 9:grade='A';break; case 8:grade='B';break; case 7:grade='C';break; case 6:grade='D';break; case 5: case 4: case 3: case 2: case 1: case 0:grade='E'; } printf("成绩是%5.1f,相应的等级是%c\n",score.grade); return 0; } 3、编写一个四则运算程序,输出计算结果。 #include int main() {int c,d,e; float a,b,f; printf("请输入两个数"); scanf("%f,%f",&a,&b); c=a+b; d=a-b; e=a*b; f=a/b; printf("加法结果为%d\n",c); printf("减法结果为%d\n",d); printf("乘法结果为%d\n",e); printf("除法结果为%f\n",f); return 0; } 4.100以内的素数 从键盘输入一个正整数,判断该整数是否为素数。 #include int main() { int n,i; printf("\n"); scanf("%d",&n); for (i=2;i<=n-1;i++) if(n%i==0) break; if(i else printf("%d is\n",n); return 0; } 第二种 #include int main() { int n,k,m; m=0; printf("请输入n="); scanf("%d",&n); for(k=2;k<=n/2;k++) if(n%k==0) m++; if(m) printf("n=%d不是素数!\n",n); else printf("n=%d是素数!\n",n); return 0; } 5.判断闰年的程序 6、从键盘上输入10个整型数据,倒数排列存储,再倒序输出。 #include int main() { int i,a[10]; for(i=0;i<10;i++) scanf("%d",&a[i]); for(i=9;i>=0;i--) printf("%5d",a[i]); printf("\n"); return 0; } 7、编程输入一个字符串,将其中所有大写英文字母改为小写英文字母,所有小 写英文字母改为大写英文字母,然后输出。 #include int main() {char s[100]; int i; printf("请输入字符串\n"); scanf("%s",s); for(i=0;i<100;i++) if('a' s[i]-=32; else if('A' s[i]+=32; printf("%s",s); return 0; } 8、设有一位数组score ,内放10名学生成绩,写一个函数,求出平均分、最高分和最低分。 #include float Max=0,Min=0; int main() {float average(float array[],int n); float ave,score[10]; int i; printf("Please enter 10 scores:"); for(i=0;i<10;i++) scanf("%f",&score[i]); ave=average(score,10); printf("Max=%6.2f\nmin=%6.2f\naverage=%6.2f\n",Max,Min,ave); return 0; } float average(float array[],int n) {int i; float aver,sum=array[0]; Max=Min=array[0]; for(i=1;i {if(array[i]>Max)Max=array[i]; else if(array[i] sum=sum+array[i]; } aver=sum/n; return(aver); } 9、有一个函数: x (x<1)y=21(1x 10) 31(x 10) x x -≤<-≥ 写程序,输入x 的值输出y 的相应值