c语言期末题库选择题.docx

上传人:b****2 文档编号:11778284 上传时间:2023-06-02 格式:DOCX 页数:14 大小:23.17KB
下载 相关 举报
c语言期末题库选择题.docx_第1页
第1页 / 共14页
c语言期末题库选择题.docx_第2页
第2页 / 共14页
c语言期末题库选择题.docx_第3页
第3页 / 共14页
c语言期末题库选择题.docx_第4页
第4页 / 共14页
c语言期末题库选择题.docx_第5页
第5页 / 共14页
c语言期末题库选择题.docx_第6页
第6页 / 共14页
c语言期末题库选择题.docx_第7页
第7页 / 共14页
c语言期末题库选择题.docx_第8页
第8页 / 共14页
c语言期末题库选择题.docx_第9页
第9页 / 共14页
c语言期末题库选择题.docx_第10页
第10页 / 共14页
c语言期末题库选择题.docx_第11页
第11页 / 共14页
c语言期末题库选择题.docx_第12页
第12页 / 共14页
c语言期末题库选择题.docx_第13页
第13页 / 共14页
c语言期末题库选择题.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

c语言期末题库选择题.docx

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

c语言期末题库选择题.docx

c语言期末题库选择题

1.以下程序的输出结果是c。

main()

{structcmplx

{intx;;

inty;

}cnum[2]={1,3,2,7};

printf("%d\n",cnum[0].y/cnum[0].x*cnum[1].x);

}

A.0

B.3

C.6

D.1

2.设有以下语句c

typedefstructS{intg;charh;}T;

则下面叙述中正确的是。

A.可用S定义结构体变量

B.TÊÇstructSÀàÐ͵ıäÁ¿

C.可以用T定义结构体变量

D.SÊÇstructÀàÐ͵ıäÁ¿

3.以下叙述中错误的是(d)。

A.在利用fread函数从二进制文件中读数据时,可以用数组名给数组中所有元素读入数据

B.二进制文件打开后可以先读文件的末尾,而顺序文件不可以

C.在程序结束时,应当用fclose函数关闭已打开的文件

D.不可以用FILE定义指向二进制文件的文件指针

4.文件中有一个位置指针p,指向当前读写的位置,不可使p所指文件的

位置返回到文件的开头的是(c)。

A.fseek(p,0,0);

B.fseek(p,0,SEEK_SET);

C.fseek(p,-3L,SEEK_CUR);

D.rewind(p);

5.不合法的八进制数是d

A.01

B.0

C.07700

D.028

6.执行下列语句后变量x和y的值是(b)。

y=10;x=y++;

A.x=10,y=11

B.x=11,y=10

C.x=11,y=11

D.x=10,y=10

7.以下不正确的if语句形式是(d)。

