计算机试题.docx
- 文档编号:3776407
- 上传时间:2022-11-25
- 格式:DOCX
- 页数:60
- 大小:50.41KB
计算机试题.docx
《计算机试题.docx》由会员分享,可在线阅读,更多相关《计算机试题.docx(60页珍藏版)》请在冰豆网上搜索。
计算机试题
1.已知inta,b;下列switch语句中正确的是(b)。
A.switch(a)
{casea:
a++;break;
caseb:
b++;break;}
B.switch(a+b)
{case1:
a+b;break;
case2:
a-b;break;}
C.switch(a*a)
{case1,2:
++a;
case3,4:
--b;}
D.switch(a/0.5+b)
{case5-a:
a/5;break;
default:
a+b;}
2.若有如下语句,则下面正确的描述是(b)。
charx[]="12345";
chary[]={'1','2','3','4','5'};
A.数组x和数组y的长度相同
B.数组x的长度大于y数组的长度
C.数组x等价于数组y
D.数组x的长度小于数组y的长度
3.scanf()函数的正确调用形式是(d)。
A.scanf(格式控制串,输出项表列);
B.scanf(格式控制串,输出项地址表列);
C.scanf(格式控制串,输入项表列);
D.scanf(格式控制串,输入项地址表列);
4.下列说法正确的是(c)。
A.C语言的主函数不允许有参数
B.C语言的主函数最多允许1个参数
C.C语言的主函数可以无参数
D.C语言的主函数允许任意个参数
5.表达式(!
'1'||'1')+5的值是(c)。
A.不确定B.5C.6D.7
7.若有以下定义和语句,chars1[]="12345",s2[]="1234";则函数strcmp(s1,s2)的值为(a)。
A.大于0B.小于0C.等于0D.等于1
8.选出表达式结果为假的一项(b)。
A.1<4&&5>=4
B.(2>5==5)
C.(3<=3)&&(2<5)
D.!
(4<=8)||(3<=7)
9.凡是函数中未指定存储类别的局部变量,其隐含的存储类别为(a)。
A.autoB.staticC.externD.register
10.下列表达式中,(a)是非法的。
已知floata=5;intb=4;
A.a%3+bB.b*b&&a||bC.(a>b)+(int)b%2D.--b+a
11.下列运算符中,优先级别最高的是(b)。
A.<=B.%C.||D.+
12.关于下列语句描述正确的是(b)。
union
{unsignedintn;
unsignedcharc;}u1;
A.u1是共用体类型名
B.u1是共用体变量名
C.u1是结构体类型名
D.u1占用内存空间3字节
13.设有intx,y;正确的输入语句是(c)。
A.scanf("%d%d",x,y);
B.scanf("x=%f,y=%f",&x,&y);
C.scanf("%d,%d",&x,&y);
D.scanf("x=%d,y=%d",x,y);
14.在一个C语言程序中(b)。
A.main函数必须出现在所有函数之前
B.main函数可以在任何地方出现
C.main函数必须出现在所有函数之后
D.main函数必须出现在固定位置
15.有关预处理命令#defineN10,以下描述正确的是(c)。
A.N在程序运行时可以被改变
B.N是个整型变量
C.N没有值和类型的含义
D.N是个标识符,称为宏体
16.当调用函数时,实参是一个数组名,则向函数传送的是(b)。
A.数组的长度
B.数组的首地址
C.数组每一个元素的地址
D.数组每个元素中的值
17.有以下程序
main()
{inti;
for(i=0;i<3;i++)
switch(i)
{case1:
printf("%d",i);
case2:
printf("%d",i);
default:
printf("%d",i);
}
}
执行后输出的结果是(a)。
A.011122B.012
C.012020D.120
18.以下程序的输出结果是(d)。
#defineM(x,y,z)x*y+z
main()
{inta=1,b=2,c=3;
printf("%d\n",M(a+b,b+c,c+a));
}
A.19B.17
C.15D.12
19.下列程序的输出结果是(d)。
main()
{chara[10]={9,8,7,6,5,4,3,2,1,0},*p=a+5;
printf("%d",*p);
}
A.非法B.a[4]的地址
C.5D.4
20.函数fun(floatx)的函数类型是(a)。
A.intB.void
C.floatD.不确定
21.关于C程序说法正确的是(c)。
A.一行只能写一条语句
B.一个语句不可以分写在多行上
C.C语言本身没有输入输出语句
D.分号不是C语句的必要组成部分
22.关于语句FILE*fp;描述错误的是(c)。
A.fp是一个指向FILE类型的指针变量
B.通过fp可以实现对与它相关文件的访问
C.fp指向与它相关文件的地址
D.函数fclose(fp)可关闭fp指针指向的文件
23.假定x和y为double型,则表达式x=2,y=x+3/2的值是(d)。
A.3.500000B.3
C.2.000000D.3.000000
24.下列运算符结合方向是右结合的是(d)。
A.+B.&&
C.>=D.?
:
25.以下语句中不正确的是(a)。
A.chars[10];s="test";
B.chars[]={'t','e','s','t'};
C.chars[20]="test";
D.char*s="test\n";
26.有以下程序段
intk=0;
while(k=1)k++;
while循环执行的次数是(a)。
A.无限次
B.有语法错,不能执行
C.一次也不执行
D.执行1次
27.关于else语句描述正确的是(c)。
A.不可缺少
B.必须与离之最近的if语句配对使用
C.不可以单独使用
D.必须使用缩进格式表示
28.设a、b、c、d、m、n均为int型变量,且a=5、b=6、c=7、d=8、m=2、n=2,则逻辑表达式(m=a>b)&&(n=c>d)运算后,n的值为(c)。
A.0B.1
C.2D.3
29.合法的赋值语句是(b)。
A.x=y=100
B.d--;
C.x+y;
D.c=int(a+b);
30.以下程序段的输出结果是(c)。
intx=3;
do
{printf("%3d",x-=2);
}while(!
(--x));
A.1B.30
C.1-2D.死循环
31.只有当整数x为奇数时,表达式为逻辑“真”的是(b)。
A.x%2==0
B.!
(x%2==0)
C.(x-x/2*2)==0
D.!
(x%2)
31.下列程序段的输出结果是(a)。
for(a=1;a<=10;a++)
if(a%3==1)break;
printf("%d\n",a);
A.1B.2
C.3D.4
32.以下叙述中正确的是(b)。
A.全局变量的作用域一定比局部变量的作用域范围大
B.静态(static)类别变量的生存期贯穿于整个程序的运行期间
C.函数的形参都属于全局变量
D.未在定义语句中赋初值的auto变量和static变量的初值都是随机值
33.有如下函数调用语句func(rec1,rec2+rec3,(rec4,rec5));,该函数调用语句中,含有的实参个数是(a)。
A.3B.4
C.5D.有语法错误
34.与y=(x!
=0?
1:
-1);功能相同的if语句是(b)。
A.if(x<>0)y=1;
elsey=-1;
B.if(x)y=1;
elsey=-1;
C.if(x)y=-1;
elsey=1;
D.if(x>=0)y=1;
35.以下能正确定义数组并正确赋初值的语句是(d)。
A.intN=5,b[N][N];
B.inta[0][2]={{1},{3}};
C.intc[2][]={{1,2},{3,4}};
D.intd[3][2]={{1,2},{3,4}};
36.下列选项中合法的字符常量是(b)
A."&"B.'R'
C."ABC"D."\n"
37.若有如下定义:
inta[10];
则下面不能正确表示a[1]地址的表达式是(d)。
A.&a[1]B.&a[0]+1
C.a+1D.a++
38.若有以下程序:
main()
{inta[3][3]={1,2,3,4,5,6,7,8,9},i=0,sum=0;
do
{sum+=a[i][i];
i++;
}while(i<3);
printf("%d",sum);}
则程序运行后的输出结果是(a)。
A.15B.12
C.16D.18
39.下列数组声明中不正确的是(c)。
A.chara[4];
B.chara[][4]={"aa",""};
C.chara[4][];
D.chara[5][4];
40.有以下声明语句:
structx
{inta;floatb;charc;}y;则下列叙述中不正确的是(b)。
A.x是定义的结构体名.
B.y是定义的结构体类型名.
C.struct是结构体类型的关键字.
D.a,b,c都是结构体成员名.
41.已知intt=0;则以下关于while(t=1){...}的说法正确的是(c)。
A.循环控制表达式不正确
B.循环控制表达式的值永远为1
C.死循环,永远无法结束
D.一次循环体都不会执行.
42.intx=3,y=4,a=5,b=6;则表达式(a=x)&&(b=y)的值是( b )。
A.0B.1
C.2D.不确定
43.执行以下程序后的输出结果为(b)。
#include
main()
{inti;
for(i='A';i<'I';i++,i++)
printf("%c",i+32);
printf("\n");}
A.abcdefghiB.aceg
C.acegiD.编译出错,无输出。
44.以下关于宏替换的叙述不正确的是(d)。
A.宏替换不占用运行时间
B.宏替换只是字符替换,不作语法检查
C.宏名称无类型
D.宏名称必须用大写字母表示
45.一个C语言程序由若干个函数组成,其中唯一不可缺少的函数是(d)。
A.库函数B.scanf函数
C.printf函数D.main函数
46.下面程序的输出是(a)。
main()
{inta[10]={1,2,3,4,5};
printf("%d\n",a[6]);
}
A.0B.1C.2D.3
47.若有staticchars[10]="abcdefg";则数组s所占的字节数是(b )。
A.7B.10
C.11D.8
48.下列程序的功能是(a)
main()
{
ints[4][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}};
intm,n;
for(m=0;m<4;m++)
{for(n=0;n<=m;n++)
printf("%d",s[m][n]);
printf("\n");
}}
A.输出4×4矩阵的下三角的元素.
B.输出4×4矩阵的上三角的元素.
C.输出4×4矩阵的对角线上的元素.
D.输出4×4矩阵的全部元素.
49.执行语句for(x=4;x-->0;);后,变量x的值是(a)。
A.-1B.0
C.1D.不确定
50.若有以下程序:
main()
{intx[6]={11,16,17,28,20},*t=x+3;
printf("%d",*t-2);
}
则程序运行后的输出结果是(d)。
A.18B.14
C.29D.26
51.表达式x和y的取值同时在(0,+∞)或同时在(-∞,0)"的表达式是(c)。
A.(x+y>0)&&(x+y<=0)
B.(x>=0||y>=0)&&(x<0||y<0)
C.x>0&&y>0||x<0&&y<0
D.(x>=0&&y>=0)&&(x<0&&y<0)
52.有以下程序:
main()
{intn,s[8];
for(n=1;n<=8;n++)
s[8-n]=n;
printf("%d%d%d",s[2],s[4],s[6]);}
则程序运行后的输出结果是(c)。
A.246B.741
C.642D.147
53.设intx=12,y=12345;则执行语句printf("x=%4d,y=%4d",x,y);的结果是(c)。
A.x=12,y=1234
B.x=12,y=12345
C.x=12,y=12345
D.x=12,y=2345
54.C语言规定函数返回值的类型由(a)。
A.在定义函数时所指定的函数类型所决定。
B.调用该函数时的主调函数的类型所决定。
C.return语句中的表达式的类型所决定。
D.调用该函数时系统临时决定。
55.while循环和do-while循环的区别是(c)
A.while循环和do-while循环的循环体都可以不执行;
B.while循环的循环体将至少执行一次,而do-while循环的循环体可以不执行;
C.do-while循环的循环体将至少执行一次,而while循环的循环体可以不执行;
D.while循环和do-while循环的循环体都将至少执行一次。
56.下列程序的执行结果是(c)。
main()
{intn=9;while(n>6)printf("%d",n--);}
A.9876B.876
C.987D.8765
57.下列说法正确的是(d)。
A.C语言能嵌套定义函数,但不能嵌套调用函数
B.C语言不能嵌套定义函数,也不能嵌套调用函数
C.C语言能嵌套定义函数,也能嵌套调用函数
D.C语言不能嵌套定义函数,但能嵌套调用函数
58.a,b,c,d都为float型,且已正确赋值,则与数学表达式2ab/(5cd)等价的C语言表达式是( a)。
A.a/c*b/d*2/5B.a/(5*c*d)/2*b
C.2*a*b/5*c*dD.2/5*a*b*(1/c*d)
59.下列程序的执行结果是(b)。
main()
{inta,b,c;c=(a=3,b=a--);
printf("%d,%d,%d",c,a,b);}
A.3,3,3B.3,2,3
C.2,3,3D.2,2,3
60.有如下定义:
inta=3,b=-4;longc=5;floatx;doubley;则下列选项中不符合C语言语法的表达式是(c)。
A.a+=a-=a*bB.a%b
C.y=2*x;D.y=(float)c
1.在C语言中函数的隐含存储类型是(a)。
A.autoB.static
C.externD.无存储类型
2.执行语句for(i=1;i++<4;);后,变量i的值为(c)。
A.3B.4
C.5D.不定
3.以下说法不正确的是(c)。
A.C语言中函数和变量一样有数据类型
B.函数即使没有参数,也不可以缺少函数名后的一对圆括号
C.函数带有形参时,形参必须是变量
D.对不需要函数返回值的函数,应定义为void类型
4.以下所列的各函数原型中,正确的是(c)。
A.voidfun(vara:
int,varb:
int);
B.voidfun(inta,b);
C.voidfun(inta,intb);
D.voidfun(aasint,basint);
5.若有定义和语句:
chars[10];s="abcd";printf("%s\n",s);则结果是(d)。
A.输出abcdB.输出a
C.输出abcd\nD.编译不通过
6.关于数组元素的下标描述正确的是(c)。
A.必须是常量;
B.只能从0开始;
C.必须是整型表达式
D.下标的个数表示数组的长度
7.下列常数中哪个是不合法的C常量(c)。
A.-0.B.0003
C.3e+2.3D."105"
8.在C程序中,设有说明:
staticinta[2][3]={1,2,3,4,5,6};则下列表达式对a数组中的元素值引用正确的是(b)。
A.a
(1)
(2)B.**a
C.a[1,2]D.a[0][3]
9.下列运算符中,优先级别最高的是(c)。
A.<=B.=
C.%D.&&
10.关于C程序说法正确的是(c)。
A.一行只能写一条语句
B.一个语句不可以分写在多行上
C.C语言本身没有输入输出语句
D.分号不是C语句的必要组成部分
11.C语言中的if(表达式)语句里,表达式可以是(b)。
A.逻辑表达式、关系表达式
B.任何合法的表达式
C.赋值表达式
D.逻辑、关系和赋值表达式
12.floati,j,下列可以正确表示把i,j之和转换成整型的C语言表达式(c)。
A.int(i+j)B.int(i)+int(j)
C.(int)(i+j)D.(int)i+j
13.下列标识符中非法的是(a)。
A.FILEB.temp
C.stu_aveD.sum5
14.程序段:
intx=10,y=3,z;
printf("%d\n",z=(x%y,x/y));的输出结果是:
(c)。
A.1B.0
C.3D.4
15.以下程序的输出结果是(c)。
main()
{inti,a[10];
for(i=9;i>=0;i--)
a[i]=10-i;
printf("%d%d%d",a[2],a[5],a[8]);
}
A.258B.741
C.852D.369
16.下列说法正确的是(a)。
A.continue语句只能用于循环语句中
B.switch语句中必须有default语句
C.break语句只用于循环语句内
D.break终止本次循环,continue终止本重循环
17.关于函数的说法不正确的是(a)。
A.被调用函数的定义必须放在主调函数之前
B.函数调用可以嵌套
C.程序的入口是从main()开始
D.各函数之间是平行的,相互独立的
18.已知inta,b;则下列表达式不合法的是(b)。
A.a/bB.(a+b)++
C.a+=bD.a*=b+3
19.C语言中do{循环体}while(表达式);语句中,说法正确的是(b)。
A.循环体可能一次也不执行
B.循环体会至少执行一次
C.循环体必须用{}组成复合语句
D.表达式的值为0时,返回循环体执行循环内容
20.下列属于C语言基本数据类型的是(c)。
A.整型、实型、逻辑型
B.整型、字符型、逻辑型
C.整型、字符型、实型
D.整型、实型、字符型、逻辑型
21.若给出以下定义:
chara[]="abcdefg";
charb[]={'a','b','c','d','e','f','g'};
正确的叙述为(c)。
A.数组a与数组b等价
B.数组a与数组b的长度相同
C.数组a的长度大于数组b的长度
D.数组a的长度小于数组b的长度
22.执行以下程序后的结果为(a)。
main()
{inti=1;
while(i<=5)
printf("%d,",i++);}
A.1,2,3,4,5,B.2,3,4,5,6,
C.2,3,4,5,D.1,2,3,4,
23.以下描述中正确的是(c)。
A.预处理指完成宏替换和文件包含中指定的文件的调用
B.预处理命令也是C语句
C.凡是行首以#开始的控制行都是预处理命令
D.预处理命令只能放在程序的开头
24.在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是(b)。
A.地址传递
B.单向值传递
C.由实参传给形参,再由形参传给实参
D.传递方式由用户指定
25.为表示关系'a'≤x≤'z',C语言表达式应是(a)。
A.(x<='z')&&(x>='a')
B.(x<='z')&(x>='a')
C.(x<='z
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试题