北华大学C语言题库精简打印版全Word下载.docx

上传人:b****4 文档编号:17069646 上传时间:2022-11-28 格式:DOCX 页数:56 大小:37.92KB
下载 相关 举报
北华大学C语言题库精简打印版全Word下载.docx_第1页
第1页 / 共56页
北华大学C语言题库精简打印版全Word下载.docx_第2页
第2页 / 共56页
北华大学C语言题库精简打印版全Word下载.docx_第3页
第3页 / 共56页
北华大学C语言题库精简打印版全Word下载.docx_第4页
第4页 / 共56页
北华大学C语言题库精简打印版全Word下载.docx_第5页
第5页 / 共56页
点击查看更多>>
下载资源
资源描述

北华大学C语言题库精简打印版全Word下载.docx

《北华大学C语言题库精简打印版全Word下载.docx》由会员分享,可在线阅读,更多相关《北华大学C语言题库精简打印版全Word下载.docx(56页珍藏版)》请在冰豆网上搜索。

北华大学C语言题库精简打印版全Word下载.docx

scanf("

%d,%c,%f"

&

a,&

c,&

f);

若通过键盘输入:

10,A,12.5则a=10,c='

A'

f=12.5.Y

28.若有inta[3][4];

*(a+1)+2表示a[1][2]元素的地址.Y

29.若通过键盘输入:

30.若a和b类型相同,在执行了赋值语句a=b;

后b中的值将放入a中,b中的值不变.Y

31.如果想使一个数组中全部元素的值为0,可以写成inta[10]={0*10};

32.枚举类型的数据不能从键盘上直接输入、输出.Y

33.结构体类型的定义允许嵌套.Y

34.将整数以二进制形式存盘比以ASCII形式存盘省空间、运算快.Y

35.将一维双精度实数数组x的下标为i的变量的地址赋给指针变量p的语句为:

double*p,x[10];

inti=5;

p=&

x[i];

36.将数组a的首地址赋给指针变量p的语句是p=a;

37.共用体类型变量不能被初始化.Y

38.共同体变量所占的存长度等于最长的成员的长度.Y

39.对指针变量的初始化inta,*pa=&

a,*pc=0;

是正确的.Y

40.对文件进行读写操作,必须先打开,可调用函数fopen().Y

41.对枚举类型名的定义enuma{sum=9,mon=-1,tue};

42.对结构体类型的变量的成员可以象普通变量一样参与各种运算.Y

43.动态存储分配,可调用函数malloc(),如int*p;

p=(int*)malloc(sizeof(p));

44.当定义一个结构体变量时,系统分配给它的存是各成员所需存量的总和.Y

45.当调用函数时,实参是一个数组名,则向函数传送的是数组的首地址.Y

46.不仅可将C源程序存在磁盘上,还可将数据按数据类型分别以文件的形式存在磁盘上.Y

47.x*=y+8等价于x=x*(y+8).Y

48.while和for循环都是先判断表达式的值,后执行循环体语句.Y

49.typedeflongintBIGGY;

的作用是给长整型起了一个别名BIGGY.Y

50.staticchara[]="

Thisisaprogram."

;

printf("

%s"

a);

51.rewind(fp);

可使fp所指文件的位置返回到文件的开头.Y

52.r_1_2是C语言合法的用户定义标识符.Y

53.intn;

scanf("

%d"

n);

inta[n];

是不合法的.Y

54.inti=3,j=5;

if(i>

j);

55.inti,*p=&

i;

是正确的C说明.Y

56.inta[3][4]={{1},{5},{9}};

它的作用是将数组各行第一列的元素赋初值,其余元素值为0.Y

57.int*p[6];

定义了6个下标变量的整型指针.Y

58.fseek()函数一般用于二进制文件.Y

