版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第一章测试01110011:流程图中用下列哪一个图形符号表示判断?()
A:菱形框
B:矩形框
C:平行四边形框
D:圆形框
答案:A01110021:流程图中用下列哪种图形符号表示事情处理过程的开始?(
A:箭头
B:圆括号矩形
C:矩形
D:圆圈
答案:B01110031:流程图中用于描述输出的是下列哪一个图形符号?
A:矩形框
B:圆括号矩形框
C:平行四边形框
D:菱形框
答案:C01210011:以下选项中哪一个是C语言关键字()。
A:default
B:include
C:fun
D:
printf
答案:A01210031:下列选项中不属于C语言关键字的是()。
A:enum
B:register
C:
external
D:default
答案:C01210051:C语言提供的合法关键字是(
)。
A:swith
B:cher
C:default
D:Case
答案:C01210021:下列哪一个选项不属于C语言的关键字()。
A:integer
B:static
C:while
D:
break
答案:A01210041:下列四组选项中均不是C语言关健字的选项是(
)。
A:while
go
pow
B:define
IF
type
C:include
scanf
case
D:gect
char
printf
答案:B01210061:C语言提供的合法数据类型关键字是()。
A:Signed
B:Integer
C:
float
D:Char
答案:C01310011:在以下各组标识符中,均可以用作变量名的一组是()。
A:table_1,a*1
B:a01,Int
C:0_a,W12
D:for,point
答案:B01310021:下列不合法的C语言中标识符是()。
A:
#xyz
B:student
C:
_total
D:
PI
答案:A01310031:以下不合法的C语言标识符是()。
A:
a_bc
B:ABC
C:
abc
D:ab.c
答案:D01310041:下列字符串是合法标识符的是(
)。
A:_HJ
B:9_student
C:long
D:LINE1
答案:A01310051:下列标识符组中,合法的用户标识符为()。
A:list与*jer
B:del-word与signed
C:_0123与ssiped
D:keep%与wind
答案:C01310061:以下选项中不合法的用户标识符是(
)。
A:abc.c
B:PRINT
C:file
D:Main
答案:A01310071:以下选项中不合法的用户标识符是(
)。
A:
A$
B:_123
C:Dim
D:Printf
答案:A01310081:在下列C语言程序中,可以用做变量名的是(
)。
A:*p
B:a1
C:int
D:1
答案:B01310091:以下符号中不能用作用户标识符的符号是(
)。
A:Struct
B:_256
C:Scanf
D:void
答案:D01310101:下面四个选项中,均是不合法的用户标识符的选项是(
)。
A:b-a
goto
int
B:float
lao
_A
C:_123
temp
INT
D:A
p_0
do
答案:A01310111:C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符(
)。
A:必须为大写
B:必须为字母或下划线
C:必须为下划线
D:可以是字母、数字和下划线中的任一种字符
答案:B01380011:C语言规定标识符只能由字母、数字和小数点三种字符组成。()
A:错
B:对
答案:A01420021:65的二进制32位定长形式是00000000000000000000000001000001
A:对
B:错
答案:A01410021:下面4个选项中,均是正确的八进制数和十六进制数的选项是()。
A:0a12
-0x123
-0xa
B:
-10
0X8f
-011
C:0abc
-017
0xc
D:0010
-0x11
0xf1
答案:D01410011:某种数制每位上所使用的数码个数称为该数制的()。
A:数值
B:基数
C:指数
D:位权
答案:B01410031:下面四个选项中,均是不正确的八进制或十六进制数的选项是(
)。
A:0a12
7ff
-123
B:016
0x8f
018
C:010
-0x11
0x16
D:0abc
017
0xa
答案:A第二章测试02180011:C语言定义一个变量,占用内存中的一个存储空间。()
A:错
B:对
答案:B02180021:C语言中,要求对所有用到的变量先定义,然后才能使用。()
A:对
B:错
答案:A02210011:下面四个选项中均是合法整型常量的选项是()。
A:160
0xffff
011
B:-01
986,012
0668
C:-0xcdf
01a
0xe
D:-0x48a
2e5
0x02B2
答案:A02210021:下面四个选项中,均是不合法整型常量的选项是(
)。
A:-0xcdf
017
12,456
B:-0f1
-0xffff
0011
C:-018
999
5e2
D:
-0x48eg-068
03f
答案:D02210031:下列选项中表示一个正确的整型常量(
)。
A:
456
B:1.2
C:
1,000
D:
-20
答案:D02210041:若a为整型变量,则语句a=-2;printf(“%d”,a);()。
A:赋值不合法
B:输出值为-2
C:输出值为2
D:输出为不确定值
答案:B02280011:在变量声明中给变量赋初值的方法是:inta=b=c=10;()
A:对
B:错
答案:B02280021:如果i的原值为3,则:j=++i;j的值为3。()
A:错
B:对
答案:A02280031:设C语言中一个int型数据在内存中占2个字节,则int数据的取值范围为-32768~32767。()
A:对
B:错
答案:A02310011:下面四个选项中,均是不合法浮点数的是(
)。
A:-e3
.234
1e3
B:
160
0.12
e3
C:123
2e4.2
.e5
D:-018
123e4
0.0
答案:C02310031:以下每个选项都代表一个常量,其中不正确的实型常量是()。
A:2.607E-1
B:
-77.77
C:
0.8103e2
D:4.6e-2
答案:C02310041:设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为(
)。
A:float
B:int
C:double
D:不确定
答案:C02310051:设有说明:charw;intx;floaty;doublez;则表达式w*x+z-y值的数据类型为(
)。
A:
char
B:
int
C:float
D:double
答案:D02310062:以下变量定义中,合法的是(
)。
A:float3_four=3.4;
B:doublea=1+4e2.0;
C:shortdo=15;
D:intabc=2;
答案:D02310072:已定义x为float型变量x=213.82631;printf(“%-4.2f”,x);则以上语句()。
A:输出为213.82
B:输出为213.83
C:输出为-213.82
D:输出格式描述符的域宽不够,不能输出
答案:B02410031:C语言中,char型数据在内存中的存储形式是(
)。
A:原码
B:反码
C:ASCII码
D:补码
答案:C02410041:下面正确的字符常量是(
)。
A:
‘W’
B:
“c”
C:
‘'’
D:
’
答案:B02410081:下面四个选项中,均是正确的数值常量或字符常量的选项是()。
A:+001
0xabcd
2e2
50
B:“a”
3.9E-2.5
1e1
‘“’
C:0.0
0f
8.9e
‘&’
D:‘3’
011
0xFF00
0a
答案:A02480011:字符型变量用来存放字符常量,注意只能放2个字符。()
A:对
B:错
答案:B02480021:C语言中可以把一个字符串赋给一个字符变量。()
A:对
B:错
答案:B02480031:C语言使字符型数据和整型数据在一定范围内之间可以通用。一个字符数据既可以以字符形式输出,也可以以整数形式输出。()
A:错
B:对
答案:B02480041:C的字符常量是用双引号括起来的一个字符。()
A:错
B:对
答案:A02510011:下面不正确的字符串常量是(
)。
A:
“0”
B:
””
C:“12’12”
D:‘abc’
答案:D02510021:下面4个选项中均是非法常量的是(
)。
A:0xabc
‘’
“a”
B:-0x18
01177
0xf
C:‘'
1
12,456
D:’as’
-0fff
‘xa’
答案:D02580011:字符串常量是一对单引号括起来的字符序列。()
A:错
B:对
答案:A02610011:intk=8567;printf(“|%-6d|”,k);结果是(
)。
A:输出格式描述不合法
B:输出为|-08567|
C:输出为|008567|
D:输出为|8567
|
答案:D02610021:若在scanf函数语句中没有非格式字符作输入数据的间隔,则不可用(
)作为输入数据的间隔。
A:回车
B:逗号
C:TAB
D:空格
答案:B02610031:使用scanf函数时,在源程序开头(
)。
A:书写#include<stdio.h>
B:书写#include<scanf.h>
C:不必写#include
D:书写#include<math.h>
答案:A02610041:doublex=213.82631;printf(“%-6.2e”,x);则以上语句(
)。
A:输出格式描述符的域宽不够,不能输出
B:输出为-2.14e2
C:输出为21.38e+01
D:输出为2.14e+02
答案:D02610051:若输入4位整数到整型变量a中,可用(
)。
A:
scanf(“M”);
B:scanf(“%d”,&a);
C:scanf(“M”,a);
D:scanf(“M”,&a);
答案:B02610061:a为整型变量,输入5,执行printf(“a=%d”,a)后输出为(
)。
A:a=5
B:5
C:a=a=5
D:a=%5
答案:A02610072:下列能正确输入字符数组a的语句是(
)。
A:scanf(“%s”,a);
B:
scanf(“%s”,&a);
C:scanf(“%c”,a);
D:循环执行scanf(“%c”,&a[i]);
答案:A02610082:在输入时,字符变量的值必须使用空格间隔,其输入函数可为(
)。
A:scanf(“%c,%c,%c”,&a,&b,&c);
B:scanf(“%c
%c
%c”,&a,&b,&c);
C:scanf(“<”,&a,&b,&c);
D:循环执行getchar()
答案:B02680011:若intx=3;printf(“%d”,&x);则系统会报错,没有任何结果。()
A:错
B:对
答案:A02680021:输入语句scanf(“%d,%d,%d”,a,b,c);的格式是正确的。()
A:对
B:错
答案:B02680031:在scanf(“%d,%d,%d”,&a,&b)函数中,当输入为1,2,3时,将1赋给a,将2赋给b。()
A:对
B:错
答案:B02680041:printf函数是一个标准库函数,它的函数原型在头文件”string.h”中。()
A:错
B:对
答案:A02680051:在printf函数中,输出列表的各输出项之间可用冒号分隔。()
A:错
B:对
答案:A02680061:若intx=3;printf(“%d”,&x);则系统不会报错,会输出x的地址。()
A:对
B:错
答案:A02680071:输入语句的格式为:scanf(“%d%d%d”,&a,&b,&c);是正确。()
A:错
B:对
答案:B02680081:在scanf(“%d,%d”,&a,&b)函数中,可以使用一个或多个空格作为两个输入数之间的间隔。()
A:错
B:对
答案:A02680091:printf函数是一个标准库函数,它的函数原型在头文件stdio.h中。()
A:错
B:对
答案:B02680111:在scanf(“%c%c”,&c1,&c2)函数中,当输入为字符a,b时,将a赋给c1,将b赋给c2。()
A:错
B:对
答案:A02680121:printf函数中的格式字符,既可以是大写形式也可以是小写形式。()
A:对
B:错
答案:B02680131:使用printf函数时,格式控制字符串和各输出项应一一对应。()
A:错
B:对
答案:B02680141:在printf函数中,格式字符f的意义是:以小数形式输出单精度实数。()
A:对
B:错
答案:A02680161:输入语句的格式为:scanf(“%d,%d,%d”,&a;&b;&c)是正确的。()
A:错
B:对
答案:A02680171:在printf函数中,不同系统对输出表列的求值顺序不一定相同,VC是按从右到左进行的。()
A:错
B:对
答案:B第三章测试03110011:已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2=‘A’+‘6’-’3’后,c2中的值为()。
A:68
B:不确定的值
C:C
D:D
答案:D03110021:若有定义intk=7,x=12;,则能使值为3的表达式是()。
A:x%=k-k%5
B:x%=(k-k%5)
C:(x%=k)-(k%=5)
D:x%=(k%=5)
答案:C03110031:设intn=3;则有表达式++n,n的结果是()。
A:3
B:4
C:5
D:2
答案:B03110041:表达式18/4*sqrt(4.0)/8值的数据类型为(
)。
A:double
B:不确定
C:float
D:
int
答案:A03110051:设intn=3;则n++的指是()。
A:3
B:4
C:2
D:5
答案:A03110061:若有intk=11;则表达式(k++*1/3)的值是()。
A:0
B:11
C:3
D:12
答案:C03110071:下列表达式的值,那一个等于0(
)。
A:5/6
B:5%6
C:5-6
D:5/6.0
答案:A03110082:已知inta=7;floatx=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是()。
A:2.750000
B:
2.500000
C:3.500000
D:
0.000000
答案:B03180011:在C语言中,要求参加运算的数必须是整数的运算符是%。()
A:错
B:对
答案:B03180021:若有intm=5,y=2;则执行下面表达式y+=y-=m*=y后,y的值为-16。(
)
A:错
B:对
答案:B03210012:判断char型变量c1是否为小写字母的正确表达式为()。
A:(c1>=‘a’)&&(c1<=‘z’)
B:(‘a’>=c1)||(‘z’<=c1)
C:
(c1>=A.&&(c1<=‘z’)
D:‘a’<=c1<=’z
答案:A03210021:下列运算符中,不属于关系运算符的是()。
A:!
B:!=
C:>=
D:<
答案:A03210032:设intn=2;则++n+1==4的结果是(
)。
A:1
B:false
C:0
D:true
答案:D03310011:在C语言的逻辑运算中,逻辑值”真”用()表示。
A:T
B:TURE
C:整型值1
D:
true
答案:D03310021:在C语言的混合运算中,非逻辑值转化为逻辑值的原则是()。
A:1为真,0为假
B:非“零”为真,“零”值为假
C:非0为真,0为假
D:正数为真,负数为假
答案:B03310031:在逻辑运算中,逻辑运算符两侧的运算对象数据类型是()。
A:只能是整型或字符型数据
B:只是0或1
C:只能是0或非0正数
D:可以是任何合法的类型数据
答案:D03310052:设a=2,b=3,c=4,则表达式a+b>c&&b==c&&a||b+c&&b+c的值为()。
A:5
B:1
C:8
D:0
答案:B03380011:逻辑运算符的优先级别高于算术运算符。()
A:对
B:错
答案:B03380021:inta=0,b=1,c=2;则表达式a||b+c&&b==c的值为0。()
A:错
B:对
答案:B03380031:inta=0,b=1,c=2,x,y;则!(x=a)&&(y=b)&&c的值为1。()
A:错
B:对
答案:B03410011:已知各变量的类型说明如下:intk,a,b;unsignedlongw=5;doublex=1.42;下列表达式中不符合C语言语法的是(
)。
A:k=(a=2,b=3,a+b)
B:a+=a-=(b=4)*(a=3)
C:
x%(-3)
D:w+=-2
答案:C03410021:设n=10,i=4,则赋值运算n%=i+1执行后,n的值是(
)。
A:1
B:3
C:0
D:2
答案:C03410031:以下叙述中正确的是(
)。
A:执行表达式a=b后,在内存中a和b存储单元中的原有值都将被改变,a的值已由原值改变为b的值,b的值由原值变为0。
B:a是实型变量,C语言允许进行以下赋值a=10,因此可以这样说:实型变量中允许存放整型值。
C:已有a=3,b=5当执行了表达式a=b,b=a之后,已使a中的值为5,b中的值为3。
D:在赋值表达式中,赋值号右边既可以是变量也可以是任意表达式。
答案:D03410051:设有intp,q;以下不正确的语句是()。
A:p+=3;
B:p*=3;
C:p&&=q;
D:p/=q;
答案:C03410061:已知intx,y,z;执行语句x=(y=(z=10)+5)-5;后x、y、z的值是()。
A:x=10y=10z=15
B:x=10y=10z=10
C:x=10y=15z=10
D:x=10y=5z=10
答案:C03480011:由赋值运算符将一个变量和一个表达式连接起来的式子称为”赋值表达式”。()
A:错
B:对
答案:B03480021:a=b=c=d=10;是一个合法的赋值语句。()
A:对
B:错
答案:A03610021:sizeof(float)是(
)。
A:一个整型表达式
B:一个不合法的表达式
C:一个双精度表达式
D:一种函数调用
答案:A03610031:C语言中int、char和short三种类型数据在内存中占用的字节数()。
A:是任意的
B:均为2个字节
C:由用户自己定义
D:由所用机器的机器字长决定
答案:D03610041:逗号表达式(a=35,a4),a+15的值为(
)。
A:30
B:60
C:15
D:不确定
答案:A03610062:以下变量均为int类型,则值不等于7的表达式是()。
A:(x=6,x+1,y=6,x+y)
B:(y=6,y+1,x=y,x+1)
C:(x=y=6,x+y,y+1)
D:(x=y=6,x+y,x+1)
答案:C03610072:以下符合C语言语法的赋值表达式是()。
A:d=9+e+f=d+9
B:d=9+e,e++,d+9
C:d=9+e,f=d+9
D:d=e=f+7
答案:D03610083:以下使i的运算结果为4的表达式是()。
A:inti=0,j=1;(j==1)?(i=1):(i=3);
B:inti=0,j=0;(i=3,(j++)+i);
C:inti=1,j=1;i+=j+=2;
D:inti=1,j=0;j=i=((i=3)*2);
答案:C第四章测试04210012:以下程序的输出结果是()。intmain(){intm=5;if(m++>5)printf(“%d”,m);elseprintf(“%d”,m–);return0;}
A:6
B:7
C:4
D:5
答案:A04210022:以下程序的输出结果为()。int
main(){inti=0,j=0,a=6;if((++i>0)&&(++j>0))a++;printf(“i=%d,j=%d,a=%d”,i,j,a);return0;}
A:i=1,j=1,a=7
B:i=0,j=1,a=7
C:i=1,j=0,a=7
D:i=0,j=0,a=6
答案:A04210032:以下程序的输出结果为()。intmain(){inta=2,b=-1,c=2;if(a)if(b<0)c=0;else
c++;printf(“%d”,c);return0;}
A:3
B:1
C:2
D:0
答案:D04210042:若i为int型,且有程序如下,则输出结果是()。i=111;if(i%3==0)printf(“####”);printf(“****”);
A:
####
B:无输出结果
C:
****
D:####****
答案:D04280011:变量a,b,c已赋初值,则语句if((a=b;)>0)c=a;是正确的。()
A:对
B:错
答案:B04280021:变量x,y,z已赋初值,则语句if((x=y+5)>0)z=x;是正确的。()
A:对
B:错
答案:A04280031:else语句总是和靠它最近的if匹配。()
A:错
B:对
答案:B04310012:若运行时x=12,则运行结果为()。intmain(){
intx,y;scanf(“%d”,&x);y=x>12?x+10:x-12;printf(“%d”,y);return0;}
A:10
B:0
C:12
D:22
答案:B04310023:以下程序的输出结果是(
)。intmain(){inti=0,j=0,k=6;if((++i>0)||(++j>0))k++;printf(“%d,%d,%d”,i,j,k);return0;}
A:0,1,7
B:1,1,7
C:1,0,7
D:0,0,6
答案:C04310032:若变量都已正确说明,则以下程序段输出为()。inta=1,b=2,c=3;if(a>b)a=b;b=c;c=a;printf(“a=%db=%dc=%d”,a,b,c);
A:a=2b=3c=2
B:a=1b=2c=1
C:a=1b=3c=1
D:a=1b=2c=3
答案:C04310042:以下不正确的语句为()。
A:
if(x>y);
B:if(x)
C:if((x==y)&&(x!=0))x+=y;
D:if(x!=y)scanf(“%d”,&x);elsescanf(“%d”,&y);
答案:B04410012:写出下面程序输出结果(
)。intmain(){
intx=1,y=0,a=0,b=0;switch(x){case1:
switch(y){case0:a++;case1:b++;}case2:a++;b++;}printf(“a=%d,b=%d”,a,b);}
A:a=1,b=1
B:
a=2,b=2
C:a=1,b=0
D:a=2,b=1
答案:B04480012:switch语句中一定有default分支。()
A:对
B:错
答案:B04480021:case后只能跟常量,不能跟变量。()
A:错
B:对
答案:B第五章测试05210012:现已定义整型变量inti=1;执行循环语句while(i++<5);后,i的值为()。
A:1
B:其余选项均不正确
C:6
D:5
答案:C05210022:有程序段intk=10;while(k=0)k=k-1;则下面描述正确的是()。
A:循环体语句一次也不执行
B:循环是无限循环
C:while循环执行10次
D:循环体语句执行一次
答案:A05210032:下列程序段的运行结果是(
)。intn=0;while(n++<3);printf(“%d”,n);
A:3
B:其余选项都不对
C:2
D:4
答案:A05210042:设有程序段t=0;while(printf(“*“)){t++;if(t<3)break;}printf(”t=%d”,t);下面描述正确的是(
)。
A:其中循环控制表达式与’0’等价
B:其中循环控制表达式与0等价
C:其中循环控制表达式是不合法的
D:其余选项都不对
答案:D05310012:以下程序段()。x=-1;do{x=x*x;}while(!x);
A:循环执行一次
B:循环执行2次
C:有语法错误
D:是死循环
答案:A05310022:下面程序的运行结果是(
)。intmain(){inty=10;do{y–;}
while(–y);printf(“%d”,y–);}
A:-1
B:1
C:0
D:8
答案:C05310032:有语句intx=3;do{printf(“%d”,x-=2);}while(!(–x));则上面程序段(
)。
A:输出的是1和-2
B:输出的是1
C:输出的是3和0
D:是死循环
答案:A05510013:有以下程序:intmain(){
chari;for(;(i=getchar())!=‘’;){
switch(i-‘a’){
case0:putchar(i);case1:putchar(i+1);break;case2:putchar(i+2);case3:break;default:putchar(i);break;}}printf(“”);}输入abcde后,程序的输出结果是()。
A:abcee
B:abbde
C:abcde
D:abccdd
答案:A05480011:do-while语句构成的循环不能用其它语句构成的循环来代替。()
A:对
B:错
答案:B05480021:用do-while语句构成循环时,只要while后的表达式为0时就结束循环。()
A:错
B:对
答案:B05480031:while循环的while()后没有分号,而do-while循环的while()后一定要有一个分号。()
A:对
B:错
答案:A05510021:C语言的for语句中的表达式可以部分或全部省略,但两个(
)不可省略。但当三个表达式均省略后,因缺少判断条件,循环会无限制地进行下去,形成死循环。
A:<
B:;
C:,
D:++
答案:B05510031:下面有关for循环的正确描述是()。
A:for循环只能用于循环次数已经确定的情况。
B:for循环体语句中,可以包含多条语句,但要用花括号括起来。
C:在for循环中,不能用break语句跳出循环体。
D:for循环是先执行循环体语句,后判定表达式。
答案:B05510052:以下不是无限循环的语句为()。
A:for(i=10;
;i–)sum+=i;
B:while(1){x++;}
C:for(y=0,x=1;x>++y;x=i++)i=x;
D:for(;;x++=i);
答案:C05580011:for(表达式1;表达式2;表达式3)中,表达式1和表达式3不能同时都是逗号表达式。()
A:错
B:对
答案:A05580021:for循环中,如果表达式2为空,则该循环一定是死循环。()
A:错
B:对
答案:A05580031:for(i=0,j=10;i<=j;i++,j–)k=i+j;执行完后,k的值为50。()
A:错
B:对
答案:A05580041:若a、b均为int型变量,且a=100,则for(b=100;a!=b;++a,b++)printf(“—-”)是死循环。()
A:对
B:错
答案:B05580051:执行语句:for(i=1;i++<4;++i);后;变量i的值是5。(
A:对
B:错
答案:B05610012:以下程序输出结果为()。intmain(){inti,b,k=0;for(i=1;i<=5;i++){b=i%2;while(b–>=0)k++;}printf(“%d,%d”,k,b);return0;}
A:8,-2
B:8,-1
C:3,-1
D:3,0
答案:A05610021:以下程序段中循环体总的执行次数是()。inti,j;for(i=7;i;i–)for(j=0;j<6;j++){……}
A:21
B:13
C:42
D:36
答案:C05710012:以下正确的描述是()。
A:从多层循环嵌套中退出时,只能使用goto语句
B:在循环体内使用break语句或continue语句的作用相同
C:只能在循环体内和switch语句内使用break语句
D:continue语句的作用是结束整个循环的执行
答案:A05710021:以下不正确的描述是()。
A:在循环语句中使用break是为了使流程跳出循环体,提前结束循环。
B:break语句不能用于循环语句和switch语句外的任何其他语句
C:在switch语句中使用break语句或continue语句的作用相同。
D:在循环语句中使用continue是为了结束本次循环,而不是终止整个循环的执行。
答案:C05780011:break语句的作用就是结束本层循环。()
A:对
B:错
答案:A第六章测试06110011:C语言中,数组名代表()。
A:数组首地址
B:数组全部元素的值
C:数组第一个元素的值
D:数组元素的个数
答案:A06110021:以下关于数组的描述正确的是()。
A:数组的大小是可变的,但所有数组元素的类型必须相同
B:数组的大小是可变的,可以有不同的类型的数组元素
C:数组的大小是固定的,所有数组元素的类型必须相同
D:数组的大小是固定的,但可以有不同的类型的数组元素
答案:C06110031:在C语言中,引用数组元素时,其数组下标的数据类型允许是()。
A:任何类型的表达式
B:整型常量或整型表达式
C:整型表达式
D:整型常量
答案:B06110041:设array为一数组,则表达式sizeof(array)/sizeof(array[0])的结果为()。
A:array数组中元素个数
B:
array数组中每个元素所占的字节数
C:
array数组首地址
D:array数组占的总字节数
答案:A06210011:以下对一维数组a的正确说明是()。
A:inta[];
B:chara[]={‘a’,‘b’,‘c’};
C:intk=5,a[k];
D:chara(10);
答案:B06210021:下面程序中有错误的行是()。1、intmain(
)2、{3、
intx[3]={1};4、
intk;5、
scanf(“%d”,&x);6、
for(k=1;k<3;k++)7、
x[0]=x[0]+x[k];8、
printf(“x[0]=%d”,x[0]);9、
return0;10、}
A:7
B:3
C:6
D:5
答案:D06210031:若有以下语句,则正确的描述是()。charx[]=“12345”;chary[]={‘1’,‘2’,‘3’,‘4’,‘5’};
A:x数组等价于y数组
B:
x数组与y数组的长度相同
C:x数组长度大于y数组长度
D:x数组长度小于y数组长度
答案:C06210041:以下不正确的数组定义语句是()。
A:inty[5]={0,1,3,5,7,9};
B:charch2[]={‘x10’,‘xa’,‘x8’};
C:doublex[5]={2.0,4.0,6.0,8.0,10.0};
D:charch1[]={‘1’,‘2’,‘3’,‘4’,‘5’};
答案:A06210051:以下正确的数组定义语句是()。
A:intb[2][]={{1},{2}};
B:chara[5]={‘1’,‘2’,‘3’,‘4’,‘5’,‘’};
C:floatc[][3]={1,2,3,4,5};
D:chard[5]=“CHINA”;
答案:C06210061:下列一维数组正确初始化是()。
A:int*a={12,3,4,5};
B:inta[5]={1,2};
C:inta[5]={,,1,2};
D:
inta[2]={12,3,4,5};
答案:B06210071:不能对以下数组进行初始化的语句的是()。
A:inta[2]={0};
B:
inta[2]={10*1};
C:
inta[2]=[1,2];
D:int
a[2];a[0]=1;a[1]=2;
答案:C06210081:若定义intm[10]={9,4,12,8,2,10,7,5,1,3};则m[m[4]+m[8]]的值是()。
A:7
B:12
C:10
D:8
答案:D06210091:以下对一维数组a的定义正确的是()。
A:inta[5];
B:intk=10;inta[k];
C:chara(10);
D:
inta[0..100];
答案:A06210101:若有说明inta[10];则对数组元素正确的引用是()。
A:a(0)
B:a[0]
C:a[10]
D:a[3.5]
答案:B06210111:对说明语句inta[10]={6,7,8,9,10};理解正确的是()。
A:将5个初值依次赋给a[0]至a[4]。
B:因为数组长度与初值个数不同,所以语句不正确。
C:将5个初值依次赋给a[6]至a[10]。
D:将5个初值依次赋给a[1]至a[5]。
答案:A06210121:下列程序的输出结果是()。intmain(){inta=0,b[3];b[0]=3;printf(“%d,%d”,b[0];b[1]);return0;}
A:3,不定值
B:30
C:3,0
D:0,3
答案:A06210132:以下程序运行后,输出结果是()。intmain(){intn[5]={0,0,0},i,k=2;for(i=0;i<k;i++)
n[i]=n[i]+1;printf(“%d”,n[k]);return0;}
A:不确定值
B:2
C:1
D:0
答案:D06210141:以下对一维整型数组a的正确说明是(
)。
A:intn;scanf(“%d”,&n);inta[n];
B:#defineSIZE10inta[SIZE];
C:intn=10,a[n];
D:inta(10);
答案:B06210152:执行下面的程序段后,变量k中的值为()。intk=3,s[2];s[0]=k;k=s[1]*10;
A:不确定值
B:30
C:10
D:33
答案:A06210161:已知shortint类型变量在内存在占两个字节,有如下定义shortintarray[10]={0,2,4}则数组array在内存所占的字节数为()。
A:10
B:3
C:6
D:20
答案:D06310011:下列二维数组的初始化哪一个不针对三行四列二维数组()。
A:inta[][4]={{1},{5},{9}};
B:inta[][4]={1,0,0,0,5,6};
C:inta[][4]={{1},{0,6},{0,0,11}};
D:inta[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};
答案:B06310021:若有说明语句:inta[2][4];则对a数组元素的正确引用是()。
A:a[0][4]
B:a[0][3]
C:a[2][2]
D:a[2][2+1]
答案:B06310031:以下能对二维数组y进行初始化的语句是()。
A:staticinty[2][4]={{1,2,3},{4,5},{6}};
B:staticinty[][3]={{1,2,3},{4,5,6}};
C:staticinty[][3]={{1,0,1,0},{},{1,1}};
D:staticinty[2][]={{1,0,1},{5,2,3}};
答案:B06310041:若有说明语句:inty[][4]={0,0};则下面叙述不正确的是()。
A:数组y的每个元素都可得初值0。
B:该说明等价于inty[][4]={0};
C:二维数组y的行数为1。
D:只有元素y[0][0]和y[0][1]可得到初值0,其余元素均得不到初值0。
答案:D06310051:以下各组选项中,均能正确定义二维实型数组s的选项是()。
A:floats[3][4];floats[3][];floats[][4];
B:floats(3,4);floats[][]={{0},{0}};floats[3][4];
C:floats[3][4];floats[][4];floats[3][]={{1},{0}};
D:floats[3][4];staticfloats[][4]={{0},{0}};autofloats[][4]={{0},{0},{0}};
答案:D06310061:若有说明语句:inta[][3]={1,2,3,4,5,6,7,8};则a数组的行数为()。
A:3
B:2
C:无确定值
D:1
答案:A06310071:若二维数组y有m列,则在y[i][j]前的元素个数为()。
A:im+j+1
B:
im+j
C:
im+j-1
D:jm+i
答案:B06310081:以下定义语句错误的是()。
A:intx[4][]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}};
B:intx[4][3]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}};
C:intx[][3]={{1,2,3,4}};
D:
intx[][3]={{0},{1},{1,2,3}};
答案:A06310091:若有以下定义:inta[][2]={1,2,3,4,5,6,7};则数组a第一维大小是()。
A:4
B:不确定
C:3
D:5
答案:A06310101:以下对二维数组的定义中正确的是()。
A:inta[][3];
B:
inta[][]={{1,2,3},{4,5,6}};
C:inta[4][]={1,2,3,4,5,6};
D:inta[][3]={1,2,3,4,5,6};
答案:D06310111:以下程序的输出结果是()。intmain(){inta[4][4]={{1,3,5},{2,4,6},{3,5,7}};printf(“%d%d%d%d”,a[0][3],a[1][2],a[2][1],a[3][0]);return0;}
A:1470
B:5430
C:0650
D:不确定
答案:D06410011:与charstr[]={“china”};初始化赋值不等价的是()。
A:
charstr[]=“china”;
B:charstr[]={‘c’,’h’,’i’,’n’,’a’};
C:charstr[6]={‘c’,’h’,’i’,’n’,’a’,’o’};
D:charstr[]={‘c’,’h’,’i’,’n’,’a’,’o’};
答案:B06410021:chararray[]={‘c’,‘h’,‘i’,‘n’,‘a’};数组array占用的内存空间是()个字节。
A:6
B:1
C:5
D:不确定
答案:C06410031:判断字符串str1是否大于字符串str2,应当使用()。
A:if(strcmp(str2,str1)>0)
B:
if(str1>str2)
C:if(strcmp(str1,str2)>0)
D:if(strcmp(str1,str2))
答案:C06410051:有两个字符数组a,b,则以下能正确为a,b进行赋值的语句是()。
A:scanf(“%s%s”,&a,&b);
B:gets(a,b);
C:gets(a);gets(b);
D:getchar(a);getchar(b);
答案:C06410061:有字符数组s1[80]和s2[80],则以下能正确对s1,s2进行输出的语句是()。
A:puts(s1,s2)
B:puts(s1),puts(s2);
C:printf(“%s,%s”,s1,s2);
D:putchar(s1,s2);
答案:C06410071:以下程序段的运行结果是()。chara[7]=“abcdef”;charb[4]=“ABC”;strcpy(a,b);printf(“%c”,a[5]);
A:f
B:
C:e
D:└┘
答案:C06410081:以下描述正确的是()
A:字符串”STOP└┘“与”STOP”相等
B:字符串”That”小于字符串”The”
C:两个字符串所包含的字符个数相同时,才能比较字符串
D:字符个数多的字符串比字符个数少的字符串大
答案:B06410091:以下对字符数组的描述中错误的是()。
A:可以在赋值语句中通过赋值运算符”=“对字符数组整体赋值
B:不可以用关系运算符对字符数组中的字符串进行比较
C:字符数组中可以存放字符串
D:字符数组中的字符串可以整体输入、输出
答案:A06410101:若有语句:chars1[10],s2[10]={“books”},则能将字符串books赋给数组s1的正确语句是()。
A:s1={“books”};
B:
s1=s2;
C:strcpy(s2,s1);
D:
strcpy(s1,s2);
答案:D06410121:下面程序的功能是将字符串s中所有的字符c删除。请选择填空。()#include<stdio.h>intmain(
){
chars[80];
inti,j;
gets(s);
for(i=j=0;s[i]!=‘\0’;i++)
if(s[i]!=‘c’)
;
s[j]=‘\0’;
puts(s);return0;}
A:;
B:s[j++]=s[i]
C:s[++j]=s[i]
D:s[j]=s[i]
答案:B06410141:下面程序的运行结果是()。#include<stdio.h>
#include<string.h>
intmain(
){charx[80]=“AB”,y[80]=“LMNP”;
intn=0;
strcat(x,y);
while(x[n++]!=‘\0’)
y[n]=x[n];
puts(y);return0;
}
A:
AB
B:ABLMNP
C:LBLMNP
D:LB
答案:C第七章测试07110011:C程序的基本结构单位是()
A:语句
B:文件
C:函数
D:表达式
答案:C07110021:一个C语言程序的执行是()
A:从程序的主函数main()开始到主函数main()结束
B:从程序的主函数卖main()开始到最后一个函数结束
C:从程序的第一个函数开始到最后一个函数结束
D:从程序的第一个函数开始到程序的主函数main()结束
答案:A07210011:下列函数定义正确的是()
A:doublefun(intx;inty)
B:doublefun(intx,y;)
C:
doublefun(intx,y)
D:doublefun(intx,inty)
答案:D07210021:下面说法不正确的是()
A:通常调用函数前函数必须被定义或声明
B:通常C程序是由许多小函数组成的,而不是由少量的大函数组成的
C:Dummy(){}是无用的函数
D:在源文件中可以用不同的顺序定义函数
答案:C07310011:若函数的形参为一维数组,则下列说法中正确的是()
A:形参数组的元素个数必须等于实参数组的元素个数
B:形参数组可以不指定大小
C:调用函数时的对应实参必为数组名
D:形参数组的元素个数必须多于实参数组的元素个数
答案:B07310021:有以下函数调用语句:func(rec1,rec2+rec3,rec4);该函数调用语句中含有的实参个数是()
A:3
B:5
C:有语法错
D:4
答案:A07510011:下面程序的结果是()#include<stdio.h>increment(){
staticintx=0;
x+=1;
printf(“%d”,x);}voidmain(){increment();increment();increment();}
A:123
B:012
C:111
D:000
答案:A07510021:下面叙述正确的是()
A:全局变量的定义它的文件中的任何地方都是有效的
B:全局变量在程序的全部执行过程中一直占用内存单元
C:使用全局变量有利于程序的模块化和可读性的提高
D:同一文件中的变量不能重名
答案:B07510031:在C语言中,局部变量的隐含存储类别是()
A:register
B:auto
C:无存储类别
D:static
答案:B第八章测试08110012:有以下说明语句,则下面的叙述不正确的是()。typedefstructstu{inta;floatb}stutype;
A:a和b都是结构体成员名
B:struct是结构体类型的关键字
C:stutype是用户定义的结构体类型名
D:structstu是用户定义的结构体类型名
答案:C08110021:当说明一个结构体变量时系统分配给它的内存是()。
A:结构体中最后一个成员所需内存量
B:结构体中第一个成员所需内存量
C:各成员所需内存量的总和
D:成员中所占内存量最大者所需的容量
答案:C08110032:下列输出字符‘M’的语句是()。structperson{charname[9];intage;};structpersonclass[10]={“John”,17,“paul”,19,“Mary”,18,“Adam”,16};
A:printf(“%c”,class[3].name[1]);
B:
printf(“%c”,class[2].name[1]);
C:printf(“%c”,class[2].name[0]);
D:
printf(“%c”,class[3].name);
答案:C08110042:下列关于结构体变量操作中正确的是()。structstudent{
charnum[10];
charname[20],sex;
intage;
floatscore[3];
floatave;};
A:if(stu1==stu2)
B:
stu2={“2008002”,“GaoPing”,‘M’,18,86.3,80.5,89.4,85.4};
C:structstudentstu1={“2008001”,“LiNing”,‘M’,19,84.3,82.5,89.4,85.4};
D:
printf(“%10s%20s%c%3d%4.1f%4.1f%4.1f%4.1”,stu1);
答案:C08110052:以下定义结构体类型的变量st1,其中不正确的是()。
A:
structstudent{intnum,age;}st1;
B:
struct{
intnum;floatage;}st1;
C:
typedefstructstudent{intnum;intage;}STD;STDst1;
D:
structstudent{
intnum;intage;};studentst1;
答案:D08110062:已知职工记录描述为:structworkers{
int
no;
charname[20];charsex;struct{
intday;intmonth;intyear;}birth;};structworkersw;设变量w中的“生日”应是“1993年10月25日”,下列对“生日”的正确赋值方式是()。
A:day=25;month=10;year=1993;
B:w.birth.day=25;w.birth.month=10;w.birth.year=1993;
C:w.day=25;w.month=10;w.year=1993;
D:birth.day=25;birth.month=10;birth.year=1993;
答案:B08210012:当说明一个共用体变量则系统分配给它的内存是(
)。
A:没有成员驻留在内存中
B:所有成员一直驻留在内存中
C:部分成员驻留在内存中
D:只有一个成员驻留现在内存中
答案:D08310012:设有枚举类型定义:enumcolor={red=3,yellow,blue=10,white,black};其中枚举量black的值是()。
A:15
B:7
C:14
D:12
答案:D08310022:关于下面变量赋值不正确的是()。enumNUM{zero,first,second}num1;intnum2;
A:num1=0;num2=zero;
B:num1=0;num2=0;
C:num1=zero;num2=0;
D:scanf(“%d%d”,&num1,&num2);
答案:B08310032:如下说明语句:enumA{A0=1,A1=3,A2,A3,A4,A5};enumAb;执行b=A3;printf(“%d”,b);输出是()。
A:编译出错
B:2
C:5
D:3
答案:C第九章测试09110011:变量的指针,其含义是指该变量的()。
A:名
B:一个标志
C:地址
D:值
答案:C09110022:已有定义intk=2;intptr1.ptr2;且ptr1和ptr2均已指向变量k,下面不能正确执行的赋值语句是()。
A:ptr=k;
B:k=ptr1(ptr2);
C:ptr1=ptr2;
D:k=ptr1+*ptr2;
答案:A09110032:若有以下说明和定义,则叙述正确的是()
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年江苏省盐城市盐都区中考英语一模试卷
- 2024年大学试题(农学)-耕作学笔试参考题库含答案
- 医院药品采购供应管理制度
- 高考地理一轮复习 课时跟踪检测(二十)人口的数量变化和人口的合理容量(含解析)-人教高三全册地理试题
- 2024年国家开放大学(电大)-物流管理(本科)笔试参考题库含答案
- 木工技能考试必看题库知识点五
- 全球无菌包装市场深度分析与未来趋势预测(简报)
- 个人屋顶雨棚搭建承包合同范本
- 2023-2024学年吉林省油田第十一中学高考压轴卷英语试卷含解析
- 2023-2024学年北京外国语大学附属中学高考英语一模试卷含解析
- 学校规章制度之学生伤害事故报告制度
- 小学奥数举一反三(六年级)
- 自行车车棚施工方案(完整版)
- 简爱剧本[共8页]
- 锚杆框架梁施工方案(完整版)
- 临时用电方案含计算过程
- 装修合同样本(精华简单版) -
- 医院手术部管理规范
- 房屋渗漏维修施工工艺参考附图
- 英文缩写-阀门名词中英对照
评论
0/150
提交评论