福建省c语言考试试题c题库选择题答案0608精品版Word下载.docx
《福建省c语言考试试题c题库选择题答案0608精品版Word下载.docx》由会员分享,可在线阅读,更多相关《福建省c语言考试试题c题库选择题答案0608精品版Word下载.docx(44页珍藏版)》请在冰豆网上搜索。
C)scanf(“%c”,&
D)scanf(“%u”,&
5、下面叙述中,(A)不是结构化程序设计三种基本结构的共同特点。
A)先判断后执行B)单入口,单出口
C)程序中没有执行不到的语句D)无死循环
6、已知inta=3,b=5;
则表达式a&
&
!
b的值为(C)。
A)3B)2C)0D)1
7、已知chara=’R’;
则正确的赋值表达式是(A)。
A)a=(a++)%4B)a+2=3C)a+=256--D)a=’\078’
8、以下的语句中,无内嵌的if语句是(B)。
A)if(x==y)x+=y;
B)if(x>
y&
x!
=y);
x+=y;
C)if(x!
=y)
scanf(“%d”,&
x);
else
scanf(“%d”,&
y);
D)if(x<
y)
{x++;
y++;
}
9、设有整型变量x,下述语句(B)不会出现死循环。
A)for(;
;
x+=1)B)for(;
(x=getchar())!
=’\n’;
);
C)while
(1){x++;
}D)for(x=10;
x--);
10、下列数组声明中,正确的是(A)。
A)inta[5]={0};
B)inta[]={012};
C)inta[5]=0;
D)inta[];
11、以下数组定义中,正确的是(D)。
A)inta[2][3]={1,2,3,4,5,6,7};
B)inta[][]={{1,2,3},{4,5,6},{7,8,9}};
C)inta[2][]={1,2,3,4,5,6};
D)inta[][4]={6};
12、设有如下数组定义:
charstr[8]={“FuJian”};
则分配给数组str的存储空间是(C)字节。
A)6B)7C)8D)9
13、以下程序的运行结果是(A)。
intfun(intarray[4][4])
{intj;
for(j=0;
j<
4;
j++)printf(“%2d”,array[2][j]);
printf(“\n”);
main()
{inta[4][4]={0,1,2,0,1,0,0,4,2,0,0,5,0,4,5,0};
fun(a);
A)2005B)1004
C)0120D)0450
14、若有以下宏定义,
#defineMOD(x,y)x%y
则执行以下程序段后,z的值是(D)。
intz,a=15,b=100;
z=MOD(b,a);
A)100B)15
C)11D)10
15、对于基类型相同的两个指针变量之间,不能进行的运算是(C)。
A)<
B)=
C)+D)-
16、若函数fun的函数头为:
intfun(inti,intj)
且函数指针变量p定义如下:
int(*p)(inti,intj);
则要使指针p指向函数fun的赋值语句是(B)。
A)p=*fun();
B)p=fun;
C)p=fun(i,j);
D)p=&
fun;
17、设有以下定义语句:
structstudent
{intnum;
charname[10];
floatscore;
}wang,zhang;
则不正确的叙述是(C)。
A)struct是结构体类型的关键字B)zhang是结构体变量名
C)wang是结构体类型名D)num,name,score都是结构体类型student的成员名
18、若有以下定义:
structlink
{intdata;
structlink*next;
}*head,*p;
并已建立如下图所示的链表结构:
head
指针p指向如下结点:
p
则能够把p所指结点插入到链表中成为链表第2个结点的程序段是(A)。
A)p->
next=head->
next;
head->
next=p;
B)head->
p->
C)p.next=head.next;
head.next=p;
D)(*head).next=p;
(*p).next=(*head).next;
19、设有如下定义:
typedefint*INTEGER;
INTEGERp,*q;
则(C)是正确的叙述。
A)p是int型变量B)q是基类型为int的指针变量
C)p是基类型为int的指针变量D)程序中可用INTEGER代替int类型名
20、以下程序的可执行文件名是file.exe。
intargc;
char*argv[];
{inti;
for(i=2;
i<
argc;
i++)
printf(“%s%c”,argv[i],(i<
argc-1)?
’‘:
‘\n’);
在DOS命令行输入:
fileMyCLanguageandProgramming<
回车>
,其输出结果是(A)。
A)CLanguageandProgrammingB)MyCLanguageandProgramming
C)MyCLanguageandProgrammingD)fileMyCLanguageandProgramming
21、在C语言源程序中,以下叙述正确的是(C)。
A)main函数必须位于文件的开头B)每行只能写一条语句
C)程序中的一个语句可以写成多行D)每个语句的最后必须有点号
22、下面关于算术运算符的叙述,错误的是(A)。
A)其运算对象不包含函数
B)%(模运算符)的运算对象只能为整型量
C)算术运算符的结合方向是“自左至右”
D)自加和自减运算符的结合方向是“自右至左”
23、下面叙述中,(A)不是结构化程序设计中的三种基本结构之一。
A)数据结构B)选择结构
C)循环结构D)顺序结构
24、已知doublea=5.2;
A)a+=a-=(a=4)*(a=3)B)a=a*3=2
C)a%3D)a=double(-3)
25、逻辑运算符的优先级依次为(C)。
A)||&
B)&
||!
C)!
&
||D)!
||&
26、对于整型变量x,与while(!
x)等价的是(B)。
A)while(x!
=0)B)while(x==0)
C)while(x!
=1)D)while(~x)
27、下列数组声明中,正确的是(A)。
A)inta[10];
B)intn=10,a[n];
C)intN=10;
inta[N];
D)intn;
n);
inta[n];
28、有如下定义:
charstr[6]={‘a’,’b’,’\0’,’d’,’e’,’f’};
则语句:
printf(“%s”,str);
的输出结果是(D)。
A)ab\B)abdef
C)ab\0D)ab
29、执行以下程序段的输出结果是(B)。
inta=10,*p=&
a;
printf(“%d”,++*p);
A)10B)11
C)变量a的地址D)变量a的地址+1
30、若有以下程序段,且0≤i<
4,0≤j<
3,则不能正确访问a数组元素的是(D)。
inti,j,(*p)[3];
inta[][3]={1,2,3,4,5,6,7,8,9,10,11,12};
p=a;
A)*(*(a+i)+j)B)p[i][j]
C)*(p+i)[j]D)p[i]+j
31、若有以下定义:
structlink*next;
则能保留链表其它结点,而删除P所指向结点的程序段是(A)。
A)head->
next=p->
free(p)
free(p);
C)free(p);
D)free(p);
32、假定已有如下变量说明和枚举定义:
charch;
intj,k;
enumday{sun,mon,tue,wed,thu,fri,sat};
inta[sat]
判断下列语句是否符合语法规则,结果是(C)。
chara;
/*语句1*/
j+k=j;
/*语句2*/
if(a[mon]>
0)j++;
/*语句3*/
A)语句2错误,其它正确B)语句1正确,其它错误
C)语句3正确,其它错误D)语句1错误,其它正确
33、以下(D)是正确的常量。
A)E-5B)1E5.1
C)’a12’D)32766L
34、标准函数fgets(s,n,f)的功能是(B)。
A)从文件f中读取长度为n的字符串存入指针s所指的内存
B)从文件f中读取长度不超过n-1的字符串存入指针s所指的内存
C)从文件f中读取n个字符串存入指针s所指的内存
D)从文件f中读取长度为n-1的字符串存入指针s所指的内存
35、关于C语言的源程序的叙述中,错误的是(C)。
A)C语言的源程序由函数构成
B)main函数可以书写在自定义函数之后
C)必须包含有输入语句
D)一行可以书写多个语句
36、下面叙述正确的是(A)。
A)强制类型转换运算的优先级高于算术运算
B)若a和b是整型变量,(a+b)++是合法的
C)’A’*’B’是不合法的
D)”A”+”B”是合法的
37、设有以下语句,则(D)是对a数组元素的不正确引用,其中0≤i<
10。
inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a;
A)a[p-a]B)*(&
a[i])
C)p[i]D)*(*(