C程序设计 样卷.docx
- 文档编号:7728998
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:53
- 大小:124.99KB
C程序设计 样卷.docx
《C程序设计 样卷.docx》由会员分享,可在线阅读,更多相关《C程序设计 样卷.docx(53页珍藏版)》请在冰豆网上搜索。
C程序设计样卷
C程序设计试题(十一)
[注意]所有答案写在单张的答题卷上,考试结束递交答卷,试卷不必递交。
一、单选题(本题共20分,每小题2分)
(1)
一个C程序的执行是从___(A)___。
[A]本程序的main函数开始,到main函数结束
[B]本程序的第一个函数开始,到本程序的最后一个函数结束
[C]本程序的main函数开始,到本程序的最后一个函数结束
[D]本程序的第一个函数开始,到main函数结束
(2)
设有以下定义:
inta=0;doubleb=1.25;charc='A';
#defined2
则下面语句中错误的是___(D)___。
[A]a++;[B]b++;[C]c++;[D]d++;
(3)
设有以下定义和输入语句,要使x、y和z的值分别为10,3.1和A,程序运行后,正确的输入数据的方式是___(C)___。
intx;floaty;charz;
scanf("%d%f%c",&x,&y,&z);
[A]103.1A[B]10,3.1,A
[C]103.1A[D]103.1A
(4)
判断int型变量x是否为1≤x≤100的偶数,可以用表达式___(B)___。
[A]1≤x≤100&&x%2==0[B]x>=1&&x<=100&&x%2==0
[C]x>=1&&x<=100&&x==2n[D]x>=1||x<=100&&x%2==0
(5)
设有以下定义intx=1,y=2;,执行赋值语句x=(x>y)?
x+1:
y+2;后x和y的值分别是___(D)___。
[A]1和2[B]2和4[C]4和4[D]4和2
(6)
设有程序段
for(i=1;i<10;i++)
{printf("%d",i);i++;}
以下叙述正确的是___(A)___。
[A]for循环执行的输出是13579[B]for循环执行的输出是123456789
[C]for循环体语句执行10次[D]for循环体语句执行9次
(7)
以下能正确进行数组定义的是___(C)___。
[A]inta(10);[B]intn=10,a[n];
[C]#defineSIZE10[D]inta[10]=0;
inta[SIZE];
(8)
p
q
若要建立如图所示的存储结构,且已有定义floatp=3.14,*q;,则正确的赋值语句是___(D)___。
[A]*q=p;[B]*q=&p;[C]q=p[D]q=&p
(9)
以下语句执行后屏幕上将显示___(C)___。
chars1[]="ABC",s2[]="XYZ";strcpy(s2,s1);s2[2]='\0';printf("%s,%s",s1,s2);
[A]ABC,ABC[B]XYZ,XYZ[C]ABC,AB[D]XYZ,XY
(10)
表达式2&3的结果值为___(B)___。
[A]1[B]2[C]3[D]5
二、程序填空题(本题共30分,每小题2分)
阅读下列程序说明和程序代码,在每小题提供的若干可选项中,挑选一个最佳的选项。
(1)【程序说明】打印数字金字塔,运行结果如右图示。
【程序代码】
#include
voidmain(){
inti,j;
for(i=1;i<=5;i++){
for(j=5-i;___(11)___;j--)
printf("");
for(j=1;___(12)___;j++)
___(13)___
printf("\n");
}
}
【选项】
(11)
[A]j<=1[B]j==1[C]j>=1[D]j>1
(12)
[A]j<=2*i[B]j==2*i[C]j<=2*i-1[D]j==2*i-1
(13)
[A]printf("%d",j);[B]printf("%d",i);
[C]printf("*");[D]printf("i");
(2)【程序说明】计算1~99之间的素数和。
prime函数用于判断任意一个数是否是素数,若是素数则返回1,否则返回0。
其中数值1和2直接被认定为非素数。
【程序代码】
#include
#include
voidmain(){
intm,i,s=0;
intprime(int);
for(m=1;m<=99;___(14)___){
if(___(15)___)
s+=m;
}
printf("s=%d",s);
}
___(16)___{
inti,t=1;
if(x==1||x==2)___(17)___
for(i=2;i<=sqrt(x);i++)
if(x%i==0){
t=0;
break;
}
___(18)___
}
【选项】
(14)
[A]m++;[B]m=m+2;[C]m+2[D]m+=2
(15)
[A]prime(m)=1[B]prime(m)[C]!
prime(m)[D]prime(x)!
=0
(16)
[A]intprime(intm)[B]intprime(int)
[C]intprime(intx)[D]voidprime(intx)
(17)
[A]t=0;break;[B]returnt;[C]t=0;returnt;[D]t=0;
(18)
[A]returnt;[B]return;[C];[D]returnt
(3)【程序说明】任意输入一个少于80个字符的字符串,统计字符串中的阿拉伯数字的个数。
程序运行结果如右图所示。
【程序代码】
#include
voidmain(){
charstr[80],*p;
ints=0;
___(19)___
___(20)___
___(21)___{
if(___(22)___)
s++;
___(23)___
}
printf("阿拉伯数字有%d个。
\n",s);
}
【选项】
(19)
[A]gets(str);[B]gets(&str);
[C]scanf("%s",&str);[D]scanf("%c",&str[i]);
(20)
[A]p=&str;[B]p=str;[C]*p=&str;[D]*p=str;
(21)
[A]while(p=='\0')[B]while(*p=='\0')
[C]while(p!
='\0')[D]while(*p!
='\0')
(22)
[A]*p>=48&&*p<=57[B]*p>=48||*p<=57
[C]*p>=0&&*p<=9[D]*p>=0||*p<=9
(23)
[A]p++;[B]p+1;
[C]*p++;[D]str++;
(4)【程序说明】定义一个结构体变量(包括年、月、日)。
计算该日在本年中是第几天?
程序运行结果如下图所示。
注意闰年问题。
(提示:
能被4整除且不能被100整除或能被400整除的年份是闰年)
【程序代码】
#include
voidmain(){
___(24)___
intmon[12]={31,28,31,30,31,30,31,31,30,31,30,31},i,days=0;
printf("pleaseinputthedate(yyyy-mm-dd):
");
scanf("%d-%d-%d",&today.year,&today.month,&today.day);
if(today.year%4==0&&today.year%100!
=0||today.year%400==0)
mon[1]=29;
for(i=0;i days=days+mon[i]; ___(25)___ printf("Todayisthe%dstdayin%d.\n",days,today.year); } 【选项】 (24) [A]structdate{[B]struct{ intyear;intyear; intmonth;intmonth; intday;intday; }}today; structdatetoday; [C]structdate{[D]structdate{ intyear;intyear; intmonth;intmonth; intday;intday; };}today structtoday; (25) [A]days=days+day;[B]days=days+today.day; [C]days=days+today[D]today.day=days+today.day; 三、程序阅读题(本题共20分,每小题2分) 阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确的答案。 (1)【程序代码】 #include voidmain(){ intx=1,y=2,z; scanf("%d",&z); switch(z%2){//------①------- case1: z=x*y;break; default: z=x/y; } printf("%d",z); } 【选项】 (26) 程序运行时,输入分别是1和2的情况下,输出的结果分别是___(26)___。 [A]2和0[B]2和0.5[C]0和2[D]0.5和2 (27) 如果将上述程序代码标示为①行中switch语句括号内的表达式改为z%2==0,那么程序运行时,输入分别是1和2的情况下,输出的结果分别是___(27)___。 [A]2和0[B]2和0.5[C]0和2[D]0.5和2 (2)【程序代码】 #include voidmain(){ inta[5]={1,3,2,5,4},i,j,k,t; for(i=0;i<5;i++){ k=i; for(j=i+1;j<5;j++)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C程序设计 样卷 程序设计