浙江省秋季二级C语言试题.docx
- 文档编号:24311614
- 上传时间:2023-05-26
- 格式:DOCX
- 页数:12
- 大小:19.19KB
浙江省秋季二级C语言试题.docx
《浙江省秋季二级C语言试题.docx》由会员分享,可在线阅读,更多相关《浙江省秋季二级C语言试题.docx(12页珍藏版)》请在冰豆网上搜索。
浙江省秋季二级C语言试题
2008年秋浙江省高等学校
计算机等级考试试卷(二级C)
试题1(第小题3分,共12分)
【程序说明】
输入一批学生的成绩,遇到负数表示输入结束,要求统计并各等级成绩的学生个数。
成绩等级分为三级,分别为A(90~100)、P(60~80)和F(0~59)。
运行示例:
Enterscores:
887168705981910607783-10
A:
1;P:
8;F:
2;
[程序]
#include
main()
{intmark,a,p,f;
a=p=f=0;
printf("Enterscores:
");
scanf("%d",&mark);
while(
(1))
{
if(mark>=90)
a++;
(2)p++;
(3)f++;
(4)
}
printf("A:
%d;P:
%d;F:
%d;\n",a,p,f);
}
【供选择的答案】
(1)A、mark>=0B、mark>0
C、mark<=0D、mark<0答案:
A
(2)A、elseif(mark>=60)B、if(mark>=60)
C、else(mark>=60)D、if(mark<90)答案:
A
(3)A、else(mark<60)B、else
C、elseif(mark>0)D、elseif(mark<=60)答案:
B或填elseif(mark>=0)
(4)A、scanf("%d",mark);B、scanf("%d",&mark);
C、;D、mark=getchar();答案:
B
试题2(第小题3分,共12分)
【程序说明】
求1~999之间所有满足各位数字的立方之和等于它本身的数。
例如153的秋位数字的立方和是13+53+33=153
运行示例:
1153370371407
[程序`]
#include
main()
{intdigit,j,sum,x;
for(j=1;j<1000;j++){
(5)
(6)
do{
(7)
sum=sum+digit*digit*digit;
x=x/10;
}while((8));
if(j==sum)printf("%d",sum);
}
}
【供选择的答案】
(5)A、sum=0;B、sum=1;
C、sum=j;D、;答案:
A
(6)A、x=1;B、x=j;
C、;D、x=sum;答案:
B
(7)A、digit=x/10;B、digit=x;
C、digit=x%10;D、;答案:
C
(8)A、x==0B、j!
0
C、j==0D、x!
=0答案:
D
试题3(第小题3分,共12分)
【程序说明】
输入10个整数,将它们从大到小排序后输出。
运行示例:
Enter10integers:
1098-9369100-102
Aftersorted:
100981096320-1–9
[程序]
#include
(9)
voidsort((10))
{inti,index,k,t;
for(k=0;k index=k; for(i=k+1;i if(a[i]>a[index])index=i; (11) } } voidswap(int*x,int*y) {intt; t=*x;*x=*y;*y=t; } main() {inti,a[10]; printf("Enter10integers: "); for(i=0;i<10;i++) scanf("%d",&a[i]); (12); printf("Aftersorted: "); for(i=0;i<10;i++) printf("%d",a[i]); printf("\n"); } 【供选择的答案】 (9)A、voidswap(int*x,int*y)B、; C、voidswap(int*x,int*y);D、voidswap(int*x,*y);答案: C (10)A、int&a,intnB、int*a,int*n C、int*a,intnD、inta,int*n答案: C (11)A、swap(*a[index],*a[k])B、swap(a[index],a[k]) C、swap(index,k)D、swap(&a[index],&a[k])答案: D (12)A、sort(a)B、sort{a[10]} C、sort(a[],10)D、sort(a,10)答案: D 试题4(第小题3分,共12分) 阅读下列程序并回答问题,在每小题提供的若干可选答案中挑选一个正确答案。 [程序] 程序1 #include main() {intj,k,s1,s2; s1=s2=0; for(j=0;j<=5;j++){ s1++; for(k=1;k<=j;k++) s2++; } printf("%d%d",s1,s2); } 程序2 #include main() {intj,k,s1,s2; s1=0; for(j=1;j<=5;j++){ s1++; for(k=1,s2=0;k<=j;k++) s2++; } printf("%d%d",s1,s2); } 程序3 #include main() {intj,k,s1,s2; s1=0; for(j=1;j<=5;j++){ s1++; for(k=1;k<=j;k++,s2=0) s2++; } printf("%d%d",s1,s2); } 程序4 #include main() {intj,k,s1,s2; s1=s2=0; for(j=1;j<=5;j++,s1=0){ s1++; for(k=1;k<=j;k++) s2++; } printf("%d%d",s1,s2); } (13)程序1运行时。 输出(13)。 答案: D A、015B、50 C、55D、515 (14)程序2运行时。 输出(14)。 答案: C A、015B、50 C、55D、515 (15)程序3运行时。 输出(15)。 答案: B A、015B、50 C、55D、515 (16)程序4运行时。 输出(16)。 答案: A A、015B、50 C、55D、515 试题5(第小题3分,共12分) 阅读下列程序并回答问题,在每小题提供的若干可选答案中挑选一个正确答案。 【程序】 程序1 #include main() {inti,m=15,y=-1; for(i=2;i<=m/2;i++) if(m%i==0)y=0; elsey=1; printf("%d",y); } 程序2 #include main() {inti,m=15,y=-1; for(i=2;i<=m/2;i++) if(m%i==0){y=0;break;} printf("%d",y); } 程序3 #include main() {inti,m=15,y=-1; for(i=2;i<=m/2;i++) if(m%i==0)break; if(i>m/2)y=1; elsey=0; printf("%d",y); } 程序4 #include main() {inti,m=15,y=-1; for(i=2;i<=m/2;i++) if(m%i==0){break;y=0;} printf("%d",y); } (17)程序1运行时。 输出(17)。 答案: A A、1B、0 C、15D、-1 (18)程序1运行时。 输出(18)。 答案: B A、1B、0 C、15D、-1 (19)程序1运行时。 输出(19)。 答案: B A、1B、0 C、15D、-1 (20)程序1运行时。 输出(20)。 答案: D A、1B、0 C、15D、-1 试题6(第小题3分,共12分) 阅读下列程序并回答问题,在每小题提供的若干可选答案中挑选一个正确答案。 【程序】 #include main() {intk; charch,a[10],*s[10]={"one","two","three","four"}; k=0; while((ch=getchar())! ='\n'&&k<9) if(ch>'5'&&ch<'8')a[k++]=ch; a[k]='\0'; for(k=0;a[k]! ='\0';k++) printf("%s",s['9'-a[k]-1]); } (22)程序运行时,输入5678,输出(22)。 答案: D A、twothreeB、two C、onefourthreeD、fourthreetwoone (23)程序运行时,输入8561#,输出(23)。 答案: C A、twothreeB、two C、onefourthreeD、fourthreetwoone (24)程序运行时,输入7902#,输出(24)。 答案: B A、twothreeB、two C、onefourthreeD、fourthreetwoone (25)程序运行时,输入7633#,输出(25)。 答案: B A、twothreeB、two C、onefourthreeD、fourthreetwoone 试题7(28分) (1)定义函数fact(n)计算n的阶乘: n! =1*2*……*n,函数的返回值类型是double。 (2)定义函数cal(e)计算下列算式的值,直到最后一项的绝对值小于e,函数的返回值类型是double。 (3)定义函数main()。 输入正整数n,当精度e分别取值10-1、10-2、10-3……、10-n时,分别计算并输出下列式的值,直到最后一项的绝对值小于精度e,以比较不同精度下算出的结果。 要求调用函数cal(e)计算下列算式的。 参考程序: #include #include (1)doublefact(intn) {inti; doublet=1; for(i=1;i<=n;i++) t=t*i; returnt; } (2)doublecal(doublee) { doublesum=0,t=1; inti=1; while(1/t>=e) {t=fact(i); sum=sum+1.0/t; i++; } returnsum; } (3)main() {intn,i; while(scanf("%d",&n),n<=0); for(i=1;i<=n;i++) {printf("i=%d1+1/2! +1/3! +……=%f\n",i,cal(pow(10,-i))); } }
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 浙江省 秋季 二级 语言 试题