试 题 卷(二)
(总分:150分 时量:90分钟 )
一、阅读程序,分析结果
1、#include int a=2,b=5,c=8,t; if ( a < b ) { t = a; a = b; b = t; } if ( b < c ) { t = b; b = c; c = t; } if ( a < b ) { t = a; a = b; b = t; } printf( \"%d,%d\\n\} 运行结果:_____________ 2、#include \"stdio.h\" void main( ) { int a=7; if(a>9 || a<10) a=a/3; else a=a%3; printf(\"a=%d\} 运行结果:_____________ 3、#include \"stdio.h\" void main() { int i=7,j; while ( i> 2) { j = i%2; printf( \"%d\ i--; } printf( \"%d\ } 运行结果:_____________ 4、#include char ch; while((ch=getchar())!='\\n') { 第 1 页 共 8 页 if (ch>='A'&&ch<='Z') ch=ch+32; else if (ch>='a'&&ch<='z') ch=ch-32; printf(\"%c\ } } 运行结果:_____________ 5、#include int a[5]={24,15,33,64,45},n=5,i,j,t; for(i=0;i 运行结果:_____________ 6、#include int a, b; for (a = 1, b = 1 ; a <= 100 ; a++) { if (b >= 9) break; if (b % 3 = = 1) { b += 3 ; continue ; } b -= 5; } printf(\"%d,%d\\n\ return 0; } 运行结果:_____________ 7、#include { int i, a[10]; for(i=9;i>=0;i--) a[i]=10-i; printf(“%d%d%d”,a[2],a[5],a[8]); } 运行结果:_____________ 第 2 页 共 8 页 8、#include int a,b; for(a=1,b=1;a<=100;a++) { if(b>20) break; if(b%4==1) { b=b+4; continue; } b=b-5; } printf(\"a=%d\\n\} 运行结果:_____________ 二、程序填空题 1、下面程序的功能是从键盘输入一组字符,从中统计大写字母和小写字母的个数. #include”stdio.h” main( ) { int m=0,n=0; char c; while((________________)!=’\\n’) { if(_________________) m++; if(__________________) n++; } print(“大写字母的个数为:%d\\n”,m); print(“大写字母的个数为:%d\\n”,n); } 2、有1020西瓜,第一天卖一半多两个,以后每天卖剩下的一半多两个,问几天以后能卖完?请完成下列程序。 #include”stdio.h” main( ) { int day,x2; day=0;x2=1020; while(______________) { x2=_____________; 第 3 页 共 8 页 day++; } printf(“day=%d\\n”,day); } 3、下面程序是实现求一节目的有效得分,有效得分的规则:去掉一个最高分和一个最低分,求平均分,若输入为无效分(大于10或小于0分)则表示该评委弃权,共10位评委. #include”stdio.h” main( ) { float x,s,av,max,min; int n,m; max=0;min=10;s=0; ___________________; for(n=1;n<=10;n++) { printf(“请输入第% d位评委的分数:”n); scanf(“%f”,&x); if(_____________) { m=m-1; _________________; } s=s+x; if(x>max) max=x; if(____________) min=x; } av=(s-min-max)/(m-2); printf(“本节目的最后得分是%f\\n”,av); } 4、下面程序是用冒泡法进行从大到小排序. #include”stdio.h” main( ) { int a[10],m,n,t; for(m=0;m<10;m++) scanf(“%d”,&a[m]); for(m=1;___________;m++) for(n=0;__________;n++) { t=a[n]; ______________________; a[n+1]=t; } printf(“排序后为:\\n); 第 4 页 共 8 页 for(m=0;m<10;m++) printf(“%d”,a[m]); } 三、程序改错题(指出程序错误所在的行号,并改正) 1、求1234…n L1 main() L2 { long int sum=1; L3 int n,i=1; L4 scanf(\"%d\ L5 printf(“\\n”); L6 while(i 2、编程计算12+32+52+…+92,要求输出中间计算结果。 L1 main() L2 { int i, sum=0; L3 for(i=1;i<=9;i+2) L4 sum+=i; L5 printf(\"sum = %d\",sum); L6 } (1)错误行号:______改正为:_________________________________________ (2)错误行号:______改正为:_________________________________________ 四、程序编写题 1、编一程序每个月根据每个月上网时间计算上网费用,计算方法如下: 30元10小时1050小时 费用每小时3元每小时2.5元50小时要求当输入每月上网小时数,显示该月总的上网费用 第 5 页 共 8 页 2、用数组实现以下功能:输入5个学生成绩,而后求出这些成绩的平均值并显示出来 3、以下程序是功能是:输出1-1000之间满足用3除余2,用5余3,用7余2的数,且一行只打印五个数 第 6 页 共 8 页 __________ _线_ __ 号封 学 密 __此_ _ __过_ _ __超_ _ _得_名 姓不 题_ _ __答_ _ __生_ _ __考_____级班2012年下期祁阳职业中专高二期末模拟试卷(二) C程序设计 答题卷 (总分:150分 时量:90分钟 ) 一、阅读程序,分析结果 题号 1 2 3 4 结果 题号 5 6 7 8 结果 二、程序填空题 【1】 1 【2】 【3】 2 【1】 【2】 【1】 3 【2】 【3】 【4】 【1】 4 【2】 【3】 三、程序改错题(指出程序错误所在的行号,并改正) 1、(1)错误行号:______改正为:_________________________________________ (2)错误行号:______改正为:_________________________________________ 2、(1)错误行号:______改正为:_________________________________________ (2)错误行号:______改正为:_________________________________________ 四、程序编写题 1、编一程序每个月根据每个月上网时间计算上网费用,计算方法如下: 费用30元10小时每小时3元1050小时 每小时2.5元50小时要求当输入每月上网小时数,显示该月总的上网费用 第 7 页 共 8 页 2、用数组实现以下功能:输入5个学生成绩,而后求出这些成绩的平均值并显示出来 3、以下程序是功能是:输出1-1000之间满足用3除余2,用5余3,用7余2的数,且一行只打印五个数 第 8 页 共 8 页 因篇幅问题不能全部显示,请点此查看更多更全内容