1 / 354
文档名称:

C语言笔试题带答案.docx

格式:docx   大小:2,243KB   页数:354页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

C语言笔试题带答案.docx

上传人:HShess 2022/6/19 文件大小:2.19 MB

下载得到文件列表

C语言笔试题带答案.docx

相关文档

文档介绍

文档介绍:C语言笔试题带答案
一、选择题(1)~(10)每小题2分,  (11)~(50)每小题1分,共60分)
下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确的选项涂写在答题卡相应位置上,答在试卷上不得分。
x=123A56;
printf(“%-5.2f\n”,x);
}
以上程序输出的结果是________。
A)123.4    B)123.5      C)123.45    D)123.46
答案:D
评析:f格式符,用来输出实数,以小数形式输出。“%-m.nf”的含义是:输出数据共占m列,其中n位小数,如果输出位数小于m。则右端补空格。如果总长度大于列数,则按实际情况四舍五入输出。
 
(16)下面语句的输出结果是________。
Printf(“%d\n”,strlen(“\t\”\065\xff\n”));
A)14          B)8
C)5           D)输出项不合法,无正常输出
答案:C
评析:在c语言中,以“\”开头的字符均为转义字符,其中“\”后可跟l~3位八进制数或在“\”后跟字母x及l~2位十六进制数,以此来代表一个特定的字符。
 
(17)下列程序的输出结果是________。
main()
{  int a=0,b=0,c=0;
if(++a>0lI++b>0)++c;
printf(“\na=%d,b=%d,c=%d”,a,b,C);
}
A)a=0,b=0,c=0       B)a=l,b=l,c=1
C)a=l,b=O, c=I       D)a=0, b=1.c=1
答案:C
评析:
“︱︱”是或运算,它有个“短路”的特点需特别注意,当“︱︱”运算符左边的表达式的值为真时,则程序就不再对“︱︱”右边的表达式的值进行运算,而是使得整个表达式的值直接为真。
 
(18)下列程序的输出结果是_________。
Main()
{  int i;
for(i=1;i+l;i++)
{  if(i>4){printlf(”%d”,i++);break;}
}
printf(“%d”,i++);
}
A)55                    B)56
C)程序错误,没有输出    D)循环条件永远为真,死循环
答案:B
评析:本程序中有个for循环,但注意到for循环的条件是“i+l”,也就是只要i+l的值为真(非零值均为真),就执行循环。当i=l的时,i+l的值为真,判断if条件不成立,执行i++,输出i的值为5。
 
(19)下列程序的输出结果是_________。
#define A 100
main()
{  int i=O,sum=O;
do{  if(I==(i/2)*2)continue;
sum+=i;
}while(++i<A);
printf(“%d\n”,sum);
}
A)2500    B)2050    C)4    D)O
答案:A
评析:本题程序的功能是求1到_99之问(包括1和99)所有奇数之和。程序中的while循环的终止条件为++i=100,在while循环体内,如果i是偶数,则执行continue,跳过这一次循环,执行下一次循环,否则求和。最后输出的值是1到99之间(包括l和99)所有奇数之和(1+99)*50/2=2500。
 
(20)下列程序的输出结果是_________。
main()
{  int I=3;
switch(i)
{ case 1:
case 2:printf(”%d”,i);
case 3:
case 4:break;
default:printf(”OK”);
}
}
A)0    B)3    C)OK    D)没有任何输出
答案:D
评析:在题中,i的值为3,由于“case 3:”后面没有break语句,所以继续向下执行“case 4:”后面的语句,由于“case 4:”后面的语句为break强行退出switch语句,所以,本题没有任何输出。
 
(21)下列程序执行后的输出结果是________。
main()
{  int m[][3]={1,4,7,2,5,8,3,6,9};
int i,k=2:
for(I=0;i<3;i++)
{printf(”%d”,m[k][i]);}
}
A)456    B)258    C)369    D)789
答案:C
评析:根据二维数组的定义得出:m[O][O]=1,m[O][1]=4,m[O][2]=7,m[1][0]=2,rail][1]=5,m[1]