2006年4月计算机等级考试二级C笔试试题
分类: 计算机
时间: 2022-09-23 16:37:53
作者: 全国等级考试资料网
(28)有如下程序
main()
{ int x=3;
do
{ printf("%d",x--);}
while(!x);
}
该程序的执行结果是________。
A)321 B)3
C)不输出任何内容 D)陷入死循环
答案:B
评析:本题x赋初值为3,当执行printf("%d",x--);时,由于X--的作用是先运算x,再将x的值减l,所以,printf输出的x值为3,等输出后,x的值减1变为2,继续执行,判断条件!x为假,循环只被执行一次。
(29)设有声明语句:char a=’\72’;则变量a__________
A)包含1个字符B)包含2个字符
C)包含3个字符D)声明不合法
答案:A
评析:转义字符常量’xx’可以把’\’后面的数字转换为对应的ASCII字符。
(30)有以下程序段:
main()
{
int a=5,*b,**c
c==&b;b=&a;
}
程序在执行了c=&b;b=&a;语句后,表达式ttc的值是__________。
A)变量a的地址B)变量b中的地址
C)变量a中的值D)变量b的地址
答案:C
评析:指针变量是用来存放地址的。&:取地址运算符。+:指针运算符。**c为指针变量*c所指向的存储单元,*c为指针指针变量c所指向的存储单元,而c=&b表示c为变量b的地址,b=&a表示b为变量a的地址。表达式一c的值就是变量a中的值。
(31)有如下函数调用语句
func(recl,rec2+rec3,(rec4,rec5));
该函数调用语句中,含有的实参个数是________。
A)3 B)4
C)5 D)有语法错误
答案:A
评析:(rec4,rec5)是逗号表达式,它的值是rec5的值。所以该函数调用语句含有的实参个数是3。
(32)有如下程序
main()
{
char s[115]={.tabc","de","fgh"};
printf("%e",s[2][6]);
}
其输出为__________。
A)不确定 B)编译错误
C)g D)输出null字符
答案:A
评析:由于s[2116]表示字符串已超出了数组s的表示范围,在c中不会对数组越界进行检查,当数组越界时,会得到一个不确定的值。
首页 1 2 3 4 5 6 7 尾页
main()
{ int x=3;
do
{ printf("%d",x--);}
while(!x);
}
该程序的执行结果是________。
A)321 B)3
C)不输出任何内容 D)陷入死循环
答案:B
评析:本题x赋初值为3,当执行printf("%d",x--);时,由于X--的作用是先运算x,再将x的值减l,所以,printf输出的x值为3,等输出后,x的值减1变为2,继续执行,判断条件!x为假,循环只被执行一次。
(29)设有声明语句:char a=’\72’;则变量a__________
A)包含1个字符B)包含2个字符
C)包含3个字符D)声明不合法
答案:A
评析:转义字符常量’xx’可以把’\’后面的数字转换为对应的ASCII字符。
(30)有以下程序段:
main()
{
int a=5,*b,**c
c==&b;b=&a;
}
程序在执行了c=&b;b=&a;语句后,表达式ttc的值是__________。
A)变量a的地址B)变量b中的地址
C)变量a中的值D)变量b的地址
答案:C
评析:指针变量是用来存放地址的。&:取地址运算符。+:指针运算符。**c为指针变量*c所指向的存储单元,*c为指针指针变量c所指向的存储单元,而c=&b表示c为变量b的地址,b=&a表示b为变量a的地址。表达式一c的值就是变量a中的值。
(31)有如下函数调用语句
func(recl,rec2+rec3,(rec4,rec5));
该函数调用语句中,含有的实参个数是________。
A)3 B)4
C)5 D)有语法错误
答案:A
评析:(rec4,rec5)是逗号表达式,它的值是rec5的值。所以该函数调用语句含有的实参个数是3。
(32)有如下程序
main()
{
char s[115]={.tabc","de","fgh"};
printf("%e",s[2][6]);
}
其输出为__________。
A)不确定 B)编译错误
C)g D)输出null字符
答案:A
评析:由于s[2116]表示字符串已超出了数组s的表示范围,在c中不会对数组越界进行检查,当数组越界时,会得到一个不确定的值。
首页 1 2 3 4 5 6 7 尾页