资源描述:
《c语言测试卷及答案》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、***************************************************C语言程序设计试卷(二)一、单项选择题(1~30题每小题1分,31~45题每小题2分,共60分)1. 以下合法的用户自定义标识符是(D)。A、b-bB、floatC、D、_isw2. 若变量已正确定义并赋值,以下不符合C语言语法的表达式是(B)。A、a*b/c;B、3.14%2C、2,bD、a/b/c3. 下列不正确的字符常量是(C)A、'n'B、'1'C、"a"D、'101'4. 在C语言中,表示逻辑值
2、“真”用(B)A、1B、非0的数C、非1的数D、大于0的数5. 把x、y定义成float类型变量,并赋同一初值3.14是(C)A、floatx,y=3.14;B、floatx,y=2*3.14;C、floatx=3.14,y=x=3.14;D、floatx=y=3.14;6. 若变量已正确定义,值不为2的表达式是(C)A、2&3B、1<<1C、a==2D、1^37. 若变量已正确定义,和语句“if(a>b)k=0;elsek=1;”等价的是(C)A、k=(a>b)?1:0;B、k=a>b;C、k=a<=b;
3、D、a<=b?0:1;8. 设变量定义为“inta,b;”,执行下列语句时,若a和b的值都是10,则应输入(D)scanf("a=%d,b=%d",&a,&b);A、1010B、10,10C、a=10b=10D、a=10,b=109. 下列程序的输出结果是(D)fun(inta,intb,intc){c=a*b;}voidmain(){intc;fun(2,3,c);printf(”%dn”,c);}A、0B、1C、6D、无法确定10. 在C程序中,若对函数类型未加说明,则函数的隐含类型为(A)A、intB、d
4、oubleC、voidD、char11. 表达式strlen(”hello”)的值是(B)A、4B、5C、6D、712. 设变量定义为“inta[4];”,则不符合C语言语法的表达式是(D)A、*aB、a[0]C、aD、a++13. 设变量定义为“intx,*p=&x;”,则&*p相当于(A)A、pB、*pC、xD、*&x14. 若变量已正确定义,不能使指针p成为空指针的是(A)A、p=EOFB、p=0C、p=’’D、p=NULL15. 对于以下的变量定义,不符合C语言语法的表达式是(D)structnode{in
5、tlen;char*pk;}x={2,"right"},*p=&x;A、p->pkB、*p.pkC、*p->pkD、*x.pk 16.有如下程序intrunc(inta,intb){return(a+b);}main0{intx=2,y=5,z=8,r;r=func(func(x,y),z);printf(“%d”,r);}该程序的输出的结果是(D)A)12B)13C)14D)1517.对于基类型相同的两个指针变量之间,不能进行的运算是(C)A)
6、序longfib(intn){if(n>2)return(fib(n-1)+fib(n-2));elsereturn(2);}main0{printf(“%d”,fib(3));该程序的输出结果是(B)A}2B}4C}6D}819.有如下定义structperson{charname[9];intage;};strictpersonclass[10]={“Johu”,17,“Paul”,19“Mary”,18,“Adam16,};根据上述定义,能输出字母M的语句是(
7、D)A)prinft(“%c”,class[3].mane);B)pfintf(“%c”,class[3].name[1]);C)prinft(“%c”,class[2].name[1]);D)printf(“%^c”,class[2].name[0]);20.以下所列的C语言常量中,错误的是(B)A)0xFFB)1.2e0.5C)2LD)‘72’21.有以下程序段intk=0while(k=1)k++;while循环执行的次数是(A)A)无限次B)有语法错,不能执行
8、C)一次也不执行D)执行1次22.以下程序的输出结果是(C)A)0B)29C)31D)无定值fun(intx,inty,intz){z=x*x+y*y;}main(){inta=31;fun(5,2,a);printf(“%d”,a);}23.下列程序段的输