选择题.docx
《选择题.docx》由会员分享,可在线阅读,更多相关《选择题.docx(128页珍藏版)》请在冰豆网上搜索。
选择题
第1题(1.0分)题号:
513
inta[10];合法的数组元素的最小下标值为()。
A:
10
B:
9
C:
1
D:
0
答案:
D
第2题(1.0分)题号:
681
以下运算符中优先级最低的是()。
A:
&&
B:
&
C:
||
D:
|
答案:
C
第3题(1.0分)题号:
187
经过下列的语句intj,a[10],*p;定义后,下列语句中合法的是()。
A:
p=p+2;
B:
p=a[5];
C:
p=a[2]+2;
D:
p=&(j+2);
答案:
A
第4题(1.0分)题号:
640
以下对二维数组a的正确说明是()。
A:
inta[3][]
B:
floata(3,4)
C:
doublea[1][4]
D:
floata(3)(4)
答案:
C
第5题(1.0分)题号:
684
在C语言中,要求运算数必须是整型的运算符是()。
A:
^
B:
%
C:
!
D:
>
答案:
B
第6题(1.0分)题号:
654
以下不能正确定义二维数组的选项是()。
A:
inta[2][2]={{1},{2}};
B:
inta[][2]={1,2,3,4};
C:
inta[2][2]={{1},2,3};
D:
inta[2][]={{1,2},{3,4}};
答案:
D
第7题(1.0分)题号:
742
若fp是指向某文件的指针,且已读到此文件末尾,则库函数feof(fp)
的返回值是()。
A:
EOF
B:
0
C:
非零值
D:
NULL
答案:
C
第8题(1.0分)题号:
108
设C语言中,int类型数据占2个字节,则short类型数据占()。
A:
1个字节
B:
2个字节
C:
4个字节
D:
8个字节
答案:
B
第9题(1.0分)题号:
489
下列标识符中,不合法的C语言用户自定义标识符是()。
A:
printf
B:
enum
C:
_
D:
sin
答案:
B
第10题(1.0分)题号:
646
若有说明inta[3][4];则a数组元素的非法引用是()。
A:
a[0][2*1]
B:
a[1][3]
C:
a[4-2][0]
D:
a[0][4]
答案:
D
第11题(1.0分)题号:
658
若使用一维数组名作函数实参,则以下正确的说法是()。
A:
必须在主调函数中说明此数组的大小
B:
实参数组类型与形参数组类型可以不匹配
C:
在被调用函数中,不需要考虑形参数组的大小
D:
实参数组名与形参数组名必须一致
答案:
A
第12题(1.0分)题号:
728
已知函数的调用形式:
fread(buffer,size,count,fp);其中buffer
代表的是()。
A:
一个整数,代表要读入的数据项总数
B:
一个文件指针,指向要读的文件
C:
一个指针,指向要读入数据的存放地址
D:
一个存储区,存放要读的数据项
答案:
C
第13题(1.0分)题号:
145
经下列语句定义后,sizeof(x),sizeof(y),sizeof(a),sizeof(b)在
微机上的值分别为()。
charx=65;
floaty=7.3;
inta=100;
doubleb=4.5;
A:
2,2,2,4
B:
1,2,2,4
C:
1,4,2,8
D:
2,4,2,8
答案:
C
第14题(1.0分)题号:
106
以下叙述中不正确的是()。
A:
一个好的程序应该有详尽的注释
B:
在C程序中,赋值运算符的优先级最低
C:
在C程序中,j++;是一条赋值语句
D:
C程序中的#include和#define均不是C语句
答案:
B
第15题(1.0分)题号:
594
设intx=1,y=1;表达式(!
x||y--)的值是()。
A:
0
B:
1
C:
2
D:
-1
答案:
B
第16题(1.0分)题号:
711
下列选项中正确的语句组是()。
A:
chars[8];s={"Beijing"};
B:
char*s;s={"Beijing"};
C:
chars[8];s="Beijing";
D:
char*s;s="Beijing";
答案:
D
第17题(1.0分)题号:
195
若有下列定义和语句,则对a数组元素的非法引用是()。
inta[2][3],(*pt)[3];pt=a;
A:
pt[0][0]
B:
*(pt+1)[2]
C:
*(pt[1]+2)
D:
*(a[0]+2
答案:
B
第18题(1.0分)题号:
612
语句while(!
E);中的表达式!
E等价于()。
A:
E==0
B:
E!
=1
C:
E!
=0
D:
E==1
答案:
A
第19题(1.0分)题号:
100
以下标识符中,不能作为合法的C用户定义标识符的是()。
A:
putchar
B:
_double
C:
_123
D:
INT
答案:
A
第20题(1.0分)题号:
715
若有说明:
inti,j=2,*p=&i;,则能完成i=j赋值功能的语句是()。
A:
i=*p;
B:
*p=*&j;
C:
i=&j;
D:
i=**p;
答案:
B
第21题(1.0分)题号:
633
对以下说明语句inta[10]={6,7,8,9,10};的正确理解是()。
A:
将5个初值依次赋给a[1]至a[5]
B:
将5个初值依次赋给a[0]至a[4]
C:
将5个初值依次赋给a[6]至a[10]
D:
因为数组长度与初值的个数不相同,所以此语句不正确
答案:
B
第22题(1.0分)题号:
431
下列程序的输出结果是()。
main()
{intx=1,y=0,a=0,b=0;
switch(x)
{
case1:
switch(y)
{
case0:
a++;break;
case1:
b++;break;
}
case2:
a++;b++;break;
case3:
a++;b++;break;
}
printf("a=%d,b=%d\n",a,b);
}
A:
a=1,b=0
B:
a=2,b=1
C:
a=1,b=1
D:
a=2,b=2
答案:
B
第23题(1.0分)题号:
552
应用缓冲文件系统对文件进行读写操作,关闭文件的函数名为()。
A:
fclose()
B:
close()
C:
fread()
D:
fwrite
答案:
A
第24题(1.0分)题号:
556
staticstruct{inta1;floata2;chara3;}a[10]={1,3.5,'A'};
说明数组a是地址常量,它有10个结构体型的下标变量,采用静态存
储方式,其中被初始化的下标变量是()。
A:
a[1]
B:
a[-1]
C:
a[0]
D:
a[10]
答案:
C
第25题(1.0分)题号:
543
若有inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a;则输出结果不为5
的语句为()。
A:
printf("%d",*(a+5));
B:
printf("%d",p[5]);
C:
printf("%d",*(p+5));
D:
printf("%d",*p[5]);
答案:
D
第26题(1.0分)题号:
580
设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的
数据类型为()。
A:
int
B:
float
C:
double
D:
不确定
答案:
C
第27题(1.0分)题号:
199
若有inta[][]={{1,2},{3,4}};则*(a+1),*(*a+1)的含义分别为()。
A:
非法,2
B:
&a[1][0],2
C:
&a[0][1],3
D:
a[0][0],4
答案:
B
第28题(1.0分)题号:
148
C语言中要求对变量作强制定义的主要理由是()。
A:
便于移植
B:
便于写文件
C:
便于编辑预处理程序的处理
D:
便于确定类型和分配空间
答案:
D
第29题(1.0分)题号:
202
设有如下定义:
structsk{inta;floatb;}data,*p;
若要使p指向data中的a域,正确的赋值语句是()。
A:
p=(structsk*)&data.a;
B:
p=(structsk*)data.a;
C:
p=&data.a;
D:
*p=data.a;
答案:
A
第30题(1.0分)题号:
697
若x=2,y=3则x&y的结果是()。
A:
0
B:
2
C:
3
D:
5
答案:
B
第31题(1.0分)题号:
136
下列程序的输出结果为()。
main()
{intm=7,n=4;
floata=38.4,b=6.4,x;
x=m/2+n*a/b+1/2;
printf("%f\n",x);
}
A:
27.000000
B:
27.500000
C:
28.000000
D:
28.500000
答案:
A
第32题(1.0分)题号:
131
若k为int型变量,则以下程序段的执行结果是()。
k=-8567;printf("|%06D|\n",k);
A:
格式描述符不合法,输出无定值
B:
输出为|%06D|
C:
输出为|0-8567|
D:
输出为|-8567|
答案:
B
第33题(1.0分)题号:
523
函数的形式参数隐含的存储类型说明是()。
A:
extern
B:
static
C:
register
D:
auto
答案:
D
第34题(1.0分)题号:
550
不仅可将C源程序存在磁盘上,还可将数据按数据类型分别以什么的
形式存在磁盘上()。
A:
内存
B:
缓冲区
C:
文件
D:
寄存器
答案:
C
第35题(1.0分)题号:
571
以下叙述正确的是()。
A:
在C程序中,main函数必须位于程序的最前面
B:
C程序的每行中只能写一条语句
C:
C语言本身没有输入输出语句
D:
在对一个C程序进行编译的过程中,可发现注释中的拼写错误
答案:
C
第36题(1.0分)题号:
509
inta=1,b=2,c=3;
if(a>b)a=b;
if(a>c)a=c;
则a的值为()。
A:
1
B:
2
C:
3
D:
不一定
答案:
A
第37题(1.0分)题号:
693
以下各选项企图说明一种新的类型名,其中正确的是()。
A:
typedefv1int;
B:
typedefv2=int;
C:
typedefintv3;
D:
typedefv4:
int;
答案:
C
第38题(1.0分)题号:
151
以下程序的运行结果是()。
main()
{
inti=1,sum=0;
while(i<10)sum=sum+1;i++;
printf("i=%d,sum=%d",i,sum);
}
A:
i=10,sum=9
B:
i=9,sum=9
C:
i=2,sum=1
D:
运行出现错误
答案:
D
第39题(1.0分)题号:
94
在C语言中,能代表逻辑值“真”的是()。
A:
True
B:
大于0的数
C:
非0整数
D:
非0的数
答案:
D
第40题(1.0分)题号:
632
以下叙述正确的是()。
A:
do-while语句构成的循环不能用其它语句构成的循环来代替.
B:
do-while语句构成的循环只能用break语句退出.
C:
用do-while语句构成的循环,在while后的表达式为非零时结束循环.
D:
用do-while语句构成的循环,在while后的表达式为零时结束循环
答案:
D
第41题(1.0分)题号:
500
下列程序段的输出结果为()。
intx=3,y=2;
printf("%d",(x-=y,x*=y+8/5));
A:
1
B:
7
C:
3
D:
5
答案:
C
第42题(1.0分)题号:
518
chara[]="Thisisaprogram.";输出前5个字符的语句是()。
A:
printf("%.5s",a);
B:
puts(a);
C:
printf("%s",a);
D:
a[5*2]=0;puts(a);
答案:
A
第43题(1.0分)题号:
669
若用数组名作为函数的实参,传递给形参的是()。
A:
数组的首地址
B:
数组第一个元素的值
C:
数组中全部元素的值
D:
数组元素的个数
答案:
A
第44题(1.0分)题号:
496
doublex;scanf("%lf",&x);不可以赋值给x变量的常量是()。
A:
123
B:
100000
C:
A'
D:
"abc"
答案:
D
第45题(1.0分)题号:
531
C语言中,定义结构体的保留字是()。
A:
union
B:
struct
C:
enum
D:
typedef
答案:
B
第46题(1.0分)题号:
630
逻辑运算符两侧运算对象的数据类型()。
A:
只能是0或1
B:
只能是0或非0正数
C:
只能是整型或字符型数据
D:
可以是任何类型的数据
答案:
D
第47题(1.0分)题号:
708
下面判断正确的是()。
A:
char*a="china";等价于char*a;*a="china";
B:
charstr[10]={"china"};等价于charstr[10];str[]={"china"};
C:
char*s="china";等价于char*s;s="china";
D:
charc[4]="abc",d[4]="abc";等价于charc[4]=d[4]="abc";
答案:
C
第48题(1.0分)题号:
206
以下程序的输出结果是()。
main()
{chars[]="123",*p;
p=s;
printf("%c%c%c\n",*p++,*p++,*p++);
}
A:
123
B:
321
C:
213
D:
312
答案:
B
第49题(1.0分)题号:
579
在C语言中,char型数据在内存中的存储形式是()。
A:
补码
B:
反码
C:
原码
D:
ASCII码
答案:
D
第50题(1.0分)题号:
211
fgets(str,n,fp)函数从文件中读入一个字符串,以下正确的叙述是()。
A:
字符串读入后不会自动加入'\0'
B:
fp是file类型的指针
C:
fgets函数将从文件中最多读入n-1个字符
D:
fgets函数将从文件中最多读入n个字符
答案:
C
第51题(1.0分)题号:
112
下列程序的输出结果是()。
main()
{charc1=97,c2=98;
printf("%d%c",c1,c2);
}
A:
9798
B:
97b
C:
a98
D:
ab
答案:
B
第52题(1.0分)题号:
586
以下选项中合法的实型常数是()。
A:
5E2.0
B:
E-3
C:
.2E0
D:
1.3E
答案:
C
第53题(1.0分)题号:
92
以下的选择中,正确的赋值语句是()。
A:
a=1,b=2
B:
j++
C:
a=b=5;
D:
y=int(x)
答案:
C
第54题(1.0分)题号:
740
若要打开A盘上user子目录下名为abc.txt的文本文件进行读、写操作,
下面符合此要求的函数调用是()。
A:
fopen("A:
\user\abc.txt","r")
B:
fopen("A:
\\user\\abc.txt","r+")
C:
fopen("A:
\user\abc.txt","rb")
D:
fopen("A:
\\user\\abc.txt","w")
答案:
B
第55题(1.0分)题号:
565
以下叙述中正确的是()。
A:
C语言的源程序不必通过编译就可以直接运行
B:
C语言中的每条可执行语句最终都将被转换成二进制的机器指令
C:
C源程序经编译形成的二进制代码可以直接运行
D:
C语言中的函数不可以单独进行编译
答案:
B
第56题(1.0分)题号:
157
下列程序的输出结果是()。
main()
{intx=1,y=0,a=0,b=0;
switch(x)
{
case1:
switch(y)
{
case0:
a++;break;
case1:
b++;break;
}
case2:
a++;b++;break;
case3:
a++;b++;break;
}
printf("a=%d,b=%d\n",a,b);
}
A:
a=1,b=0
B:
a=2,b=1
C:
a=1,b=1
D:
a=2,b=2
答案:
B
第57题(1.0分)题号:
558
inta[10]={1,2,3,4,5,6,7,8};int*p;p=&a[5];p[-3]的值是()。
A:
2
B:
3
C:
4
D:
不一定
答案:
B
第58题(1.0分)题号:
178
以下对C语言函数的描述中,正确的是()。
A:
C程序必须由一个或一个以上的函数组成
B:
C函数既可以嵌套定义又可以递归调用
C:
函数必须有返回值,否则不能使用函数
D:
C程序中有调用关系的所有函数必须放在同一个程序文件中
答案:
A
第59题(1.0分)题号:
210
在位运算中,操作数每右移一位,其结果相当于()。
A:
操作数乘以2
B:
操作数除以2
C:
操作数乘以16
D:
操作数除以16
答案:
B
第60题(1.0分)题号:
674
以下错误的描述是:
函数调用可以()。
A:
出现在执行语句中
B:
出现在一个表达式中
C:
做为一个函数的实参
D:
做为一个函数的形参
答案:
D
第61题(1.0分)题号:
212
C语言中的文件类型只有()。
A:
索引文件和文本文件两种
B:
ASCII文件和二进制文件两种
C:
文本文件一种
D:
二进制文件一种
答案:
B
第62题(1.0分)题号:
570
以下叙述不正确的是()。
A:
一个C源程序可由一个或多个函数组成
B:
一个C源程序必须包含一个main函数
C:
C程序的基本组成单位是函数
D:
在C程序中,注释说明只能位于一条语句的后面
答案:
D
第63题(1.0分)题号:
524
与实际参数为实型数组名相对应的形式参数不可以定义为()。
A:
floata[];
B:
float*a;
C:
floata;
D:
float(*a)[3];
答案:
C
第64题(1.0分)题号:
659
凡是函数中未指定存储类别的局部变量,其隐含的存储类别为()。
A:
自动(auto)
B:
静态(static)
C:
外部(extern)
D:
寄存器(register)
答案:
A
第65题(1.0分)题号:
636
若二维数组a有m列,则在a[i][j]前的元素个数为()。
A:
j*m+i
B:
i*m+j
C:
i*m+j-1
D:
i*m+j+1
答案:
B
第66题(1.0分)题号:
146
用下列语句定义a,b,c,然后执行b=a、c='b'+b,则b,c的值是()。
longa=0xffffff;
intb;charc;
A:
0ffffff和0x61
B:
-1和98
C:
-1和97
D:
指向同一地址
答案:
C
第67题(1.0分)题号:
584
设有说明:
charw;intx;floaty;doublez;则表达式w*x+z-y
值的数据类型为()。
A:
float
B:
char
C:
int
D:
double
答案:
D
第68题(1.0分)题号:
105
以下运算符中,优先级最高的运算符是()。
A:
=
B:
!
=
C:
*(乘号)
D:
()
答案:
D
第69题(1.0分)题号:
704
变量的指针,其含义是指该变量的()。
A:
值
B:
地址
C:
名
D:
一个标志
答案:
B
第70题(1.0分)题号:
676
以下只有在使用时才为该类型变量分配内存的存储类说明是()。
A:
auto和static
B:
auto和register
C:
register和static
D:
extern和register
答案:
B
第71题(1.0分)题号:
104
以下运算符中,优先级最高的运算符是()。
A:
||
B:
%
C:
!
D:
==
答案:
C
第72题(1.0分)题号:
504
执行以下程序段后,输出结果和a的值是()。
inta=10;
printf("%d",a++);
A:
10和10
B:
10和11
C:
11和10
D:
11和11
答案:
B
第73题(1.0分)题号:
613
下面有关for循环的正确描述是()。
A:
for循环只能用于循环次数已经确定的情况
B:
for循环是先执行循环循环体语句,后判断表达式
C:
在for循环中,不能用break语句跳出循环体
D:
for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来
答案:
D
第74题(1.0分)题号:
116
下列语句的结果是()。
main()
{intj;
j=3;
printf("%d,",++j);
printf("%d",j++);
}
A:
3,3
B:
3,4
C:
4,3
D:
4,4
答案:
D
第75题(1.0分)题号:
680
在调用函数时,如果实参是简单变量,它与对应形参之间的数据
传递方式是()。
A:
地址传递
B:
单向值传递
C:
由实参传给形参,再由形参传回实参
D:
传递方式由用户指定
答案:
B
第76题(1.0分)题号:
91
以下数值中,不正确的八进制数或十六进制数是()。
A:
0x16
B:
16
C:
-16
D:
0xaaaa
答案:
C
第77题(1.0分)题号:
541
若有inti=3,*p;p=&i;下列语句中输出结果为3的是()。
A:
printf("%d",&p);
B:
printf("%d",*i);
C:
printf("%d",*p);
D:
printf("%d",p);
答案:
C
第78题(1.0分)题号:
503
以下语句中,不能实现回车换行的是()。
A:
printf("\n");
B:
putchar("\n");
C:
fprintf(stdout,"\n");
D:
fwrite("\n",1,1,stdout);
答案:
B
第79题(1.0分)题号:
720
函数rewind的作用是()。
A:
使位置指针重新返回文件的开头
B:
将位置指针指向文件中所要求的特定位置
C:
使位置指针指向文件的末尾
D:
使位置指针自动移至下一个字符位置
答案:
A
第80题(1.0分)题号:
732
若执行fopen函数时发生错误,则函数的返回值是()。
A:
地址值
B:
0
C:
1
D:
EOF
答案:
B
第81题(1.0分)题号:
592
能正确表示逻辑关系:
"a≥10或a≤0"的C语言表达式是()。
A:
a>=