59.for(i=4;

i>

1;

i--)for(j=1;

j<

j++)putchar('

#'

输出为######.Y

60.do-while循环是先执行循环体语句,后判断表达式的值.Y

61.C语言中,文件由字符(字节)序列组成.Y

62.C语言规定,函数返回值的类型是由在定义该函数时所指定的函数类型所决定的.Y

63.C语言程序中,当调用函数时实参和形参各占一个独立的存储单元Y

64.charc;

c=getchar();

该程序段的功能是将用户从键盘输入的字符赋给变量c.Y

65.char*s1="

hello"

*s2;

s2=s1;

66.char(*p)[6];

若p值为1000,则p++;

后p值为1006.Y

67.a=(b=4)+(c=6)是一个合法的赋值表达式.Y

68.0x173是"

正确"

的十六进制常数.Y

69.#define和printf都不是C语句.Y

判断题-错误篇

70.执行表达式(int)i后,i的类型一定变为整型.N

71.在一个C程序中,main函数必须出现在所有函数之前.N

72.在C语言中,为句构成的循环,while后一对圆括号中表达式的值应该是1.N

73.在C语言中,调用函数必须在一条独立的语句中完成.N

74.在C程序中,每行中只能写一条语句.N

75.在C程序中,赋值运算符的优先级最低.N

76.语句printf("

%f%%"

1.0/3);

输出为0.333333.N

77.与if(E)语句中的(E)等价的表达式是(E==0).N

78.用户定义的函数也可调用main函数.N

79.以下各数均不是合法的八进制数:

256、03A2、-0127.N

80.已知ch是字符型变量,则ch="

\"

是正确的赋值语句.N

81.一个变量可以同时被定义为多种类型.N

82.一个include命令可以指定多个被包含的文件.N

83.数组说明inta[3][3]={1,2,3,4,5,6,7};

是正确的.N

84.数组定义inta[10];

占存10个字节.N

85.数组定义inta(10);

86.若有宏定义:

#defineS(a,b)t=a;

a=b;

b=t由于变量t没定义,所以此宏定义是错误的.N

87.若i=3,则printf("

-i++);

输出的值为-4.N

88.若a是实型变量,在执行了a=5;

后,a将变为整型变量.N

89.若a和b的类型相同,在执行了a=b;

后,b中的值将丢失.N

90.任何结构体类型的变量都可以互相赋值.N

91.枚举类型的数据与字符串在使用上相同.N

92.结构体类型只有一种.N

93.将函数fun的入口地址赋给指针变量p的语句是p=fun();

N

94.函数的定义和函数的调用均可以嵌套.N

95.函数strlen("

ASDFG\n"

)的值是7.N

96.定义结构体的保留字是struc.N

97.调用scanf()函数进行字符数组输入时,空格和换行符都可以作为字符串的一部分而能读入.N

98.当输入数值数据时,对于整型变量只能输入整型值;

对于实型变量只能输入实型值.N

99.程序中的变量代表存中的一个存储单元,它的值不可以随时修改.N

100.参加位运算的数据可以是任何类型的数据.N

101.staticcharstr[]="

China"

没有定义数组元素个数.N

102.sqrt(m)是求m平方的函数.N

103.inta[]={3.1,5.8,6.7,-3.6},i;

for(i=0;

i<

4;

i++)printf("

a[i]);

能输出数组元素a[2]的值.N

104.intk=8567;

|%-6d|\n"

k);

的输出为|008567|.N

105.inti=3,j=5;

j);

j++;

elsei++;

106.inta[2][3];

按照它在存的排列次序,a数组的所有元素是a[0][0]、a[1][0]、a[0][1]、a[1][1]、a[0][2]、a[1][2].N

107.inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a;

则p+5相当于a[5].N

108.if语句后面的控制表达式只能使用关系表达式或逻辑表达式.N

109.if(strcmp(temp,str)>

0)中的条件是当字符串temp大于字符串str为真时.N

110.if(j=0)i++;

elsei--;

i的值为11.N

111.for(m=22;

m<

1000;

m++)if(m%3==0&

m%7!

=0)break;

是当m能被3整除或m不能被7整除时,结束本次循环进入下次循环.N

