高级语言程序设计(一)试题课程代码:00342一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。1.以下属于C语言保留字的是()A.fopenB.includeC.getD.unsigned2.C语言中,错误的int类型的常数是()A.1E5B.0C.037D.0xaf3.在C语言中,′a′和″a″存储所占用的字节数分别是()A.1,1B.1,2C.2,1D.2,24.对于数学表达式,正确的C语言表达式是()A.2sqrt(x)+(a+b)/3sin(x)B.2sqrt(x)+(a+b)/(3sin(x))C.2*sqrt(x)+(a+b)/3/sin(x)D.2*sqrt(x)+(a+b/3*sin(x))5.设intx=10,a=0,b=25;,条件表达式x<1?a+10︰b的值是()A.0B.1C.10D.256.C语言中,下列运算符优先级最高的是()A.!B.%C.>>D.==7.sizeof(double)是()A.函数调用B.int型表达式C.double型表达式D.非法表达式8.设有以下程序段:inta=1,b=10,c=1,x;x=a&&b||++c;printf(″%d,%d\n″,x,c);执行后输出的结果是()A.0,0B.0,1C.1,0D.1,19.设intx;,则以下语句中错误的输入是()A.scanf(″%d″,x);B.scanf(″%d″,&x);C.scanf(″%o″,&x);D.scanf(″%x″,&x);10.设int(*P)();,p的含义是()A.指向一维数组的指针变量B.指向二维数组的指针变量C.指向一个整型变量的指针变量D.指向整型函数的指针变量11.在C语言中,运算符″=″和″==″的功能分别是()A.关系运算和赋值运算B.赋值运算和关系运算C.都是关系运算D.都是赋值运算12.设intx[]={1,2,3,4,5},*p=x;,则值为3的表达式是()A.p+=2,*p++B.p+=2,*++pC.p+=2,p++D.p+=2,++*p13.设for(i=0,j=10;(j>0)&&(i<4);i++,j--);,该语句的循环次数是()A.0B.3C.4D.无限14.设函数定义如下:floatf1(floata,floatb){return(a+b);}若有floatx=1.1,y=2.2;,则以下语句中正确的函数调用是()A.printf(″%f″,f1(x));B.printf(″%f″,f1(&x,y));C.printf(″%f″,f1(*x,*y));D.printf(″%f″,f1(x,y));15.结构型变量占用内存的字节数是()A.各成员占用内存字节数之和B.第一个成员占用的内存字节数C.占用内存最大成员所需的字节数D.最后一个成员占用的内存字节数16.设enumcolor{purple,black,red,white}d;,若将d赋值为枚举常量red,则正确的是()A.d=(enumcolor)2;B.d=(enumcolor)3;C.d=″red″;D.d=color;17.若main()函数带参数,参数个数最多是()A.0B.1C.2D.318.设宏定义#definePI3.1415926,用宏名PI替换的是()A.算术表达式B.字符串C.单精度实型数D.双精度实型数19.调用系统函数fabs时,应选用的文件包含是()A.#include″stdio.h″B.#include″string.h″C.#include″ctype.h″D.#include″math.h″20.设structst{inti;intj;}*p;main(){structstm[]={{10,1},{20,2},{30,3}};p=m;printf(″%d\n″,(*++p).j);}则程序的输出结果是()A.1B.2C.3D.10二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。错填、不填均无分。21.C语言中,标准输入设备的文件指针名是___________________。22.一个C语言程序的基本组成单位是___________________。23.C语言中,&作为双目运算符表示的运算是___________________。24.连接两个字符串的系统函数名是___________________。25.设floata[4][5];,则数组a中第一维下标的最大值是___________________。26.设charstr[]=″book″;,则执行printf(″%d\n″,sizeof(str));后输出的值是___________________。27.设#defineF(x)x*xmain(){inta=3,b=4,c;c=F(a+b);printf(″%d\n″,c);}则程序执行后输出的值是___________________。28.设inta;floatb;charc;longd;doublee;,则表达式a/c-b+d-e值的类型是______________。29.设intx=5;x+=x-=x+x;则执行printf(″%d\n″,x);后输出的值是___________________。30.设union{inti;longj;chark;}t,*p=&t;则用指针法给t的成员i赋值为20的语句是___________________。三、程序分析题(本大题共5小题,每小题5分,共25分...