c语言题库答案Word文档格式.docx
- 文档编号:18277904
- 上传时间:2022-12-15
- 格式:DOCX
- 页数:34
- 大小:37.50KB
c语言题库答案Word文档格式.docx
《c语言题库答案Word文档格式.docx》由会员分享,可在线阅读,更多相关《c语言题库答案Word文档格式.docx(34页珍藏版)》请在冰豆网上搜索。
(“%s”,str);
(“%s”,str[10]);
()14、在说明一个结构体变量时系统分配给它的存储空间是()。
A.该结构体中第一个成员所需存储空间B.该结构体中最后一个成员所需存储空间
C.该结构体中占用最大存储空间的成员所需存储空间
D.该结构体中所有成员所需存储空间的总和
()15、下面程序的输出结果是:
intm=13;
intfun(intx,inty)
{intm=3;
return(x*y-m);
}
main()
{inta=7,b=5;
printf(“%d\n”,fun(a,b)/m);
()1、C语言中要求运算必须是整形的运算符是()
A.%B./C.<
D.+
()2、下列选项中那一项是不合法的用户标识符( )
A.ter3
()3、设inta=0,b=5;
执行表达式a++和++b后,表达式a+b的值是()
()4、为表示关系x≥y≥z,应使用的C语言表达式是()
A.(x>
=y)&
&
(y>
=z)B.(x>
=y)AND(y>
=z)>
=y>
=zD.(x>
=z)
()5、若有x=15,y=40,m=100,执行了语句m=(x>
y)x:
y;
后,m的值为()
A.15B.40C.100D.
()6、若变量a,b,c为整型,要给三变量输入数据,正确的输入语句是()
(a,b,c);
(“%d%d%d”,a,b,c);
(“%D%D%D”,&
a,&
b,&
c);
(“%d%d%d”,&
()7、以下程序段的输出结果是______。
inta=1234;
printf("
%2d\n"
,a);
D.提示出错、无结果
()8、以下for循环的执行次数是for(x=0;
x<
4;
x++);
A.是无限循环B.循环次数不定次次
()9、下面程序段运行结果正确的是()
charc1=65,c2=66;
printf(“%c,%c”,c1,c2);
B,98,B,98
()10、设有程序段,则下列描述中正确的是()
intk=10;
while(k=0)k=k-1;
A.循环体执行10次B.循环是无限次循环C.循环体一次也不执行D.循环体执行一次
()11、C语言允许函数类型缺省定义,此时函数值隐含的类型是()。
()12、下面叙述中正确的是()。
A.C语言程序总是从第一个定义的函数开始执行
B.C语言程序总是从main()函数开始执行
C.C语言程序中的main()函数必须放在程序的开始部分
D.一个C函数中只允许一对花括号
()13、下列正确的数组定义语句是()
a(2,3);
a[2][]={1,2,3,4}
a[2][2]={{1,2,3},{8,7}};
a[2][4]={1,2,3,4,5,6}
()14、.若有下列定义和语句,则对a数组元素的非法引用是()。
inta[2][3];
A.a[0][0]B.a[1][1]C.*(*(a+1)+2)D.a[2][3]
()15、.有以下程序段:
若inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a,b;
b=p[5];
b中的值是______。
()16、以下不能正确进行字符串赋初值的语句为______。
str[5]="
good!
"
str[]="
*str="
str[5]={'
g'
'
o'
,'
d'
}
()17、在说明语句:
int*f();
中,标识符f代表的是______。
A.一个用于指向整型数据的指针变量 B.一个用于指向一维数组的行指针
C.一个用于指向函数的指针变量D.一个返回值为指针型的函数
()18、有以下定义:
不能给数组a输入字符串的语句是______
#include<
>
chara[10],*b=a;
A.gets(a);
B.gets(a[0]);
C.gets(&
a[0]);
D.gets(b);
()19、下面程序段的输出结果是______。
main() {charstrl[]=”string”;
%d\n"
strlen(strl));
A.6 B.7 C.10 D.存在语法错误
()20、voidmain()
{structst{longnum;
charname[20];
};
structstt1;
printf(“%d”,sizeof(t1);
A.8 B.20C C.24 D.38
()1、程序运行后的输出结果是()
main()
{charc1;
c1='
A'
;
printf("
%c,%d\n"
c1,c1);
A.E,68B.D,69C.A,65D.输出无定值
()2、程序运行的结果是()
{inta=1,b=2;
if(a>
b)printf("
%d"
a);
elseprintf("
b);
B.2C.1
()3、以下程序输出结果是()
{intx=2,a=1,b=1;
switch(x)
{case1:
a++;
case2:
b++;
printf(“a=%d,b=%d”,a,b);
=3,b=2=1,b=2=4,b=1=3,b=1
()4、有以下程序运行后的输出结果是()
{inta=12;
printf(”%d\n”,a>
10a+10:
a-12);
()5、以下程序运行后的输出结果是()
{inta,b=0;
for(a=1;
a<
=3;
a++)
b+=a;
printf(”%d\n”,b);
()6、以下叙述中错误的是()
语言函数可以嵌套定义。
语言函数可以嵌套调用。
语言函数可以递归调用。
D.main函数可以放在程序的开头
()7、以下关于函数形参和实参的叙述中正确的是()
A.函数的实参和其对应的形参共占同一存储单元
B.形参只是形式上的存在,不占用具体存储单元
C.同名的实参和形参占同一存储单元
D.函数的形参和实参分别占用不同的存储单元
()8、以下程序运行后的输出结果是(234)
fun()
{staticintx=1;
x++;
printf(”%3d”,x);
{inti,s;
for(i=1;
i<
i++)
fun();
()9、以下能正确定义数组并正确赋初值的语句是()
a[2]={1,2,3};
B.intn=5,b[n][n];
c[2]={};
d[2]={1,2};
()10、以下程序运行后的输出结果是()
A.1B.2C.10D.6
sub(intn)
{if(n>
1) returnn-3;
elsereturnn+3;
}
main()
{printf(“%d”,sub(5);
()1、以下叙述不正确的是()
A.一个C源程序可由一个或多个函数组成
B.一个C源程序必须包含一个main函数
程序的基本组成单位是函数
D.在C程序中,注释说明只能位于一条语句的后面
()2、设变量a=2,f=,i=型,则表达式10+a*f-i值的为()
A.14.6D.不确定
()3、若运行时给变量x输入12,则以下程序的运行结果是()
main()
{intx,y;
scanf("
&
x);
y=x>
12x+10:
x-12;
printf("
%d\n"
y);
()4、下列说法中错误的是()
A.只能在循环体内使用break语句
B.在循环体内使用break语句可以使流程跳出本层循环体,从而提前结束本层循环
C.在while和do…while循环中,continue语句并没有使整个循环终止
的作用是结束本次循环,即跳过本次循环体中余下尚未执行的语句,接着再一次进行循环判断
()5、若有说明:
inta[][3]={1,2,3,4,5,6,7,8,9};
则a数组第一维的大小是
D.无确定值
()6、下面程序输出的结果是()
main()
{inti;
inta[3][3]={1,2,3,4,5,6,7,8,9};
for(i=0;
3;
i++)
%d"
a[i][i]);
59535791
()7、已知:
charb[20]="
defghi"
则执行下列语句后的输出结果为()
strlen(b));
D.以上答案都不正确
()8、阅读下列程序,则执行后的结果为()
#include"
"
{intc[][4]={{1,2,3,4},{5,6,7,34},{213,56,62,3},{23,12,34,56}};
%d,%d\n"
c[0][0],*(*(c+1)+1));
6,5,5,6
()9、以下程序段的描述,输出的结果是()
x=5;
do
{pritf(“%d”,x);
x--:
while(x>
3);
4434324321
()10、对以下说明语句的正确理解是()
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.因为数组长度与初值的个数不相同,所以此语句不正确
()语言中不能用来表示整常数的进制是()。
A.十进制B.十六进制C.八进制D.二进制
()语言规定标识符由()等字符组成。
A.字母数字下划线B.中划线字母数字
C.字母数字逗号D.字母下划线中划线
()3、以下表达式:
2+’a’+i*f,其中i为整型变量,f为float型变量,则表达式的最终数据类型为()。
()4.设有如下定义
intx=10,y=5,z;
则语句printf("
%d\n"
z=(x+=y,x/y));
的输出结果是()。
()5.设有如下定义:
charch=’z’,则执行下面语句后变量ch是值为:
ch=(‘A’<
=ch&
ch<
=‘Z’)(ch+32):
ch
()6.若x和y都为float型变量,且x=,y=执行下列语句后输出结果为:
printf(“%f”,(x,y));
D.输出符号不够,输出不正确值
()7.设有两字符串“Beijing”、“China”分别存放在字符数组str1[10],str2[10]中,下面语句中能把“China”连接到“Beijing”之后的为:
(str1,str2);
(str1,“China”);
(str1,“China”);
(“Beijing”,str2);
()8.以下对一维整型数组a的正确说明是()。
a(10);
n=10,a[n];
n;
scanf(“%d”,&
n);
inta[n];
D.#defineSIZE10inta[SIZE];
()9.设有如下程序段,则其执行结果为:
staticinta[]={1,2,3,4},*p;
inti;
p=a;
printf(“%d”,*(p+3));
[3]地址D.不正确的值
()10、若二维数组a有m列,则a[I][j]元素前的数组元素个数为:
*m+i*m+j*m+j-1*m+j+1
()11、C语言中变量的指针指的是:
A.变量类型B.变量值C.变量值D.变量地址
()12、下面有关for循环的正确描述是()。
循环只能用于循环次数已经确定的情况
循环是先执行循环体语句,后判断表达式
C.在for循环中,不能用break语句跳出循环体
循环的循环体语句中,可以包含多条语句,但必须用花括号括起来
()13、C语言规定:
在一个源程序中,main函数的位置()。
A.必须在最开始B.必须在系统调用的库函数的后面
C.可以在任意位置D.必须在源文件的最后
()14、在C语言程序中,若未在函数定义时说明函数类型,则函数默认的类型为:
()15、在说明一个结构体变量时系统分配给它的存储空间是()。
A.该结构体中第一个成员所需存储空间
B.该结构体中最后一个成员所需存储空间
()1、下列字符串是标识符的是()。
A._HJB.9_studentC.longD.LINE1
()2、下列说法正确的是()。
A.main函数必须放在C程序的开头B.main函数必须放在C程序的最后
C.main函数可以放在C程序的中间部分,但在执行C程序时是从程序开头执行的
D.main函数可以放在C程序的中间部分,但在执行C程序时是从main函数开始的
()3、C语言中不能用来表示整常数的进制是()。
A.十进制B.十六进制C.八进制D.二进制
()4、设d为字符变量,下列表达式正确的是()。
A.d=678B.d=’a’C.d=”d”D.d=’gjkl’
()5、判断字符型变量ch为大写字母的表达式是()。
A.’A’<
=ch<
=’Z’B.(ch>
=’A’)&
(ch<
=’Z’)
C.(ch>
=’Z’)D.(ch>
=’A’)AND(ch<
()6、C语言中,要求运算对象必须是整型的运算符是:
A.>
B.++C.%D.!
=
()7、写出下面程序的执行结果()。
{intx=1,y=1,z=0;
if(z<
0)
if(y>
0)x=3;
elsex=5;
%d\t"
x);
A.1B.3C.5D.7
()8、若i,j已定义为int型,则以下程序段中循环体的总的执行次数是()。
for(i=1;
=4;
for(j=1;
j<
=5;
j++)
{}
A.20B.24C.25D.30
()9、下面程序的输出结果是:
intm=2;
{inta=3,b=5;
printf(“%d\n”,fun(a,b)/m);
A.1B.2C.6D.10
()10、以下能对二维数组a进行正确说明和初始化的语句是:
A.inta()(3)={(1,0,1),(2,4,5)};
B.inta[2][]={{3,2,1},{5,6,7}};
C.inta[][3]={{3,2,1},{5,6,7}};
D.inta
(2)()={(1,0,1),(2,4,5)};
()11、设有charstr[10],下列语句正确的是()。
A.scanf("
%s"
B.printf("
%c"
str);
C.printf("
str[0]);
D.printf("
()12、执行以下程序段后,a的值是()。
inta[]={5,3,7,2,1,5,4,10};
ints=0;
k;
for(k=0;
k<
k++)
s+=a[k];
A.8B.15C.17D.18
()13、变量的指针,其含义是指该变量的()。
A.值B.地址C.名D.一个标志
()14、以下对一维整型数组a的初始化正确的是()。
A.inta(4)={1,2,3,5};
B.inta[4]={1,2,3,4,6,7};
C.inta[4]={1468};
D.inta[4]={1,4,6,8}
()15、若有以下说明和语句:
structworker
{intno;
char﹡name;
}work,﹡p=&
work;
则以下引用方式不正确的是()。
A.work.noB.(﹡p).noC.p->
noD.work->
no
二、判断题()
(√)1、在C语言程序中,AHP和ahp分别代表两个不同的标识符。
(√)2、C程序有三种结构化程序设计方法,分别顺序结构、选择结构和循环结构。
(╳)3、在if语句中,if子句与else子句都可以单独使用,构成了if语句的两种缺省形式。
(╳)4、for语句作为循环控制语句时,其括号内各个表达式及其后的分号都可缺省。
(╳)5、数组在定义时没有必要指定数组的长度,其长度可以在程序中根据元素个数再决定。
(╳)6、C语言中while和do-while循环的主要区别是while语句的循环体至少会被执行一次,而do-while语句的循环体则可能一次也不执行。
(√)7、数组首地址不仅能通过数组中第一个元素的地址表示,也可以通过数组名来表示。
(╳)8、在C语言中,只有在两个字符串所包含的字符个数相同时,才能比较大小。
如字符串“That”与“The”就不能进行大小比较。
(╳)9、函数的返回值类型是由函数的类型和return语句中表达式的类型共同决定的,当这两类型不一致时最终起决定作用的是return中表达式的类型。
(√)10、文件按数据存储形式分为文本文件和二进制文件。
(√)1、在C语言程序中,happy是正确的标识符。
(╳)2、在C语言的if语句中,else可以单独出现。
(√)3、在C程序中一行内可以写几个语句,一个语句可以分写在多行上。
但每一条C语句都必须有一个分号的。
(√)4、在C语言的if语句中,用作条件判断的表达式可以是C语言中任意合法的表达式。
(╳)5、在C语言中,函数strcpy是用来连接字符串的。
(√)6、for语句作为循环控制语句时,三个表达式可以省略其中的一个、两个或三个,但分号不可少。
(√)7、数组名也可作为函数参数使用,此时是地址传递。
(╳)8、C程序有三种结构化程序设计方法,分别嵌套结构、选择结构和循环结构。
(╳)9、数组在定义时没有必要指定数组的长度,其长度可以在程序中根据元素个数再决定。
(√)10、C程序的三种结构化程序设计方法分别顺序结构、选择结构和循环结构。
(╳)1、C程序可以由若干个源文件组成,因此最小的功能单位是源文件,最小编译单位的是函数。
(√)2、C语言的三种基本数据类型为整型、实型、字符型。
(╳)3、在if语句中,if子句与else子句都可以单独使用,构成了if语句的两种缺省形式。
(√)5、C程序中函数不可以嵌套定义但可以嵌套调用。
(√)6、数组名也可作为函数参数使用,此时数组名代表数组的起始地址。
(√)7、在函数内的复合语句中定义的变量在本复合语句内有效。
(√)8、打开文件所用的函数为fopen函数。
(╳)9、逗号运算符的优先级比赋值运算符高。
(╳)10、链表中的各节点在内存中占连续的存储空间依次存放。
(√)1、表达式25+’a’+*’c’执行后输出结果是双精度类型的数据。
·
装·
订·
密·
封·
线·
系别:
_____________年级:
__________
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 题库 答案
![提示](https://static.bdocx.com/images/bang_tan.gif)