112.for(i=0,k=-1;

k=1;

k++,i++)printf("

*\n"

循环体一次也不执行.N

113.C语言中字符型、整型、实型都能用八进制表示.N

114.C语言中的文件类型只有文本文件一种.N

115.C语言中的文件类型只有二进制文件一种.N

116.C语言的if语句嵌套时,if与else的匹配关系是每个else与if的匹配是任意的.N

117.C程序中有调用关系的所有函数必须放在同一个源程序文件中.N

118.continue语句不只用于循环语句中.N

119.chara[10]="

abcdefg"

printf("

%6s\n"

只输出前六个字符.N

120.char*s;

*s='

H'

121.#include"

stdio.h"

是每个程序中必须写的.N

二、选择题A篇

1.以下数据中,不正确的数值或字符常量是(A).

(A).c

(B).66

(C).0xaa

(D).50

2.设j和k都是int类型,则for循环语句:

for(j=0,k=0;

=9&

k!

=876;

j++)

k);

(A)

(A).最多执行10次

(B).最多执行9次

(C).是无限循环

(D).循环体一次也不执行

3.chara1[]="

abc"

a2[80]="

1234"

将a1串连接到a2串后面的语句是(A).

(A).strcat(a2,a1);

(B).strcpy(a2,a1);

(C).strcat(a1,a2);

(D).strcpy(a1,a2);

4.以下正确的说法是:

在C语言中(A).

(A).实参和与其对应的形参各占用独立的存储单元

(B).实参和与其对应的形参共占用一个存储单元

(C).只有当实参和与其对应的形参同名时才共占用存储单元

(D).形参是虚拟的,不占用存储单元

5.下列字符序列中,是C语言保留字的是(A).

(A).sizeof

(B).include

(C).scanf

(D).sqrt

6.以下选项中,与k=n++完全等价的表达式是(A).

(A).k=n,n=n+1

(B).n=n+1,k=n

(C).k=++n

(D).k+=n+1

7.在位运算中,操作数每左移一位,其结果相当于(A).

(A).操作数乘以2

(B).操作数除以2

(C).操作数除以4

(D).操作数乘以4

8.以下程序的运行结果是(A).

main()

{intn;

for(n=1;

n<

n++)

{

if(n%3==0)continue;

n);

}

(A).12457810

(B).369

(C).12

(D).1234567890

9.inta=1,b=2,c=3;

if(a>

b)a=b;

c)a=c;

则a的值为(A).

(A).1

(B).2

(C).3

(D).不一定

10.下列定义数组的语句中正确的是(A).

(A).#definesize10charstr1[size],str2[size+2];

(B).charstr[];

(C).intnum['

10'

];

(D).intn=5;

inta[n][n+2];

11.C语言中运算对象必须是整型的运算符是(A).

(A).%=

(B)./

(C).=

(D).〈=

12.C语言中while和do-while循环的主要区别是(A).

(A).do-while的循环体至少无条件执行一次

(B).while的循环控制条件比do-while的循环控制条件更严格

(C).do-while允许从外部转到循环体

(D).do-while的循环体不能是复合语句

13.16.在C语言中,形参的缺省存储类别是(A).

(A).auto

(B).register

(C).static

(D).extern

14.从键盘上输入某字符串时,不可使用的函数是(A).

(A).getchar()

(B).gets()

(C).scanf()

(D).fread()

15.以下数据中,不正确的数值或字符常量是(A).

(A).8.9e1.2

(B).10

(C).0xff00

(D).82.5

16.以下不是无限循环的语句为(A).

(A).for(y=0,x=1;

x>

++y;

x=i++)i=x;

(B).for(;

x++=i);

(C).while

