111、函数调用语句fun((exp1,exp2), (exp3,exp4,exp5))中实参的个数是( B )。 (2分) A、1B、2 C、4D、5
112、有程序 char s[]=”ABCD”, *P; for(p=s+1; p
A、ABCD BCD CD D B、A B C D C、B C D D、BCD CD D 113、当说明一个共用体变量时系统分配给它的内存是(C )(2分) A、各成员所需内存量的总和。
B、第一个成员所需内存量。 C、成员中占内存量最大者所需的容量。 D、最后一个成员所需内存量。
114、系统的标准输入文件是指是(A )(2分) A、键盘B、显示器 C、软盘D、硬盘
115、下列运算符中,结合性为自左向右的是(B)(2分) A、?: B、, C、+=D、++
116、以下选项中正确的实型常量是(B)(2分) A、0 B、3.1415 C、0.03x10 D、.32
117、若变量c为char类型,能正确判断出c为小写字母的表达式是 (D)(2分) A、 'a'<=c<= 'z' B、 (c>= 'a')||(c<= 'z') C、 ('a'<=c)and ('z'>=c) D、 (c>= 'a')&&(c<= 'z') 118、若所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是(B)(2分) A、7 B、8 C、6D、2
119、若执行以下语句:int  a;float b,c;scanf(“-?O”, &a, &b, &c); printf(“\\na=%d,b=%f,c=%f\\n”,a, b, c);在键盘上从第一列开始,输入9876543210
A、a=98,b=765,c=4321B、a=10,b=432,c=8765 C、a=98,b=765.000000,c=4321.000000 D、a=98,b=765.0,c=4321.0
120、有以下语句 int m=0,n=0; char c='a'; scanf(\ printf(\若从键盘上输入:10A10<回车>,则输出结果是(A)(2分) A、10,A,10 B、 10,a,10 C、 10,a,0 D、 10,A,0
121、执行下列语句int x=10,y=10;printf(\后的输出是(D)(2分) A、10 10 B、9 9 C、9 10 D、10 9
122、下列表达式中,( C )不满足“当x的值为偶数时值为真,为奇数时值为假”的要求。 A、x%2==0 B、!x%2!=0 C、(x/2*2-x)==0 D、!(x%2)
123、已知:int n,i=1,j=2;执行语句n=i 124、执行语句for(I=1;I++<4; );后变量I的值是(  C  )。(2分)  A、3  B、4 C、5  D、不定  125、a和b为int型变量,则执行a=1;b=10;do {b- =a;a++; } while (b--<0);后b的值为(  C  )。            (2分)   A、9B、-2 C、-1D、8   126、有程序段char  a[3],b[ ]=\ 则( C  )。 (2分)   A、运行后将输出China    B、运行后将输出Ch   C、编译出错  D、运行后将输出Chi 127、不能正确为字符数组输入数据的是( A  )。 (2分)  A、char s[5]; scanf(\,&s);    B、char s[5]; scanf(\,s); C、char s[5]; scanf(\,&s[0]);   D、char s[5]; gets(s);   9    128、程序段char   s[]=\ (\的输出结果是(  A    )。(2分)  A、9 B、12  C、13D、14  129、已知:char s[20]=\则不能引用字母o的表达式是 (    A   )。           (2分)   A、ps+2     B、s[2]  C、ps[2]  D、ps+=2,*ps  130下列关于文件打开方式“w”和“a”的描述中,错误的是(D )(2分)  A、它们都可以向文件写入数据。   B、以“w”方式打开的文件从头写入数据。 C、以“a”方式打开的文件从尾写入数据。  D、它们都不清除原文件内容。 131、C语言程序的注释是(A)(2分)   A、由\开头,\结尾B、由\开头,\结尾C、由\开头D、由\或\开头  133、若有以下类型说明语句:char w; int x; float y; double z;则表达式 w*x+z-y 的结果类型是(D)(2分)   A、float    B、char        C、int        D、double 134、以下选项中属于C语言的数据类型是(C)(2分)  A、 复数型 B、 逻辑型 C、 双精度型 D、 集合型  `135、若已定义x和y为double类型,则表达式x=1,y=x+3/2 的值是 (c)(2分)  A、 1 B、 2 C、 2.0 D、 2.5  137、对于程序段 int a,b=1,c=2; a=b+c,a+b,c+3; c=(c)?a++:b--; printf(\正确的说法是( A   )。(2分)   A、无错误B、第三句有错误C、第四句有错误D、第五句有错误  138、对于条件表达式(k)?(i++):(i--)来说,其中的表达式k等价于(   C  )。(2分)  A、k==0 B、k==C、k!=0D、k!=1 139、以下描述正确的是(  C  )。(2分)   A、由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句。   B、do-while循环由do开始,用while结束,在while(表达式)后面不能写分号。  C、在do-while循环体中,一定要有能使while后面表达式的值变成零(“假”)的操作。  D、do-while循环中,根据情况可以省略while   140、若使用一维数组名作函数实参,则以下正确的说法是(  A   )。(2分)  A、 必须在主调函数中说明此数组的大小  B、实参数组类型与形参数组类型可以不匹配  C、在被调函数中,不需要考虑形参数组的大小  D、实参数组名与形参数组名必须一致 141、函数从形式上可分为(B  )两类。(2分)  A、嵌套函数和被嵌套函数  B、无参函数和有参函数  C、标准函数和自定义函数  D、调用函数和被调用函数  142、已知:char b[5],*p=b;则正确的赋值语句是(  D   )。            (2分)  A、b=\     B、*b=\       C、p=\      D、*p=\ 143、设有说明语句“struct stu{  int a;  float b;}stutype;”,则叙述不正确的是(D )(2分)  A、stuct是结构体类型的关键字。  B、struct stu是用户定义的结构体类型。   10     C、stutype是用户定义的结构体类型名。  D、a和b都是结构体成员名。  144、以“w+”方式打开一个文件,下列描述中正确的是( C)(2分)   A、文件打开时,原有文件内容不被删除,位置指针移动文件末尾,可进行写和读操作。    B、文件打开时,原有文件内容不被删除,位置指针移动文件开头,可进行重写和读操作。  C、文件打开时,原有文件内容被删除,可进行写和读操作。   D、以上说法都不正确。  145、若变量已正确定义并赋值,下面符合C语言语法的表达式是(B)(2分)  A、 a:=b+1 B、 a=b=c+2  C、 int 18.5%3 D、 a=a+7=c+b  146、为表示“x大于等于y, y大于等于z”,应使用C语言表达式(A)(2分)  A、(x>=Y)&&(Y>=z)       B、(x>=Y)AND(y>=z) C、(x>=Y>=z)       D、(x>=Y)&(Y>=z)    147、若变量已正确定义,要将a和b中的数进行交换,下面不正确的语句是(C)(2分)  A、a=a+b, b=a-b, a=a-b; B、t=a; a=b; b=t; C、a=t; t=b; b=a;D、t=b; b=a; a=t;  148以下语句char c='a';if('a' 149、程序段 int a=1,b=2, c=3, t;  while (a 150若二维数组a有m列,则在a[i][j]前面的元素个数为( 不 )。(2分)  A、j*m+iB、i*m+j C、i*m+j-1D、i*m+j+1 151、以下不正确的定义语句是(  B )。(2分)  A、double x[5]={2.0,4.0,6.0,8.0,10.0};   B、int y[5]={0,1,3,5,7,9}; C、char c1[]={‘1’,’2’,’3’,’4’,’5’};  D、char c2[]={‘\\x10’,’\\xa’,’\\x8’};  152、若有说明:int  a[][4]={0,0};则下面正确的叙述是(   )。(2分)  A、数组a中每个元素均可得到初值0   B、二维数组a的第一维大小为1 C、因为二维数组a中第二维大小的值除以初值个数的商为1,故数组a的行数为1   D、只有元  素a[0][0]和a[0][1]可得到初值0,其余元素均得不到初值0 153 表示指向结构体变量的指针的运算符是(C )(2分)  A、>>B、<< C、-> D、:  155、若执行以下程序段: int  a=0, b=0, c=0;c=(a-=a-5), (a=b, b+3); printf(“%d,%d,%d\\n”,a, b, c); 其输出结果是(B)(2分)   A、0,0,-10 B、0,0,5   C、-10,3,-10  D、3,3,-10  156、程序段char a[7]=”abcdef”; char b[4]=”ABC”;  strcpy(a,b); printf(“%c”,a[5]); 输出结果是( D  )。(2分)   A、一个空格   B、\\0  C、e D、f  157在C语言中,若对函数类型未加明显式说明,则函数的隐含类型是( C )类型。(2分)  A、void  B、double C、int  D、char  158、对于某个函数调用,不用给出被调用函数的原形的情况是(   C  )。(2分)  A、被调用函数是无参函数   B、被调用函数是无返回值的函数 C、函数的定义在调用处之前   11     D、函获得的定义在别的程序文件中  5、若有定义:int a=7;float x=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是(A)(2分)  A、 2.500000     B、 2.750000      C、 3.500000     D、 0.000000 160、以下运算符中,运算对象必须是整型的是 (B)(2分)  A、  /    B、 %= C、 !=   D、〈=    7、若变量已正确说明为float类型,要通过语句scanf(\给a赋于10.0,b赋予22.0,c赋予33.0,不正确的输入形式是:(B)(2分)   A、 10<回车>22<回车>33<回车>B、 10.0,22.0,33.0<回车>C、 10.0<回车>22.0  33.0<回车>  D、 10  22<回车>33<回车>  161、若有定义:int a=3,b=2,c=1;并有表达式:①a%b,②a>b>c,③b&&c+1,④c+=1,则表达式值相等的是(  C    )。(2分)   A、①和②B、②和③C、①和③D、③和④   162、在C语言中,一位数组的定义方式为:类型说明符 数组名(A)。(2分)  A、[常量表达]B、整型表达式C、[整型常量]或[整型表达式] D、[整型常量] 163、若用数组名作为函数调用的实参,传递给形参的是(  A   )。(2分)   A、数组的首地址B、数组第一个元素的值C、数组中全部元素的值D、数组元素的个数 164、能正确进行字符串赋值的是(  B )。 (2分)  A、char s[5]={'a','e','i','o','u'};   B、char s[5]; s=\、char s[5]=\  D、char s[5]; s[ ]=\ 165、C语言中数组名作为参数传递给函数,作为实在参数的数组名被处理为( D )。 (2分)  A、该数组的长度 B、该数组的元素个数 C、该数组中各元素的值D、该数组的首地址 166、已知:int a[10],*p=a;则下面说法不正确的是 (  A  )。(2分)  A、p指向数组元素a[0]                  int a[10],*p=&a[0];与上述语句等价      D、以上均不对  167、下列关于文件指针的描述中,错误的是(D )(2分)  A、文件指针是由文件类型FILE定义的。   B、文件指针是指向内存某个单元的地址值。 C、文件指针是用来对文件操作的标识。  D、文件指针在一个程序中只能有一个。  168C语言程序能够在不同的操作系统下运行,这说明C语言具有很好的(B)(2分)  A、适应性B、移植性 C、兼容性D、操作性 169、以下叙述不正确的是(D)(2分)  A、在C程序中,逗号运算符的优先级最低   B、在C程序中,APH和aph是两个不同的变量 C、若a和b类型相同,在执行了赋值表达式a=b后b的值将放入a中,而b的值不变    D、当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值 170、逻辑运算符两侧运算对象的数据类型可以是(   D  )。(2分)  A、只能是0或1B、只能是0或非0正数 C、只能是整型或字符型数据  D、可以是任何类型的数据  171、设int a=3,b=4,c=5,则下面表达式中,值为0的表达式是( D   )。           (2分)  A、'a'&&'b'B、a<=b C、a||b+c&&b-cD、!((a 172、有int n=0,p;do{scanf(“%d”,&p);n++;}while(p!=12345&&n<3);此处循环的结束条件是(   D  )。(2分)   B、数组名a表示数组中第一个元素的地址 C、  12