资源描述
中 国 海 洋 大 学 命 题 专 用 纸 (首页)
-第 二 学期 试题名称: C程序设计期中考试 课程号: 共 7 页 第 1 页
专业__________________ 学号__________________ 姓名__________________ 任课教师__________________ 分数___________
答案请答于答题卡上,答题卡上写清楚考生个人信息、任课教师姓名与选课班。只需上交答题卡。
一、选择题(每题2分,共40分)
1.如下论述正确的是__B___。
A) 在C程序中,main函数必须位于程序的最前面
B) C语言自身没有输入输出语句
C) C程序的每行中只能写一条语句
D) 在对一个C程序进行编译的过程中,可发觉注释中的拼写错误
2.下列定义变量的语句中错误的是___C___。
A) double int_; B) int _int; C) float US$; D) char INT;
3.设有如下的变量定义,则如下符合C语言语法的体现式是__A____。
int i=8,k,a,b;
unsigned long w=5;
double x=1.42,y=5.2;
A) a+=a-=(b=4)*(a=3) B) x%(-3) C) a=a*3=2 D) y=float(i)
4.数字字符'0'的ASCII的值为48,下面程序运行后输出成果是__B____。
#include <stdio.h>
void main()
{ char a='1',b='2';
printf("%c,",b--);
printf("%d\n",b-a); }
A) 1,0 B) 2,0 C) 49,0 D) 0,49
5.如下程序的输出成果是___C___。
#include <stdio.h>
void main()
{ int a=5,b=4,c=6,d;
printf("%d\n",d=a>b?(a>c?a:c):(b)); }
A) 5 B) 8 C) 6 D) 不确定
6.已经有如下定义和输入语句,若要求 a1, a2, c1, c2的值分别为10,20,A 和 B,当从第一列开始输入数据时,正确的数据输入方式是____A__。( 表示空格,<CR>表示回车)
int a1,a2; char c1,c2;
scanf("%d%c%d%c",&a1,&c1,&a2,&c2);
A) 10A20B<CR> B) 1020AB<CR>
C) 10A20B<CR> D) 10A20B<CR>
7.下面程序的输出成果是___A___。
#include <stdio.h>
讲课教师
命题教师或命题责任人
签 字
院系责任人
签 字
5 月 日
注:请命题人标明每道考题的考分值。
中 国 海 洋 大 学 命 题 专 用 纸(附页)
-第 二 学期 试题名称: C程序设计期中考试 课程号: 共 7 页 第 2 页
void main()
{ int x=1,y=0,a=0,b=0;
switch(x)
{ case 1:switch(y)
{ case 0:a++;break;
case 1:b++;break;
}
case 2:a++;b++;break;
}
printf("a=%d,b=%d\n",a,b); }
A) a=2,b=1 B) a=1,b=1 C) a=1,b=0 D) a=2,b=2
8.假定下面所有变量均已正确定义,下列程序段运行后x的值是___C___。
ok1=1; ok2=2; ok3=3; x=15;
if(!ok1) x--;
else if(ok2) if(!ok3) x=3;
else x=4;
A) 15 B) 14 C) 4 D) 3
9.如下程序的输出成果是____A__。
#include <stdio.h>
void main()
{ int i=0,s=0;
do { if(i%2) { i++; continue; }
i++;
s+=i;
}while(i<7);
printf("%d\n",s); }
A) 16 B)12 C)9 D)8
10.下列描述中不正确的是_C_____。
A) 字符型数组中能够存储字符串
B) 能够对字符型数组进行整体输入、输出
C) 能够对整型数组进行整体输入、输出
D) 不能在赋值语句中通过赋值运算符"="对字符型数组进行整体赋值
11.如下程序段运行后输出成果是__D____。
int x=3;
do{ printf("%d\n",x-=2);
}while(!(--x));
A) 输出的是1 B) 输出的是3和0 C) 是死循环 D) 输出的是1和-2
12.定义如下变量和数组 :
int k;
int a[3][3]={1,2,3,4,5,6,7,8,9};
则下面语句的输出成果是__A___。
for(k=0;k<3;k++) printf("%d",a[k][2-k]);
A) 357 B) 369 C) 159 D) 147
中 国 海 洋 大 学 命 题 专 用 纸(附页)
-第 二 学期 试题名称: C程序设计期中考试 课程号: 共 7 页 第 3 页
13.下面论述中正确的是___D___。
A) break语句只能用于switch语句中 B) 在switch语句中必须使用default
C) continue语句可用于switch语句中 D) 在switch语句中不一定使用break语句14.下面程序执行后,输出成果是__D____。
void main()
{ char s[]="abcde";
s+=2;
printf("%d\n",s[0]); }
A) 97 B) 99 C) c D) 程序犯错,无法运行
15.下面是对数组s的初始化,其中不正确的是__D___。
A) char s[5]={"abc"}; B) char s[5]={'a','b','c','d','e'};
C) char s[5]= " "; D) char s[5]= "abcdef";
16.如下程序运行后的输出成果是_____。
#include <stdio.h>
void main()
{ int y=18,i=0,j,a[8];
do { a[i]=y%2; i++; y=y/2; } while(y>=1);
for(j=i-1;j>=0;j--) printf("%d",a[j]);
printf("\n"); }
A) 10000 B) 00110 C) 10100 D) 10010
17.下面程序执行后的输出成果是______。
void main()
{int i,s=0;
for(i=1;i<10;i+=2) s+=i;
printf("%d\n",s); }
A) 自然数1~9的累加和 B)自然数1~10的累加和
C) 自然数1~9中奇数和 D)自然数1~9中偶数和
18.如下程序执行后,输出成果是______。
#include <stdio.h>
void main()
{ char ch[7]={"65ab21"};
int i,s=1;
for(i=0;ch[i]>='0'&&ch[i]<='9';i++) s=10*s+ch[i]-'0';
printf("%d\n",s); }
A) 6521 B) 165 C) 16521 D) ab
19.如下程序的输出成果是______。
#include <stdio.h>
void main( )
{ int a[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;
for(i=1;i<3;i++)
for(j=0;j<=i;j++) s+=a[i][j];
printf("%d\n",s);}
A) 18 B) 19 C) 20 D) 21
中 国 海 洋 大 学 命 题 专 用 纸(附页)
-第 二 学期 试题名称: C程序设计期中考试 课程号: 共 7 页 第 4 页
20.当c的值不为0 时,在下列选项中能正确将c的值赋给变量a、b的是________。
A) c=b=a; B) (a=c)||(b=c); C) (a=c)&&(b=c); D) a=c=b;
二、填空题(每空2分,共40分)
1.如下程序运行时,假如从键盘输入:Y?N?<回车>,则输出成果是____【1】_____。
#include <stdio.h>
void main()
{ char c;
while((c=getchar())!='?') putchar(--c); }
2.设a、b、c、d、m、n均为int型变量,且a=5,b=6,c=7,d=8,m=2,n=2,则逻辑体现式“(m=a>b)&&(n=c<d)”运算后,n的值是____【2】_____。
3.设变量已正确定义,在程序段B中填入正确的内容,使程序段A和程序段B等价。
程序段A 程序段B
for(k=s=0;k<=10;s+=a[k++]) for(k=0,s=0; ;s+=a[k++])
if(a[k]<0) break; if (____【3】_____) break;
4.在scanf( )中以小数形式接收double型数据输入的格式符是____【4】_____。
5.下列程序段的输出成果是____【5】_____。
void main( )
{ char b[]="Hello,you";
b[5]=0;
printf("%s \n", b ); }
6.下面程序的功效是输出数组s中最大元素的下标,请完善程序。
void main()
{ int k,p;
int s[]={1,-9,7,2,-10,3};
for(p=0,k=p;p<6;p++) if (s[p]>s[k]) ____【6】_____;
printf("%d\n",k); }
7.下面程序的输出成果是____【7】_____。
void main()
{int a[6]={0},i;
for(i=0;i<=5;i++)
switch(i)
{case 4:a[i]++; case 3:a[i]++;
case 2:a[i]++; case 1:a[i]++;
default:a[i]++;
}
for(i=0;i<6;i++) printf("%d ",a[i]);
printf("\n"); }
8.下面程序运行的输出成果是____【8】_____。
void main()
{int m=011,n=11; printf("%d %d\n",--m,n--); }
中 国 海 洋 大 学 命 题 专 用 纸(附页)
-第 二 学期 试题名称: C程序设计期中考试 课程号: 共 7 页 第 5 页
9.如下程序运行时输出成果是____【9】_____。
#include <stdio.h>
main()
{int a,s,n,count;
a=2;s=0;n=1;count=1;
while(count<=7){n=n*a;s=s+n;++count;}
printf("s=%d",s);
}
10.如下程序的功效是将输入的正整数按逆序输出。例:若输入135,输出531。完善程序。
void main()
{ long int n,s=0,a;
scanf("%ld",&n);
do { _____【10】_____;s=s*10+a;n/=10;
}while(_____【11】_____);
printf("%ld\n",s); }
11.如下程序的功效是输出100-300之间所有的素数,每行输出5个。完善程序。
#include<math.h>
void main()
{int n,i,m=0;
for(n=101;n<300;n+=2)
{for(i=2;i<=sqrt(n);i++)
if(n%i==0) break;
if(_____【12】_____)
{printf("%5d",n);
m++;
if(m%5==0) _____【13】_____;
}
}
}
12. 如下程序运行时输出成果是____【14】_____。
void main()
{int x=-1,n=0;
do{ x=x*x;n++;
}while(!x);
printf("n=%d\n",n);}
13.下面程序的功效是用"辗转相除法"计算出两个数的最大条约数,并将成果输出到屏幕上。请完善程序。
#include <stdio.h>
void main()
{ int a,b,temp;
scanf("%d%d",&a,&b);
while(b!=0) {temp=_____【15】_____; a=b; b=temp; }
printf("%d\n", _____【16】_____);}
中 国 海 洋 大 学 命 题 专 用 纸(附页)
-第 二 学期 试题名称: C程序设计期中考试 课程号: 共 7 页 第 6 页
14.如下程序的功效是统计单词个数。单词之间以空格作为分隔符。
void main()
{char str[80];int i,num=0;
gets(str);
if(str[0]!=' ') _____【17】_____;
for(i=1; _____【18】_____;i++)
if(str[i]!=' '&&str[i-1]==' ')
num++;
printf("num=%d\n",num);
}
15.下面程序运行时若输入字符串”ABCD”,输出成果是_____【19】_____。
void main()
{char a[20]="",b[80];
gets(b);
strcpy(a,b);
puts(a);
}
16.下面程序输入一个小于2×109(用long型数据)的正整数x,求这个数每位数字之和。例如,若输入123,输出6。请完善程序。
#include <stdio.h>
void main()
{ long x;int sum=0;
scanf("%ld",&x);
for(;x>0; _____【20】_____) sum+=x%10;
printf("sum=%d\n",sum); }
三、编程题(每题10分,共20分)
1.编程求,即求1/1!+1/2!+1/3!+1/4!+ ┅┅ +1/25!.
2.由键盘输入一个字符串,分别统计其中数字、英文字母和空格的个数并输出。
答案请答于答题卡上,答题卡上请写清楚考生个人信息以及任课教师姓名与选课班上学时间。
只上交答题卡。
中 国 海 洋 大 学 命 题 专 用 纸(附页)
-第 二 学期 试题名称: C程序设计期中考试 课程号: 共 7 页 第 7 页
《C程序设计》期中考试答题卡 .5
选课班上学时间______________________任课教师___________________ 分数________________
专业____________________________ 学号_________________________ 姓名____________________
一. 单项选择题(每题2分,共40分)(请将所选答案涂黑 如 A B C D )
1. A B C D 2. A B C D 3. A B C D 4. A B C D
5. A B C D 6. A B C D 7. A B C D 8. A B C D
9. A B C D 10. A B C D 11. A B C D 12. A B C D
13. A B C D 14. A B C D 15. A B C D 16. A B C D
17. A B C D 18. A B C D 19. A B C D 20. A B C D
二. 填空题(每题2分,共40分)注意题号与空格号不一致,以空格编号为准
【1】____________________【2】_______________________ 【3】______________________
【4】____________________【5】______________________ 【6】______________________
【7】____________________【8】________________________【9】______________________
【10】__________________【11】_______________________【12】_______________________
【13】_________________ 【14】_____________________ 【15】_______________________
【16】__________________【17】_____________________ 【18】_______________________
【19】_________________ 【20】_____________________
三. 编程题(共20分)(写于右侧,空间不够可写于背面)
中 国 海 洋 大 学 命 题 专 用 纸(附页)
-第 二 学期 试题名称: C程序设计期中考试 课程号: 共 7 页 第 7 页
《C程序设计》期中考试答题卡 .5
选课班上学时间______________________任课教师___________________ 分数________________
专业____________________________ 学号_________________________ 姓名____________________
一. 单项选择题(每题2分,共40分)(请将所选答案涂黑 如 A B C D )
1. A B C D 2. A B C D 3. A B C D 4. A B C D
5. A B C D 6. A B C D 7. A B C D 8. A B C D
9. A B C D 10. A B C D 11. A B C D 12. A B C D
13. A B C D 14. A B C D 15. A B C D 16. A B C D
17. A B C D 18. A B C D 19. A B C D 20. A B C D
二. 填空题(每题2分,共40分)注意题号与空格号不一致,以空格编号为准
【1】_______X____________【2】_________2_____________ 【3】___k>10||a[k]<0_______
【4】_______%lf__________【5】_________Hello________ 【6】_____k=p______________
【7】______123451________【8】_________8 11___________【9】_____s=254____________
【10】_____a=n%10_______【11】_n!=0 or n>0 or n______【12】_____i>sqrt(n)_________
【13】_printf("\n");___ 【14】_________n=1_________ 【15】_____temp=a%b__________
【16】______a___________【17】________num++________ 【18】_____str[i]!='\0'______
【19】______ABCD_______ 【20】________x/=10_______
三. 编程题(共20分)(写于右侧,空间不够可写于背面)
《C程序设计》期中考试申请
《C程序设计》课程定于5月18日(星期五)晚18:40-20:20进行期中考试,现申请安排考试教室与监考教师,并印试卷。
致
礼!
附:参加考试的班级与选课人数
选课号 实际选课人数 任课教师 地点
0008002 58 曲少珍 鱼山
0008001 64 曲少珍 鱼山
0008003 37 于海波 鱼山
0008049 67 周转 崂山
0008048 61 周转 崂山
0008047 59 周转 崂山
0008054 64 于海波 崂山
0008053 67 于海波 崂山
0008052 66 王璐 崂山
0008051 60 王璐 崂山
0008050 58 王璐 崂山
总计 661
每个班级的印卷份数请加1-2份。试卷第7页答题卡请预留右半页空白。
.5.10
展开阅读全文