(1){x++;

(D).for(i=10;

i--)sum+=i;

17.while(fabs(t)<

1e-5)if(!

s/10)break;

循环结束的条件是(A).

(A).t>

=1e-5&

t<

=-1e-5

(B).fabs(t)<

1e-5&

!

s/10

(C).fabs(t)<

1e-5

(D).s/10==0

18.以下叙述中正确的是(A).

(A).构成C程序的基本单位是函数

(B).可以在一个函数中定义另一个函数

(C).main()函数必须放在其它函数之前

(D).所有被调用的函数一定要在调用之前进行定义

19.函数rewind的作用是(A).

(A).使位置指针重新返回文件的开头

(B).将位置指针指向文件中所要求的特定位置

(C).使位置指针指向文件的末尾

(D).使位置指针自动移至下一个字符位置

20.C语言程序中,当调用函数时(A).

(A).实参和虚参各占一个独立的存储单元

(B).实参和虚参可以共用存储单元

(C).可以由用户指定是否共用存储单元

(D).计算机系统自动确定是否共用存储单元

 

21.当定义一个结构体变量时,系统分配给它的存是(A).

(A).各成员所需存量的总和

(B).结构中第一个成员所需存量

(C).结构中最后一个成员所需存量

(D).成员中占存量最大者所需的容量

22.下列变量定义中合法的是(A).

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

(B).doubleb=1+5e2.5;

(C).longdo=0xfdaL;

(D).float2_and=1-e-3;

23.若有说明语句:

charc='

\72'

则变量c(A).

(A).包含1个字符

(B).包含2个字符

(C).包含3个字符

(D).说明不合法,c的值不确定

24.结构体类型的定义允许嵌套是指(A).

(A).成员是已经或正在定义的结构体型

(B).成员可以重名

(C).结构体型可以派生

(D).定义多个结构体型

25.先用语句定义字符型变量c,然后要将字符a赋给c,则下列语句中正确的是(A).

(A).c='

a'

(B).c="

a"

(C).c="

97"

(D).C='

97'

26.下列数组说明中,正确的是(A).

(A).staticcharstr[]="

(B).staticcharstr[];

str="

(C).staticcharstr1[5],str2[]={"

};

str1=str2;

(D).staticcharstr1[],str2[];

str2={"

strcpy(str1,str2);

27.若有int*p=(int*)malloc(sizeof(int));

则向存申请到存空间存入整数123的语句为(A).

(A).scanf("

p);

(B).scanf("

p);

(C).scanf("

*p);

(D).scanf("

**p);

28.以下叙述中正确的是(A).

(A).C程序中注释部分可以出现在程序中任意合适的地方

(B).花括号"

{"

}"

只能作为函数体的定界符

(C).构成C程序的基本单位是函数,所有函数名都可以由用户命名

(D).分号是C语句之间的分隔符,不是语句的一部分

29.执行下面程序后,输出结果是(A).

{inta=45,b=27,c=0;

c=max(a,b);

%d\n"

c);

intmax(intx,inty)

{intz;

if(x>

y)z=x;

elsez=y;

return(z);

(A).45

(B).27

(C).18

(D).72

30.设有以下语句,若0<

k<

4,下列选项中对字符串的非法引用是(A).

charstr[4][2]={"

aaa"

bbb"

ccc"

ddd"

},*strp[4];

intj;

for(j=0;

strp[j]=str[j];

(A).strp

(B).str[k]

(C).strp[k]

(D).*strp

31.9以下语句中,循环次数不为10次的语句是(A).

(A).for(i=1;

10;

i++);

(B).i=1;

do{i++;

}while(i<

=10);

(C).i=10;

while(i>

0){--i;

(D).i=1;

m:

if(i<

=10){i++;

gotom;

32.14以下不能正确进行字符串赋初值的语句是(A).

(A).charstr[5]="

good!

(B).charstr[]="

(C).char*str="

(D).charstr[5]={'

g'

'

o'

d'

33.18若有double*p,x[10];

使指针变量p指向元素x[5]的语句为(A).

(A).p=&

(B).p=x;

(C).p=x[i];

(D).p=&

(x+i)

34.C语言的if语句嵌套时,if与else的配对关系是(A).

(A).每个else总是与它上面的最近的并且尚未与其他else匹配的if配对

(B).每个else总是与最外层的if配对

(C).每个else与if的配对是任意的

(D).每个else总是与它上面的if配对

35.16以下正确的函数定义形式是(A).

(A).doublefun(intx,inty)

(B).doublefun(intx;

inty)

(C).doublefun(intx,inty);

(D).doublefun(intx,y);

36.18经过下列的语句intj,a[10],*p;

定义后,下列语句中合法的是(A)

(A).p=a+2;

(B).p=a[5];

(C).p=a[2]+2;

(j+2);

37.17enuma{sum=9,mon=-1,tue};

2chara[]="

输出前5个字符的语句是(A).

(A).printf("

%.5s"

(B).puts(a);

(C).printf("

(D).a[5*2]=0;

puts(a);

选择题B篇

38.C语言源程序的基本单位是(B).

(A).过程

(B).函数

(C).子程序

(D).标识符

39.下列程序的输出结果是(B).

{charc1=97,c2=98;

%d%c"

c1,c2);

(A).9798

(B).97b

(C).a98

(D).ab

40.下列四个选项中,均是C语言关键字的选项是(B).

(A).autoenuminclude

(B).switchtypedefcontinue

(C).signedunionscanf

(D).ifstructtype

41.以下能对二维数组a进行正确初始化的语句是(B).

(A).inta[2][]={{1,0,1},{5,2,3}};

(B).inta[][3]={{1,2,3},{4,5,6}};

(C).inta[2][4]={{1,2,3},{4,5},{6}};

(D).inta[][3]={{1,0,1}{},{1,1}};

42.以下对枚举类型名的定义中正确的是(B).

(A).enuma={sun,mon,tue};

(B).enuma{sun=9,mon=-1,tue};

(C).enuma={"

sun"

mon"

tue"

(D).enuma{"

43.以下选项中合法的用户标识符是(B).

(A).long

(B)._2Test

(C).3Dmax

(D).A.dat

44.以下叙述中正确的是(B).

(A).C语言的源程序不必通过编译就可以直接运行

(B).C语言中的每条可执行语句最终都将被转换成二进制的机器指令

(C).C源程序经编译形成的二进制代码可以直接运行

(D).C语言中的函数不可以单独进行编译

45.以下叙述中不正确的是(B).

(A).一个好的程序应该有详尽的注释

(B).在

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

当前位置:首页 > PPT模板 > 国外设计风格

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1