A.if(x

B.if(x>y&&x!

=y);

C.if(x==y)x+=y;

D.if(x!

=y)scanf("%d",&x)elsescanf("%d",&y);

8.若输入ab,程序运行结果为(a)。

main()

{staticchara[3];

scanf("%s",a);

printf("%c,%c",a[1],a[2]);

}

A.b,

B.a,b

C.程序出错

D.a,

9.以下程序段给数组所有元素输入数据,应在下划线处填入的是d

main()

{inta[10],i=0;

while(i<10)

scanf("%d",);

}

A.&a[i+1]

B.a+i

C.&a[++i]

D.a+(i++)

10以下叙述中正确的是(a)。

A.静态(static)类别变量的生存期贯穿于整个程序的运行期间

B.函数的形参都属于全局变量

C.未在定义语句中赋初值的auto变量和static变量的初值都是随机值

D.全局变量的作用域一定比局部变量的作用域范围大

11.下列叙述中不正确的是d

A.C程序的main函数可以没有参数

B.C程序的main函数若有参数时,第一个参数的值最少是1

C.C程序的main函数可以有参数

D.main函数的第一个参数必须是整数,其名字必须是argc;第二个参数可以定义成:

char*argv[],名字必须是argv。

12.为了提高程序的运行速度,在函数中对于整型或指针可以使用(d)型的变量。

A.static

B.auto

C.extern

D.register

13.以下程序的输出结果是c

main()

{chars[]="ABCD",*p;

for(p=s;p

printf("%s\n",p);

}

A.

B.

C.

D.

14.以下程序的输出结果是c

voidfun(int*s)

{staticintj=0;

do

s[j]+=s[j+1];

while(++j<2);

}

main()

{intk,a[10]={1,2,3,4,5};

for(k=1;k<3;k++)

fun(a);

for(k=0;k<3;k++)

printf("%d",a[k]);

}

A.34756

B.234

C.357

D.12345

15.以下程序的输出结果是d。

structst

{intx;

int*y;

}*p;

intdt[4]={10,20,30,40};

structstaa[4]={50,&dt[0],60,&dt[0],60,&dt[0],60,&dt[0]};

main()

{p=aa;

pritnf("%d\n",++p->x);

pritnf("%d\n",(++p)->x);

pritnf("%d\n",++(*p->y));

}

A.

B.

C.

D.

16.C语言中,文件由(b)。

A.记录组成

B.由字符(字节)序列组成

C.由数据块组成

D.由数据行组成

17.整型变量x和y的值相等、且为非0值,则以下选项中,结果为零的

表达式是(a)。

A.x^y

B.x||y

C.x&y

D.x|y

18.下列变量定义中合法的是(a)。

A.short_a=1-.1e-1;

B.float2_and=1-e-3;

C.longdo=0xfdaL;

D.doubleb=1+5e2.5;

19.下列程序段的输出结果为(c)。

inta=7,b=9,t;t=a*=a>b?

a:

b;printf("%d",t);

A.7

B.49

C.63

D.9

20.下列运算符中优先j级别最低的运算符是c

A.+

B.!

=

C.||

D.<=

21.以下程序的运行结果是(b)。

main()

{intn;

for(n=1;n<=10;n++)

{

if(n%3==0)continue;

printf("%d",n);

}

}

A.12

B.12457810

C.1234567890

D.369

22.以下程序的输出结果是a

main()

{intx,i;

for(i=1;i<=100;i++)

{x=i;

if(++x%2==0)

if(++x%3==0)

if(++x%7==0)

printf("%d",x);

}

printf("\n");

}

A.2870

B.3981

C.4284

D.2668

23.以下对一维整型数组a的正确说明是()。

A.#defineSIZE10(换行)inta[SIZE];

B.inta(10);

C.intn;scanf("%d",&n);inta[n];

D.intn=10,a[n];

24.C语言源程序文件经过C编译程序编译后生成的目标文件的后缀为c

A..c

B..bas

C..obj

D..exe

25.若使用一维数组名作函数实参,则以下正确的说法是(d)。

A.实参数组类型与形参数组类型可以不匹配

B.在被调用函数中,必须考虑形参数组的大小

C.实参数组名与形参数组名必须一致

D.必须在主调函数中说明此数组的大小

26.以下程序的输出结果是d

main()

{inta[]={1,2,3,4},i,x=0;

for(i=0;i<4;i++)

{sub(a,&x);printf("%d",x);}

printf("\n");

}

sub(int*s,int*y)

{staticintt=3;

*y=s[t];t--;

}

A.4444

B.0000

C.1234

D.4321

27.sizeof(float)是(b)。

A.一种函数调用

B.一个整型表达式

C.一个双精度型表达式

D.一个不合法的表达式

28.enuma{sum=9,mon=-1,tue};定义了(d)。

A.枚举变量

B.整数9和-1

C.3个标识符

D.枚举数据类型

29.以下可作为函数fopen中第二个参数的正确格式是(b)。

A.w

B."w"

C.'w'

D.(w)

30.在C程序中,可把整型数以二进制形式存放到文件中的函数是(b)。

A.fread函数

B.fprintf函数

C.fputc函数

D.fwrite函数

31.已定义ch为字符型变量,以下赋值语句中错误的是(d)。

A.ch=NULL;

B.ch=62+3;

C.ch='\xaa';

D.ch='\';

32.下列选项中,合法的C语言关键字是(d)。

A.cher

B.integer

C.VAR

D.default

33.下面四个选项中,均是不合法的用户标识符的选项是(c)。

A._123tempint

B.AP_0do

C.b-agotoint

D.floatla0_A

34.下列程序的输出为(b)。

main()

{inty=10;

while(y--);

printf("y=%d\n",y);

}

A.while构成无限循环

B.y=-1

C.y=0

D.y=1

35.以下不符合C语言语法的赋值语句是(c)。

A.a=b=5;

B.y=(a=3,6*5);

C.a=1,b=2

D.j=j+1;

36.C语言的switch语句中case后b

A.可为任何量或表达式

B.只能为常量或常量表达式

C.可为常量或表达式或有确定值的变量及表达式

D.只能为常量

37.下面程序的运行结果是a

#include

main()

{

inty=10;

do{y--;}while(--y);

printf("%d\n",y--);

}

A.0

B.1

C.8

D.-1

38.对for(表达式1;;表达式3)可理解为(a)。

A.for(表达式1;1;表达式3)

B.for(表达式1;0;表达式3)

C.for(表达式1;表达式1;表达式3)

D.for(表达式1;表达式3;表达式3)

39.下面程序的功能是把316表示为两个加数的和,使两个加数分别能被13和11整除,请选择填空c

#include

main()

{

inti=0,j,k;

do{i++;k=316-13*i;}while(______);

j=k/11;

printf("316=13*%d+11*%d",i,j);

}

A.k%11==0

B.k/11

C.k%11

D.k/11==0

40.若有说明:

inti,j=2,*p=&i;,则能完成i=j赋值功能的语句是(c)。

A.i=*p;

B.i=&j;

C.*p=*&j;

D.i=**p;

41.以下程序的功能是:

a

main(){

inta=10,b=20,t;

int*x=&a,*y=&b;

t=*x;

*x=*y;

*y=t;

}

A.交换a,b两个变量的值

B.交换a,b两个变量的地址

C.比较a,b的大小

D.以上都错

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

当前位置:首页 > 解决方案 > 学习计划

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

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