C语言单选题库.docx

上传人:b****1 文档编号:1246179 上传时间:2023-04-30 格式:DOCX 页数:95 大小:44.26KB
下载 相关 举报
C语言单选题库.docx_第1页
第1页 / 共95页
C语言单选题库.docx_第2页
第2页 / 共95页
C语言单选题库.docx_第3页
第3页 / 共95页
C语言单选题库.docx_第4页
第4页 / 共95页
C语言单选题库.docx_第5页
第5页 / 共95页
C语言单选题库.docx_第6页
第6页 / 共95页
C语言单选题库.docx_第7页
第7页 / 共95页
C语言单选题库.docx_第8页
第8页 / 共95页
C语言单选题库.docx_第9页
第9页 / 共95页
C语言单选题库.docx_第10页
第10页 / 共95页
C语言单选题库.docx_第11页
第11页 / 共95页
C语言单选题库.docx_第12页
第12页 / 共95页
C语言单选题库.docx_第13页
第13页 / 共95页
C语言单选题库.docx_第14页
第14页 / 共95页
C语言单选题库.docx_第15页
第15页 / 共95页
C语言单选题库.docx_第16页
第16页 / 共95页
C语言单选题库.docx_第17页
第17页 / 共95页
C语言单选题库.docx_第18页
第18页 / 共95页
C语言单选题库.docx_第19页
第19页 / 共95页
C语言单选题库.docx_第20页
第20页 / 共95页
亲,该文档总共95页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

C语言单选题库.docx

《C语言单选题库.docx》由会员分享,可在线阅读,更多相关《C语言单选题库.docx(95页珍藏版)》请在冰点文库上搜索。

C语言单选题库.docx

C语言单选题库

━━━一、单项选择共300题

━━━━━━━━━━━━━━━

第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>=10o

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2