C语言试题 3.docx
- 文档编号:2150952
- 上传时间:2022-10-27
- 格式:DOCX
- 页数:29
- 大小:24.40KB
C语言试题 3.docx
《C语言试题 3.docx》由会员分享,可在线阅读,更多相关《C语言试题 3.docx(29页珍藏版)》请在冰豆网上搜索。
C语言试题3
一、选择题答案
1.若执行以下程序时从键盘上输入9,则输出结果是
Main0
{intn;
scanf("%d",&n);
if(n++<10)printf("%d\n",n);
elseprintf("%d\n",n--);
}
A)11
B)10
C)9
D)8
你所选择的答案是:
*,正确答案是:
B×
2.下列程序的输出结果是
main()
{chara[10]={9,8,7,6,5,4,3,2,1,0},*p=a+5;
printf("%d",*--p);
}
A)非法
B)a[4]的地址
C)5
D)3
你所选择的答案是:
*,正确答案是:
C×
3.以下程序的输出结果是
#defineSQR(X)X*X
main()
{inta=16,k=2,m=1;
a/=SQR(k+m)/SQR(k+m);
printf("d\n",a);
}
A)16
B)2
C)9
D)1
你所选择的答案是:
*,正确答案是:
B×
4.在C语言中,合法的长整型常数是
A)OLB)4962710C)324562&D)216D
你所选择的答案是:
*,正确答案是:
A×
5.以下选项中合法的字符常量是
A)"B"
B)'\010'
C)68
D)D
你所选择的答案是:
*,正确答案是:
B×
6.以下定义语句中,错误的是
A)inta[]={1,2};
B)char*a[3];
C)chars[10]="test";
D)intn=5,a[n];
你所选择的答案是:
*,正确答案是:
D×
7.假定int类型变量占用两个字节,其有定义:
intx[10]={0,2,4};,则数组x在内存中所占字节数是
A)3
B)6
C)10
D)20
你所选择的答案是:
*,正确答案是:
D×
8.若有以下定义和语句:
ints[4][5],(*ps)[5];
ps=s;
则对s数组元素的正确引用形式是
A)ps+1
B)*(ps+3)
C)ps[0][2]
D)*(ps+1)+3
你所选择的答案是:
*,正确答案是:
C×
9.不合法的main函数命令行参数表示形式是
A)main(inta,char*c[])
B)main(intarc,char**arv)
C)main(intargc,char*argv)
D)main(intargv,char*argc[])
你所选择的答案是:
*,正确答案是:
C×
10.以下叙述中正确的是
A)构成C程序的基本单位是函数
B)可以在一个函数中定义另一个函数
C)main()函数必须放在其它函数之前
D)所有被调用的函数一定要在调用之前进行定义
你所选择的答案是:
*,正确答案是:
A×
11.已知i、j、k为int型变量,若从键盘输入:
1,2,3<回车>,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是
A)scanf("%2d%2d%2d",&i,&j,&k);
B)scanf("%d%d%d",&i,&j,&k);
C)scanf("%d,%d,%d",&i,&j,&k);
D)scanf("i=%d,j=%d,k=%d",&i,&j,&k);
你所选择的答案是:
*,正确答案是:
C×
12.有以下程序
floatfun(intx,inty)
{return(x+y);}
main()
{inta=2,b=5,c=8;
printf("%3.0f\n",fun(int)fun(a+c,b),a-c));
}
程序运行后的输出结果是
A)编译出错
B)9
C)21
D)9.0
你所选择的答案是:
*,正确答案是:
B×
13.有以下程序
intf(intn)
{if(n==1)return1;
elsereturnf(n-1)+1;
}
main()
{inti,j=0;
for(i=i;i<3;i++)j+=f(i);
printf("%d\n",j);
}
程序运行后的输出结果是
A)4
B)3
C)2
D)1
你所选择的答案是:
*,正确答案是:
B×
14.有以下程序
main()
{chara[]={'a','b','c','d','e','f','g','h','\0'};inti,j;
i=sizeof(a);j=strlen(a);
printf("%d,%d\b"i,j);
}
程序运行后的输出结果是
A)9,9
B)8,9
C)1,8
D)9,8
你所选择的答案是:
*,正确答案是:
D×
15.以下程序中函数reverse的功能是将a所指数组中的内容进行逆置。
voidreverse(inta[],intn)
{inti,t;
for(i=0;i
{t=a[i];a[i]=a[n-1-i];a[n-1-i]=t;}
}
main()
{intb[10]={1,2,3,4,5,6,7,8,9,10};inti,s=0;
reverse(b,8);
for(i=6;i<10;i++)s+=b[i];
printf("%d\n",s);
}
程序运行后的输出结果是
A)22
B)10
C)34
D)30
你所选择的答案是:
*,正确答案是:
A×
16.有以下程序
structSTU
{charnum[10];floatscore[3];};
main()
{structstus[3]={{"20021",90,95,85},
{"20022",95,80,75},
{"20023",100,95,90}},*p=s;
inti;floatsum=0;
for(i=0;i<3,i++)
sum=sum+p->score[i];
printf("%6.2f\n",sum);
}
程序运行后的输出结果是
A)260.00
B)270.00
C)280.00
D)285.00
你所选择的答案是:
*,正确答案是:
B×
17.若有以下程序段
intm=0xabc,n=0xabc;
m-=n;
printf("%X\n",m);
执行后输出结果是( )。
A)0X0
B)0x0
C)0
D)0XABC
你所选择的答案是:
*,正确答案是:
C×
18.有以下程序
main()
{inti;
for(i=0;i<3;i++)
switch(i)
{case1:
printf("%d",i);
case2:
printf("%d",i);
default:
printf("%d",i);
}
}
执行后输出结果是( )。
A)011122
B)012
C)012020
D)120
你所选择的答案是:
*,正确答案是:
A×
19.有以下程序
main()
{inta=5,b=4,c=3,d=2;
if(a>b>c)
printf("%d\n",d);
elseif((c-1>=d)==1)
printf("%d\n",d+1);
else
printf("%d\n",d+2)
}
执行后输出结果是( )。
A)2
B)3
C)4
D)编译时有错,无结果
你所选择的答案是:
*,正确答案是:
B×
20.有以下程序
main()
{inti=0,s=0;
do{
if(i%2){i++;continue;}
i++;
s+=i;
}while(i<7);
printf("%d\n",s);
}
执行后输出结果是( )。
A)16
B)12
C)28
D)21
你所选择的答案是:
*,正确答案是:
A×
21.有以下程序
main()
{inti=10,j=1;
printf("%d,%d\n",i--,++j);
}
执行后输出结果是( )。
A)9,2
B)10,2
C)9,1
D)10,1
你所选择的答案是:
*,正确答案是:
B×
22.有以下程序
main()
{intx[8]={8,7,6,5,0,0},*s;
s=x+3
printf("%d\n",s[2]);
}
执行后输出结果是( )。
A)随机值
B)0
C)5
D)6
你所选择的答案是:
*,正确答案是:
B×
23.设有如下程序段:
intx=2002,y=2003;
printf("%d\n",(x,y));
则以下叙述中正确的是( )。
A)输出语句中格式说明符的个数少于输出项的个数,不能正确输出
B)运行时产生出错信息
C)输出值为2002
D)输出值为2003
你所选择的答案是:
*,正确答案是:
D×
24.有以下程序
main()
{ints=0,a=1,n;
scanf("%d",&n);
do
{s+=1;a=a-2;}
while(a!
=n);
printf("%d\n",s);
}
若要使程序的输出值为2,则应该从键盘给n输入的值是( )。
A)-1
B)-3
C)-5
D)0
你所选择的答案是:
*,正确答案是:
B×
25.有以下程序
structs
{intx,y;}data[2]={10,100,20,200};
main()
{structs*p=data;
printf("%d\n",++(p->x));
}
程序运行后的输出结果是( )。
A)10
B)11
C)20
D)21
你所选择的答案是:
*,正确答案是:
B×
26.有以下程序
main()
{inti,n=0;
for(i=2;i<5;i++)
{do
{if(i%3)continue;
n++;
}while(!
i);
n++;
}
printf(“n=%d\n”,n);
}
程序执行后的输出结果是( )。
A)n=5 B)n=2 C)n=3 D)n=4
你所选择的答案是:
*,正确答案是:
D×
27.若程序中定义了以下函数
doublemyadd(doublea,doubleB)
{return(a+B);}
并将其放在调用语句之后,则在调用之前应该对该函数进行说明,以下选项中错误的说明是( )。
A)doublemyadd(doublea,B);
B)doublemyadd(double,double);
C)doublemyadd(doubleb,doubleA);
D)doublemyadd(doublex,doubley);
你所选择的答案是
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C语言试题 语言 试题