好文档 - 专业文书写作范文服务资料分享网站

C语言笔试题带答案

天下 分享 时间: 加入收藏 我要投稿 点赞

else

printf(”%d %d\n”,b,a); }

A)-1 l B)0 l C)1 0 D)0 0 答案:C

评析:逻辑运算符的优先次序如下:!(非)→&&(与)→‖(或),但本题需特别、注意的是短路的概念。

(26)下面程序的输出结果是__________。 #define P1(x)printf(x) main() {

char d[]。”p”; Pl(d); P1(”d”); }

A)pd B)d”d” C)”p”d D)”p””d” 答案:A

评析:带参数的宏定义的一般形式为:#define宏名(参数表)字符串 程序中的Pl(d);经宏置换后为printf(d);,所以输出字符串p;程序中的Pl(“d”);经宏置换后printf(“d”)。

(27)以下选项中,能定义s为合法的结构体变量的是__________。

A) typedef struct abc { double a; charb[10]; }s; B) struct { double a; char b[10]; }s;

C) struct ABC { double a; char b[10]; } ABC s:

D) typedef ABC { double a; char b[10]; } ABC s: 答案:B

评析:定义一个结构体类型的变量,可采用三种方法:

①先定义结构体类型,再定义变量名;②在定义类型的同时定义变量:③直接定义结构类型变量,即不出现结构体名:选项B符合第三种定义方法。

(28)请读程序:

#include #include main() {

char*s1=”AbCdEf”, *s2=”aB”; s1++; s2++;

printf(”%d、n”,strcmp(sl,s2)); }

上面程序的输出结果是________。

A)正数 B)负数 C)零 D)不确定的值 答案:A

评析:strcmp(X1,X2)是串比较函数,本题中“s1”、“s2”分别表示这两个串中第一个字符的地址,s1++和s2++是将指针指向串的第二个字符,则*sl为“bCdEf’’,*s2为“B”。在字符串比较中,大小的确定是各个字符串相应位置字符的ASCII码值的大小决定的, sl>s2,返回值为正数。

(29)请读程序: #include main() {

int a=5,b=7,c=9;

printf(”%d,%d,”,a,b,C); printf(”%d,%d,%d,”a,b); }

上面程序的输出结果是________。

A)5,7,9,5,7 B)5,7,5,7 C)5,7,不定,7,9 D)5,7,5,7,不定 答案:D

评析:printf函数按格式控制符的个数输出表列中对应的数据,若输出表列的个数大于格式控制符个数,则输出与格式控制符对应的输出表列的数据,输出表列中多的则省略;若格式控制符个数大于输出表列的个数,则输出与格式控制符对应的输出表列的数据,格式控制符多的部分输出的数据是随机的。

(30)请读程序: #incIude func(int a,int b){ Int C; c=a+b: return C: } main(){

int x=6,y=7,z=8,r;

r=func((x–,y++,x+y),z–); printf(”%d\\n”,r); }

上面程序的输出结果是________。 A)ll B)20 C)2l D)31 答案:C

评析:函数func()的作用是返回两个形参的和,第一个形参是x、y分别自减和自增后的和,其中(x–,y++,x+y)是一个逗号表达式,它的值应该等于x+y,所以整个表达式(x–,y++,x+y)的值为13,而第二个形参的值为8(根据语法规则,应当先使用,后自增),所以func()的返回值为13+8=21。

(31)请读程序: #include main() {

int a,b;

for(a=l,b=1;a<=100;a十+){ if(b>=20)break;

if(b%3==1){b+=3;continue;} b-=5: }

printf(”%d\\n”,a); }

上面程序的输出结果是_________。 A)7 B)8 C)9 D)10 答案:B

评析:break语句的作用是用于跳出循环体; continue语句的作用是用于跳出本次循环。执行第一次循环时,(b%3==1)为真,b=4,继续下一次循环,如此反复,当b=22时结束循环,共循环8次,即a=8。

(32)设变量x为float型且已经赋值,则以下语句中能够将x中的数值保留到小数点后面两位,并将第三位四舍五入的是__________。

A)X=X*100+0.5/100.0 B)x=(X*100+0.5)/100 C)x=(int)(x*100+0.5)/100.0 D)x=(x/100+0.5)*100.0 答案:C

C语言笔试题带答案

elseprintf(”%d%d\n”,b,a);}A)-1lB)0lC)10D)00答案:C评析:逻辑运算符的优先次序如下:!(非)→&&(与)→‖(或),但本题需特别、注意的是短路的概念。(26)下面程序的输出结果是__________。#defineP1(
推荐度:
点击下载文档文档为doc格式
2ey9025wdf1ujtp7zqyg25ui718xfz018ys
领取福利

微信扫码领取福利

微信扫码分享