C程序设计基础题.docx
《C程序设计基础题.docx》由会员分享,可在线阅读,更多相关《C程序设计基础题.docx(13页珍藏版)》请在冰豆网上搜索。
C程序设计基础题
选择题:
1.若x、i、j、k都是int型变量,则计算下面表达式后,x的值为()
x=(i=4,j=16,k=32).(C程序设计)
A)4B)16C)32D)52
2.一个C程序的执行是从().(C程序设计)
A)本程序的main函数开始,到main函数结束
B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束
C)本程序文件的第一个函数开始,到本程序main函数结束
D)本程序的main函数开始,到本程序文件的最后一个函数结束
3.以下合法的变量名称().(C程序设计)
A)Tel_numB)8678C)D)float
4.已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2=‘A’+‘6’-‘3’后,以%d形式输出c2,则结果为:
()(C程序设计)
A)DB)68C)不确定的值D)C
5.已知字母A的ASCII值为65,以下C语言程序的输出的结果是:
().(C程序设计)
charc1='A',c2='D';
printf("%c,%d\n",c1,c2);
A)因输出格式不合法,输出错误信息B)A,68
C)A,DD)65,68
6.以下程序的运行结果是().(C程序设计)
main()
{inta,b,d=241;
a=d/100%9;
b=(-1)&&(-1);
printf(“%d,%d”,a,b);
}
A)6,1B)2,1C)6,0D)2,0
7.下面的程序段,输出结果是:
().(C程序设计)
inta=3,b=4,c;
c=(a>b)a+2:
b+3;
printf(“%d”,c);
A)7B)3C)4D)5
8.已知ch是字符型变量,下面不正确的赋值语句是().(C程序设计)
A)ch=‘a+b’;B)ch=‘\0’;C)ch=‘7’+‘9’;D)ch=5+9;
9.判断char型变量ch是否为大写字母的正确表达式是().(C程序设计)
A)‘A’<=ch<=‘Z’B)(ch>=‘A’)&(ch<=‘Z’)
C)(ch>=‘A’)&&(ch<=‘Z’)D)(‘A’<=ch)AND(‘Z’>=ch)
10.读下面的程序段,输出结果是().(C程序设计)
intaa=2;
aa*=2;
b=aa++;
printf(“%d”,b);
A)3B)4C)5D)6
11.读程序,分析下面的程序将输出()次“我爱中国”.(C程序设计)
inti;
for(i=1;i<5;i--)
{printf(“我爱中国\n”);}
A)1
B)4
C)0
D)无限次
12.inti;i=sizeof(float)的结果是().(C程序设计)
A)4B)3C)2D)1
13.以下程序段,运行结果为().(C程序设计)
x=-1;
for(;;)
{
x=x*x;
if(x!
=1)
{break;}
}
A)是死循环B)循环执行二次
C)循环执行一次D)有语法错误
14.下面程序的运行结果是().(C程序设计)
#include<>
main()
{
intnum=0;
while(num<=2)
{
num++;
printf("%d\n",num);
}
}
a)1b)1c)1d)1
222
33
4
15.若执行下面的程序时从键盘上输入3和4,则输出结果是().(C程序设计)
inta,b,s
scanf(“%d%d”,&a,&b);
s=a;
if(a
s=b;
s=s*s;
printf(“%d”,s);
A)14B)16C)18D)20
16.下列代码的输出结果是().(C程序设计)
inti,j=0;
for(i=1;i<10;i++)
{
if(i%4?
!
=0)
{
j+=i;
}
}
printf(“%d,%d”,i,j);
A)10,33B)3,6C)D)4,10
17.运行下列代码后s的值为().(C程序设计)
inti,s=0;
for(i=0;i<3;i++)
{
switch(i)
{
case1:
s+=i;
case2:
s+=i;
default:
s+=i;
}
Printf(“%d”,s);
}
A)7B)6C)8D)9
18.下列代码的输出结果是().(C程序设计)
inti;
intbookNum=4;
inttotalPrice=0;
intbookPrice[4]={10,20,30,40};
for(i=0;i<4;i+=2)
{
totalPrice+=bookPrice[i];
}
printf(“%d”,totalPrice);
A)30B)40C)60D)100
19.以下程序的输出结果是().(C程序设计)
main()
{intx=2,y=1,z=2;
if(xif(y<0)z=0;
elsez+=1;
printf(“%d\n”,z);
}
A)3B)0C)2D)1
20.C语言中的运算对象必须是整型的运算符是().(C程序设计)
A)%B)/C)=D)<=
21.若变量已经正确定义并赋值,下面符合C语言语法的表达式是()。
A)a:
=b+1B)a=b=c+2C)int%3D)a=a+7=c+b
22.以下程序的运行结果是().(C程序设计)
main()
{
inti=10;
printf(“dec=%doct=%ohex=%x\n”,i,i,i);}
A)dec=10oct=10hex=10B)dec=10oct=12hex=10C)dec=10oct=10hex=aD)dec=10oct=12hex=a
23.有如下程序,运行结果为().(C程序设计)
main()
{inty=3,x=3,z=1;
printf("%d%d\n",(++x,y++),z+2);}
输出结果为:
A)34B)42C)43D)33
24以下程序的运行结果是().(C程序设计)
#include“”
main()
{chara[11],b[10];
scanf(“%s%s”,a,b);
strcat(a,b);
printf(“a+b=%s\n”,a);}
输入:
listpack
A)listpackB)listpackC)listD)packlist
25.以下程序的运行结果是().(C程序设计)
main()
{intx=2,y=5;
replace(x,y);
printf("x=%d,y=%d\n",x,y);
getch();}
replace(inta,intb)
{intt;
t=a;a=b;b=t;
printf("a=%d,b=%d\n",a,b);
}
A)a=2,b=5B)a=2,b=5C)a=5,b=2D)a=5,b=2
x=2,y=5x=5,y=2x=2,y=5x=5,y=2
26.以下程序的运行结果是().(C程序设计)
main()
{intx=1,a=0,b=0;
switch(x){
case0:
b++;
case1:
a++;
case2:
a++;b++;}
printf("a=%d,b=%d\n",a,b);}
A)a=1,b=0B)a=2,b=1C)a=0,b=0D)a=1,b=1
27.以下程序的运行结果是()。
inta;
voidf(void)
{a=3;}
main()
{a=1;
printf(“a=%d\n”,a);
f();
printf(“a=%d\n”,a);}
A)a=1B)a=1C)a=3D)a=3
a=3a=1a=1a=3
28.以下程序的运行结果是().(C程序设计)
intpower(intn)
{staticintf=1;
f=f*n;
return(f);}
main()
{inti,n=3;
for(i=1;i<=3;i++)
printf("%d",power(n));
}
A)333B)123C)3927D)111
29.有以下程序,若输入3,输出结果为().(C程序设计)
main()
{intn,i=-1;
scanf("%d",&n);
if(n>0){
inti;
for(i=0;iprintf("i=%d\n",i);
}
A)i=3B)i=0C)i=4D)i=-1
30.有以下程序,执行后的输出结果是().(C程序设计)
voidmain()
{inta=1,b=3,c=5;
int*p1=&a,*p2=&b,*p=&c;
*p=*p1*(*p2);
printf("%d\n",c);
}
A)1B)2C)3D)4
31.有以下程序,执行后的输出结果是().(C程序设计)
#include<>
voidmain()
{inti,s=0,t[]={l,2,3,4,5,6,7,8,9};
for(i=0;i<9;i+=2)s+=*(t+i);
printf("%d\n",s);
}
A)45B)20C)25D)36
32.有以下程序,执行后的输出结果是().(C程序设计)
#include<>
voidswap(char*x,char*y)
{chart;
t=*x;
*x=*y;
*y=t;
}
voidmain()
{char*s1="abc",*s2="123";
swap(s1,s2);
printf("%s,%s\n",s1,s2);
}
A)123,abcB)abc,123C)1bc,a23D)321,cba
33.有以下程序,执行后的输出结果是().(C程序设计)
#include<>
voidf(int*q)
{inti=0;
for(;i<5;i++)(*q)++;
}
voidmain()
{inta[5]={1,2,3,4,5},i;
f(a);
for(i=0;i<5;i++)printf("%d,",a[i]);
}
A)2,2,3,4,5,B)6,2,3,4,5,C)1,2,3,4,5,D)2,3,4,5,6,
34.若有定义:
inta[5];则a数组中首元素的地址可以表示为().(C程序设计)
A)&aB)a+1C)aD)&a[1]
35.若有以下定义:
(C程序设计)
inta[10],*p=a;
则*(p+5)表示()。
A)元素a[5]的地址B)元素a[6]的值
C)元素a[6]的地址D)元素a[5]的值
36.下面程序段的运行结果是().(C程序设计)
charstr[]="ABC",*p=str;
printf("%d\n",*(p+3));
A)67B)0C)字符'C'的地址D)字符'C'
37.有以下程序,程序运行后的输出结果是().(C程序设计)
#include<>
voidmain()
{charch[]=“uvwxyz”,*pc;
pc=ch;printf("%c\n",*(pc+5));
}
A)zB)0C)元素ch[5]的地址D)字符y的地址
38.有下面的程序段,输出结果为().(C程序设计)
chara[3],b[]="China";
a=b;
printf("%s",a);
A)运行后将输出ChinaB)运行后将输出Ch
C)运行后将输出ChiD)编译出错
39.有以下程序,程序运行后的输出结果是().(C程序设计)
#include<>
#include<>
voidmain()
{harp[20]={'a','b','c','d'},q[]="abc",r[]="abcde";
strcpy(p+strlen(q),r);strcat(p,q);
printf("%d%d\n",sizeof(p),strlen(p));
}
A)209B)99C)2011D)1111
40.有以下程序,程序运行后的输出结果是().(C程序设计)
#include<>
voidchange(intk[]){k[0]=k[5];}
voidmain()
{intx[10]={1,2,3,4,5,6,7,8,9,10},n=0;
while(n<=4){change(&x[n]);n++;}
for(n=0;n<5;n++)printf("%d",x[n]);
printf("\n");
}
A)678910B)13579C)12345D)62345
41.有以下程序,若运行时输入:
246<回车>,则输出结果为().(C程序设计)
#include<>
voidmain()
{intx[3][2]={0},i;
for(i=0;i<3;i++)scanf("%d",x[i]);
printf("%3d%3d%3d",x[0][0],x[0][1],x[1][0]);
}
A)200B)204C)240D)246
42.若有定义:
intw[3][5];,则以下不能正确表示该数组元素的表达式是().(C程序设计)
A)*(*w+3)B)*(w+1)[4]C)*(*(w+1))D)*(&w[0][0]+1)