高级语言程序设计考试题库及答案.docx
《高级语言程序设计考试题库及答案.docx》由会员分享,可在线阅读,更多相关《高级语言程序设计考试题库及答案.docx(151页珍藏版)》请在冰豆网上搜索。
高级语言程序设计考试题库及答案
下列表述中,正确的字符常量是()。
收藏
A.
Z
B.
'\456'
C.
'\\"
D.
'W'
回答错误!
正确答案:
D
如果函数值的类型和return语句中表达式的值不一致,则()。
收藏
A.
以函数类型为准
B.
连接出错
C.
语法出错
D.
以表达式值的类型为准
回答错误!
正确答案:
A
以读写方式打开一个已存在的二进制文件fil2,fopen函数的正确的调用方式是()。
收藏
A.
FILE*FP;FP=fopen("fil2","r+");
B.
FILE*FP;FP=fopen("fil2","r");
C.
FILE*FP;FP=fopen("fil2","rb");
D.
FILE*FP;FP=fopen("fil2","rb+");
回答错误!
正确答案:
D
根据定义:
structperson{charname[9];intage;};structpersonc[10]={"John",17,"Paul",19,"Mary",18,"Adam",16};,能打印出字母M的语句是()。
收藏
A.
printf("%c",c[3].name);
B.
printf("%c",c[3].name[1]);
C.
printf("%c",c[2].name[1]);
D.
printf("%c",c[2].name[0]);
回答错误!
正确答案:
D
程序段inti,sum=0;for(i=1;i<=3;sum++)sum+=i;printf("%d\n",sum);的输出结果是()。
收藏
A.
0
B.
6
C.
死循环
D.
3
回答错误!
正确答案:
C
在函数中定义变量时,若省略存储类型符,系统默认存储类别为()。
收藏
A.
寄存器
B.
外部
C.
静态
D.
自动
回答错误!
正确答案:
D
在定义inta[2][3];之后,下列使用正确的是:
收藏
A.
a[2][0]
B.
a(1,2)
C.
a[1>2][!
1]
D.
a[1,3]
回答错误!
正确答案:
C
C语言中规定,函数的返回值的类型是由:
收藏
A.
在定义该函数时所指定的函数类型所决定
B.
调用该函数时的主调用函数类型所决定
C.
return语句中的表达式类型所决定
D.
调用该函数时系统临时决定的
回答错误!
正确答案:
A
以下程序运行后,main(){char*s="abcde"; s+=2; printf("%d\n",s); },输出结果是:
收藏
A.
值不确定
B.
字符c的地址
C.
字符c的ASCII码值
D.
cde
回答错误!
正确答案:
B
下列常数中不能作为C的常量的是()
收藏
A.
3e2
B.
2.5e-2
C.
0xA5
D.
3e2.5
回答错误!
正确答案:
D
以下程序的输出结果是:
main(){inta,b;for(a=1,b=1;a<=100;a++){if(b>=10)break;if(b%3==1){b+=3;continue;}}printf(“%d”,a);}
收藏
A.
6
B.
5
C.
4
D.
101
回答错误!
正确答案:
C
设有如下程序段:
intx=2002,y=2003;printf("%d\n",(x,y));,则以下叙述中,正确的叙述是()。
收藏
A.
运行时产生出错信息
B.
输出值为2002
C.
输出值为2003
D.
输出语句中格式说明符的个数少于输出项的个数,不能正确输出
回答错误!
正确答案:
C
设x、y、t均为int型变量,则执行语句x=y=3;t=++x||++y;后,y的值为()。
收藏
A.
3
B.
不定值
C.
4
D.
1
回答错误!
正确答案:
A
若有程序段intn=9;while(n>6){n--;printf("%d",n);},则该程序段的输出结果是()。
收藏
A.
876
B.
9876
C.
987
D.
8765
回答错误!
正确答案:
A
以下关于C语言的叙述,正确的是。
收藏
A.
分号是C语句之间的分隔符,不是语句的一部分
B.
构成C程序的基本单位是函数,所有函数名都可以由用户命名
C.
C程序中注释部分可以出现在程序中任意合适的地方
D.
花括号"{"和"}"只能作为函数体的定界符
回答错误!
正确答案:
C
一个完整的可运行的C源程序是()。
收藏
A.
至少由一个且只有一个主函数或多个辅助函数组成
B.
由一个且只有一个主函数和一个以上(含0个)的子函数组成
C.
至少需要一个主函数和(或)一个以上的辅助函数组成
D.
至少由一个主函数和一个以上的辅助函数组成
回答错误!
正确答案:
B
对于下面两个结构体变量的定义:
(1)structperson{charname[20];intage;}pupil,student;structpersonmen,women;,
(2)struct{charname[20];intage;}pupil,student;structmen,women;,正确的理解是()。
收藏
A.
(1)正确
(2)错误
B.
(1)错误
(2)正确
C.
(1)和
(2)都正确
D.
(1)和
(2)都错误
回答错误!
正确答案:
A
main(){inta,b,s;scanf(”%d%d”,&a,&b);s=a;if(a<=""3空格4回车,则输出结果是(=""}若执行上面的程序时,从键盘上输入=""printf(”%d\n”,s);=""s="b;">
收藏
A.
20
B.
18
C.
16
D.
14
回答错误!
正确答案:
C
已说明inta=256,执行语句printf(”%x”,a);的结果是()
收藏
A.
100
B.
256
C.
00ff
D.
0ffe
回答错误!
正确答案:
A
下列描述中,正确的描述是()。
收藏
A.
预处理指令只能位于程序首部
B.
凡是C源程序中行首以#标示的控制行都是预处理指令
C.
预处理就是完成c编译程序对C源程序第一遍扫描,为编译的词法分析和语法分析做准备
D.
预处理是指完成宏替换和文件包含指定的文件调用
回答错误!
正确答案:
B
以下叙述中,正确的叙述是()。
收藏
A.
用C程序实现的算法可以既没有输入也没有输出
B.
用C程序实现的算法可以没有输入但必须要有输出
C.
用C语言实现的算法可以没有输出但必须有输入
D.
用C语言实现的算法必须要有输入和输出操作
回答错误!
正确答案:
B
已知字母A的ASCII码为十进制的65,charc5,c5;c5='A'+'5'-'3';c5='A'+'6'-'3';,则printf("%d,%c\n",c5,c5);的输出是()。
收藏
A.
67,D
B.
不确定的值
C.
C,D
D.
B,C
回答错误!
正确答案:
A
下列不能输出字符B的是:
收藏
A.
putchar(66);
B.
putchar(ˊ\x41ˊ);
C.
putchar(ˊ\101ˊ);
D.
putchar(ˊ\x42ˊ);
回答错误!
正确答案:
B
函数中的形参和调用时的实参都是变量时,传递方式为()。
收藏
A.
双向传递
B.
地址传递
C.
值传递
D.
别名传递
回答错误!
正确答案:
C
在定义inta[2][3];之后,对数组a的引用正确的是()。
收藏
A.
a[1,3]
B.
a[1>2][!
1]
C.
a[2][0]
D.
a(1,2)
回答错误!
正确答案:
B
若有inta[5][4];,则数组a的第12个元素是。
收藏
A.
a[1][0]
B.
a[2][2]
C.
a[2][0]
D.
a[2][3]
回答错误!
正确答案:
D
若intw=1,x=2,y=3,z=4;则条件表达式“w>x?
w:
y<z?
y:
z”的结果为:
;
收藏
A.
2
B.
4
C.
3
D.
1
回答错误!
正确答案:
C
在C语言中,不正确的常量是()
收藏
A.
0xf6
B.
0876
C.
.5e-6
D.
+3e+2
回答错误!
正确答案:
B
若有定义floatw;inta,b;,则合法的switch语句是()。
收藏
A.
switch(b){case1:
printf("*\n");default:
printf("\n");case1+2:
printf("**\n");}
B.
switch(a+b);{case1:
printf("*\n");case2:
printf("**\n");default:
printf("\n");}
C.
switch(a);{case1printf("*\n");case2printf("**\n");}
D.
switch(w){case1.0:
printf("*\n");case2.0:
printf("**\n");}
回答错误!
正确答案:
D
能正确表示条件x≥y≥z的C语言表达式是()。
收藏
A.
(x>=y)&(y>=z)
B.
(x>=y).AND.(y>=z)
C.
(x>=y)&&(y>=z)
D.
(x>=y>=z)
回答错误!
正确答案:
C
在主函数中定义的变量()。
收藏
A.
可以在所有函数中有效
B.
可以在整个文件中有效
C.
可以在被调用的函数中有效
D.
只在主函数中有效
回答错误!
正确答案:
D
设有语句:
inta[10]={0,1,2,3,4,5,6,7,8,9},i,*p=a;,下列表达式中,对a数组元素引用错误的是()。
收藏
A.
p[i]
B.
*(*a(a+i))
C.
*(&a[i])
D.
a[p-a]
回答错误!
正确答案:
B
在说明一个结构体变量时系统分配给它的存储空间是()。
收藏
A.
该结构体中的最后一个成员所需存储空间
B.
该结构体占用最大存储空间的成员所需存储空间
C.
该结构体中的第一个成员所需存储空间
D.
该结构体中所有成员所需存储空间的总和
回答错误!
正确答案:
D
若有charc[6]={'H','e','l','l','o'};,则c[5]的值是()。
收藏
A.
'0'
B.
不可知的
C.
'\0'
D.
空格
回答错误!
正确答案:
C
下列四条语句中,有语法错误的语句是()。
收藏
A.
if((a=b)>=0)m=a;
B.
if(a
<>
C.
if((a=b;)>=0)m=a;
D.
if(a>b)m=a;
回答错误!
正确答案:
C
若有inta[10],*p=a;,则()。
收藏
A.
p+=2相当于p=sizeof(a)/10
B.
p++可以使p指向下一个元素,即a[1]的首地址
C.
p++可以使p指向下一个字节
D.
p+=2可以使p指向下一个元素,即a[1]的首地址
回答错误!
正确答案:
B
以下程序的输出结果是:
main(){intx,y=0;for(x=1;x<10;x+=2)y++;printf("%d",y);}
收藏
A.
6
B.
7
C.
4
D.
5
回答错误!
正确答案:
D
设chars[10];inti=5;,下列表达式中,正确的表达式是()。
收藏
A.
s[i+6]
B.
*(&s+i)
C.
*(s+i)
D.
*((s++)+i
回答错误!
正确答案:
C
下列选项中关于register变量,正确的是()。
收藏
A.
频繁存取的自动变量适于定义为register变量
B.
静态存储的内部变量,适于定义为register变量
C.
存储单元较大的变量,适于定义register变量
D.
外部变量适于定义为register变量
回答错误!
正确答案:
A
若有inta=3,*pa;floatf=4.5,*pf=&f;,则下列表述中,错误的是()。
收藏
A.
pa=&f
B.
*pf=a+f
C.
pf=&f
D.
pa=&a
回答错误!
正确答案:
A
可以利用()从函数中得到多个返回值。
收藏
A.
局部变量
B.
全局变量
C.
实参
D.
形参
回答错误!
正确答案:
B
若inta=5,b=6,c=7,d=8,m=2,n=2;则逻辑表达式(m=a>b)&&(n=c>d)运算后,n的值为():
收藏
A.
3
B.
0
C.
1
D.
2
回答错误!
正确答案:
D
函数调用语句fseek(fp,-10L,2)的含义是()。
收藏
A.
将文件位置指针移至距文件尾10个字节处
B.
将文件位置指针从当前位置向文件头方向移10个字节
C.
将文件位置指针从当前位置向文件尾方向移10个字节
D.
将文件位置指针移动距文件头10个字节处
回答错误!
正确答案:
A
下列说法中,不正确的说法是()。
收藏
A.
可以在定义数组时对数组元素赋予初值
B.
对数组元素赋予的初值也可以依次放在一对圆括号内
C.
可以在定义数组时只给一部分数组元素赋值
D.
C语言规定只能逐个引用数组元素而不能一次引用整个数组
回答错误!
正确答案:
B
已知定义“intx=1,*p”,则合法的赋值表达式是()。
收藏
A.
p=&x
B.
*p=*x
C.
*p=&x
D.
p=x
回答错误!
正确答案:
A
下列表述中,合法的字符常量是()。
收藏
A.
"B"
B.
68
C.
\010'
D.
B
回答错误!
正确答案:
B
fp是文件指针,str是一个字符串,n是一个整数,向文件中输出数据的正确格式是()。
收藏
A.
fprintf("%s,%d\n",str,n,fp);
B.
fprintf(fp,"%s,%d\n",str,n);
C.
fprintf("%s,%dfp\n",str,n);
D.
fprintf("fp%s,%d\n",str,n);
回答错误!
正确答案:
B
执行语句for(i=l;i++<4;);后,变量i的值是()。
收藏
A.
不定
B.
4
C.
5
D.
3
回答错误!
正确答案:
C
若x=10,则表达式x+=3+x%(-3)的值为()。
收藏
A.
11
B.
15
C.
14
D.
12
回答错误!
正确答案:
C
对于inta[10];,下列正确的是。
收藏
A.
a[9+1]
B.
a(6)
C.
a[10]
D.
a[10-10]
回答错误!
正确答案:
D
以下程序的输出结果是:
main(){intx;for(x=1;x<10;x++)for(x=10;x<10;x++);printf("%d",x);}
收藏
A.
12
B.
9
C.
10
D.
11
回答错误!
正确答案:
D
执行程序段inti,sum;for(i=1;i<6;i++)sum+=i;printf("%d\n",sum);,sum的值是()。
收藏
A.
15
B.
0
C.
不确定
D.
14
回答错误!
正确答案:
C
若i,j已定义为int类型,则在程序段for(i=5;i;i--)for(j=0;j<4;j++){...}中,内循环体的总的执行次数是()。
收藏
A.
25
B.
30
C.
20
D.
24
回答错误!
正确答案:
C
在以下关于C语言的叙述中,正确的说法是:
收藏
A.
C语言比汇编语言快
B.
C语言比BASIC语言快
C.
C语言比BASIC语言慢
D.
C语言比BASIC语言和汇编语言都快
回答错误!
正确答案:
B
若已定义:
inta[]={0,1,2,3,4,5,6,7,8,9},*p=a,i;其中0≤i≤9,则对a数组元素不正确的引用是:
收藏
A.
a[10]
B.
*(&a[i])
C.
a[p-a]
D.
p[i]
回答错误!
正确答案:
A
设有定义语句“struct{inta;floatb;charc;}abc;”,则对结构体成员a的引用可以是()。
收藏
A.
abc->a
B.
abc>a
C.
abc.a
D.
abc-a
回答错误!
正确答案:
C
若有main(){intx='f';printf("%c\n",'A'+(x-'a'+1));},程序执行后的输出结果是()。
收藏
A.
I
B.
J
C.
G
D.
H
回答错误!
正确答案:
C
fp是文件指针,str是一个字符串,n是一个整数,向文件中输出数据的正确格式是:
收藏
A.
fprintf(fp,"%s,%d\n",str,n);
B.
fprintf("%s,%d\n",str,n,fp);
C.
fprintf("%s,%dfp\n",str,n);
D.
fprintf("fp%s,%d\n",str,n);
回答错误!
正确答案:
A
要把高级语言编写的源程序转换为目标程序,需要使用:
收藏
A.
诊断程序
B.
驱动程序
C.
编辑程序
D.
编译程序
回答错误!
正确答案:
D
如果在定义函数时不指定函数类型,系统会隐含指定函数类型为()型。
收藏
A.
void
B.
double
C.
int
D.
float
回答错误!
正确答案:
C
以下不合法的表达式是():
收藏
A.
y+x==10;
B.
x=y=200;
C.
5+(x=10);
D.
5+x=10;
回答错误!
正确答案:
D
执行charstr[10]="Ch\nina";strlen(str);的结果是()。
收藏
A.
6
B.
9
C.
8
D.
7
回答错误!
正确答案:
A
下列表述中,合法的C语言赋值语句是()。
收藏
A.
k=int(a+b);
B.
a=58,b=58
C.
i++;
D.
a=b=58
回答错误!
正确答案:
C
若有inta[][3]={1,2,3,4,5,6,7,8,9,10,11,12};,则数组a的第1维的长度()。
收藏
A.
为3
B.
未知
C.
为2
D.
为4
回答错误!
正确答案:
D
从下列选项中选择不会引起二义性的宏定义是()
收藏
A.
#defineCUBE(x)((x)*(x)*(x))
B.
#defineCUBE(x)x*x*x
C.
#defineCUBE(x)(x)*(x)*(x)
D.
#defineCUBE(x)(x*x*x)
回答错误!
正确答案:
A
一个C程序的执行是从()。
收藏
A.
第一个函数开始,直到最后一个函数结束
B.
main()函数开始,直到最后一个函数结束
C.
main()函数开始,在main()函数中结束
D.
第一个语句开始,直到最后一个语句结束
回答错误!
正确答案:
C
能正确表示逻辑关系“a≥10或a≤0”的C语言表达式是()。
收藏
A.
a>=0|a<=10
B.
a>=10ora<=0
C.
a>=10||a<=0
D.
a>=10&&a<=0
回答错误!
正确答案:
C
在C程序中,main()的位置()。
收藏
A.
可以任意
B.
必须放在它所调用的函数之后
C.
必须作为第一个函数
D.
必须作为最后一个函数
回答错误!
正确答案:
A
已定义c为字符型变量,则下列语句中,正确的语句是()。
收藏
A.
c='97';
B.
c="a";
C.
c=97;
D.
c="97";
回答错误!
正确答案:
C
以下合法的赋值语句是():
收藏
A.
x=y=100;
B.
c=int(a+b);
C.
x+y=100;
D.
d+5=10;
回答错误!
正确答案:
A
对于链接,正确的说法为()。
收藏
A.
链接是将源程序、目标程序和其他源程序链接到一起,生成可执行程序。
B.
链接是将源程序、库函数和其他源程序链接到一起,生成可执行程序。
C.
链接是将目标程序、库函数和其他目标程序链接到一起,生成可执行程序。
D.
链接是将源程序和库函数链接到一起,生成可执行程序。
回答错误!
正确答案:
C
若有func((v1,v2),(v3,v4,v5),v6)调用,说明函数func有()个形参。
收藏
A.
4
B.
5
C.
3
D.
6
回答错误!
正确答案:
C
在程序段x=-1;do{x=x*x;}while(!
x);中,()。
收藏
A.
系统将提示有语法错误
B.
循环体将执行无限次
C.
循环体将执行一次
D.
循环体将执行两次
回答错误!
正确答案:
C
下列运算符中,结合方向为自右至左的是()。
收藏
A.
=
B.
&&
C.
+
D.
>
回答错误!
正确答案:
A
能将高级语言编写的源程序转换成目标程序的是()。
收藏
A.
编程程序
B.
编译程序
C.
链接程序
D.
解释程序
回答错误!
正确答案:
B
下列不能输出字符B的是():
收藏
A.
putchar(ˊx41ˊ);
B.
putchar(ˊx41ˊ+1);
C.
putchar(