C语言重修复习题

合集下载

C语言重修复习卷C

C语言重修复习卷C

《C 语言程序设计》重修练习卷三•选择题1.下列选项中叙述错误的是 DA. C 程序中,各种括号应成对出现B. C 程序中,赋值号的左边不可以是表达式C. C 程序中,变量名的大小写是有区别的D.C 程序中,若未给变量赋初值,则变量的初值自动为2. 以下可用作C 语言用户标识符的一组是A. struct define WORDC. For -abc Casestrcat(str1,st ⑵ 执行后,str1 的值为 ______ D _____ 。

.stude ntC . stude ntch ina 4.已有说明:int a[4][5];并且已赋初值,则下列引用合法的是—C,A . a[4][2]B . a[2][5]C . a[2][1]D. a[0][6]5. 执行语句 for(i=1;i<4; i++);后,i 的值是 ______ B _____ 。

A. 3 B . 4C . 5D.不定6.执行下列程序输出的结果是D。

main (){int a[3][3]={{1} ,{2} , {3}} ;int b[3][3]={1 ,2, 3};printf( d \n 〃,a[1][0] + b[0][0]);}A . 0B . 1C . 2 D. 37 .为了避免嵌套的条件语句if-else 的二义性,C 语言规定: ________ D _____ A . else 与缩排位置相同的if 配对B . else 与同一行上的if 配对__B ________ 。

B . a3_b3 _123 IF D. 2a DO sizeof3 .若 char str1[20]="china ”,char str2[8]="student ”;则语句A . china D. chin astude ntC . else与其后最近的if配对D . else与其前最近的尚未配对的if配对8. C 语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是 B 。

08-09_1_C语言重修试卷

08-09_1_C语言重修试卷

南京工业职业技术学院2008/2009 第一学期重修考试试卷闭卷【√】课程:《C语言程序设计Ⅰ》出卷人:李虹考试类型:开卷【】适用班级:信息系07级申请重修的学生一、选择题(每题2分,共50分)1.在以下叙述中,正确的一条是_______。

A) C语言以函数为程序的基本单位,便于实现程序的模块化。

B) C程序的执行总是从程序第一句开始的。

C) C程序中可以不使用函数。

D) C语言提供了一个输入语句scanf和一个输出语句printf。

2.在C程序中,注释部分从哪开始,到哪结束?_______。

A) 从( 到) B) 从REM开始无结束标志C) 无起始标志D) 从/*开始,*/结束3.以下叙述中正确的是_______。

A) 在编译时可以发现注释中的拼写错误B) C语言程序的每一行只能写一条语句C) main( ) { }必须位于程序的开始D) C语言程序可以由一个或多个函数组成4.设C语言中,一个int型数据在内存中占2个字节,则unsigned int 型数据的取值范围为________。

A) 0~255 B) 0~32767 C) 0~65535 D) 0~21474836475. 63.57属于________种类的数据类型。

A) 浮点型B) 字符型C) 整型D) 以上均不正确6. 以下数据类型全属于字符型的是______。

(1) 'A'; (2) 65; (3) '65'; (4) '17.8'; (5) 7.0; (6) 'T'; (7) FA) (1)(6) B) -1 C) (1)(3)(4)(7) D) (1)(3)(4)(6)7. 一定不能进行算术运算的是_____类型的数据。

A) 逻辑型B) 字符型C) 实数D) 双精度型8. 字符的比较,可用对应的ASCII码来进行,下列说法正确的是________。

A) 'a'比'b'大B) 'd'比'Q'大C) 空格比逗号大D) 'H'比'R'大9. 只能进行"%"操作的数据类型是_______。

C语言程序设计重修试题

C语言程序设计重修试题

C语⾔程序设计重修试题南阳理⼯学院2010-2011学年第⼆学期重修试卷课程:C语⾔程序设计评卷⼈(签名):复核⼈(签名):(答案直接填写在试卷上)⼀、选择题(每题2分,共50分)1. 在C语⾔中,字符型数据在内存中是以(D )形式存放的。

A.原码B.BCD码C.反码D.ASCII码2. 若有以下类型说明语句char w; int x; float y; double z;则表达式w*x+z-y 的结果是(D)类型。

A.floatB.charC.intD.double3. 语句 char s='\092';的作⽤是( )A.s包含1个字符B.说明不合法, s的值不定。

C.使 s包含4个字符D.使 s包含3个字符4. 在C语⾔中,int, char, 和short三种类型数据所占⽤的内存( C)A.均为2个字节B.由⽤户⾃⼰定义C.由所⽤机器的机器字长决定D.是任意的5. 以下(C)是不正确的转义字符。

A.'\\'B.'\'C.'081'D.'\0'B.⼀个C源程序必须包含⼀个main函数C.C程序的基本组成单位是函数D.在C程序中注释说明只能位于⼀条语句的后⾯7. ⼀个C程序的执⾏是从( )A.本程序的main函数开始,到main函数结束B.本程序⽂件的第⼀个函数开始,到本程序的最后⼀个函数结束C.本程序的main函数开始,到本程序的最后⼀个函数结束D.本程序⽂件的第⼀个函数开始,到本程序main函数结束8. 若i, j已定义为int类型,则以下程序段中内循环体的总的执⾏次数是( ) for (i=5; i; i--) for(j=0; j<4; j++) {...} A. 20 B. 25 C. 24 D. 309. 若数组名作实参⽽指针变量作形参,函数调⽤实参传给形参的是 ( )A.数组的长度B.数组第⼀个元素的值C.数组所有元素的值D.数组第⼀个元素的地址10.若变量已正确定义并赋值,下⾯符合C语⾔语法的表达式是( )A. a:=b+1B. a=b=c+2C. int 18.5%3D. a=a+7=c+b11. 有如下程序main( ){ int y=3,x=3,z=1;printf(“%d %d\n”,(++x,y++),z+2);}运⾏该程序的输出结果是( )A. 3 4B. 4 2C. 4 3D. 3 312. 有如下程序int main( ){ int x=1, a=0, b=0;switch(x)case 2: a++; b++; }printf(“a=%d,b=%d\n”,a,b); return 0; }该程序的输出结果是( )A. a=2,b=1B. a=1,b=1C. a=1,b=0D. a=2,b=213. 有如下程序main(){ float x=2.0, y;if(x<0.0) y=0.0;else if(x<10.0) y=1.0/x;else y=1.0;printf(“%f\n”,y); }该程序的输出结果是( )A. 0.000000B. 0.250000C. 0.500000D. 1.00000014.有如下程序main ( ){ int x=23;do{ printf(“%d”,x--);} while(!x); }该程序的执⾏结果是( )A. 321B. 23C. 不输出任何内容D. 陷⼊死循环15.设有说明语句:char a=’\72’;则变量a( )A. 包含1个字符B. 包含2个字符C. 包含3个字符{ return(a+b); }main( ){ int x=2,y=5,z=8,r;r=func(func(x,y),z);printf(“%\d\n”,r); }该程序的输出的结果是( )A. 12B. 13C. 14D. 1517. 有如下程序段int *p, a=10,b=1;p=&a a=*p+b;执⾏该程序段后,a的值为( )A. 12B. 11C. 10D. 编译出错18. 在C语⾔中,函数的隐含存储类别是( )A. autoB. staticC. externD. ⽆存储类别19. 有如下说明int a[10]={1,2,3,4,5,6,7,8,9,10}, *p=a;则数值为9的表达式是( )A. *p+9B. *(p+8)C. *p+=9D. p+820.函数调⽤strcat(strcpy(str1,str2),str3)的功能是( )A. 将串str1复制到串str2中后再连接到串str3之后B. 将串str1连接到串str2之后再复制到串str3之后C. 将串str2复制到串str1中后再将串str3连接到串str1之后21.有如下程序,输出的结果()#includeint main(){int i,j,x=0;for(i=0;i<=2;i++){x++;for(j=0;j<3;j++){if(j%2)continue;x++;}x++;}x++;printf(“%d\n”,x)return 0; }A. 12B.13C.14D.722. 该源程序执⾏后,屏幕上显⽰() void main(){int a;float b;a=4;b=9.5;printf("a=%d,b=%4.2f\n",a,b);}A. a=%d,b=%f\nB. a=%d,b=%fD. a=4,b=9.523.已知有共⽤体变量data1定义如下:union data{ int i;char ch;float f;} data1; 则变量data1所占的内存存储空间可表⽰为()A. size of(int) B. size of(char)C. size of(float)D. size of(int)+size of(char)+size of(float)24. 下⾯语句执⾏完后,b的值为。

2021 2021学年第1学期 C语言程序设计重修班试卷(含答卷和参考答

2021 2021学年第1学期 C语言程序设计重修班试卷(含答卷和参考答

2021 2021学年第1学期 C语言程序设计重修班试卷(含答卷和参考答2021-2021学年第1学期-c语言程序设计重修班试卷(含答卷和参考答华侨大学10-11学年第一学期C语言程序设计复习课试卷学号________________姓名___________班级___________成绩______注意:请将所有答案写在答卷上!一、单项选择题(40分,每小题2分)1.在一个可运行的c源程序中,()。

a、可以有一个或多个主要功能。

C.不能有主要功能b.必须有且仅有一个main函数d.必须有main函数和其他函数c.inta=10,*b=&a;c.65cn%2.5c.3d、浮动*a,b=&a;d、 wdm=-1&&(m>n)d.82.以下定义声明中正确的定义是()。

a.chara='a'b='b';b.floata=b=10.0;a.\am=(n==5)a.7b、 '\\0x41'bm=sizeof(k)b.63.以下选项中合法的字符常量是()。

4.如果定义:INTM=4,n=5;漂浮;以下不符合C语言语法的表达式是()。

5.如果定义:intx,y,Z;语句x=(y=z=3,+y,z+=y);运行后,X的值为()。

6.运行以下程序段后,X的值为()。

inta=3,b=6,x;x=(a==b)?a++:--b;a.4a.3b、 3b.2c.6c.0d、 5d.17.若有定义:inta=3,b=4,c=5;则表达式!(a-b)||(c-b)的值为()。

8.如果定义:inta=3,B=5;要实现输出形式:3*5=15,正确的printf()函数调用语句是()。

a.printf(\c.printf(\b、 printf(\d.printf)(\9.以下程序段的运行结果是()。

ints=10;switch(s/4){案例1:printf(\case2:printf)(\case3:printf(\default:printf(\}a.bcb、 cc.bd、卡介苗10.在下列数组定义、初始化或赋值语句中,正确的是()。

C语言(重修)

C语言(重修)

一.填空题:(每空1.5分,共计30分)1.开发一个C源程序需要经过哪四步、、、。

2.C程序是由若干个函数组成的,如果一个程序只由一个函组成,那么这个函数一定是。

3.构成数组的各个元素必须具有相同的。

4.C语言中的数据根据它在程序中的变化分为和。

5.被调函数中的语句将表达式的值返回主调函数。

6.函数类型用关键字说明,表示函数不返回值。

7.二维数组a的第3行第5列的元素的名字是。

8.数组作为函数参数时,实参与形参间传递的是。

9.在函数内部定义的变量称为。

10.字符串常量“中华人民共和国”在内存中占个字节。

11.程序的三种结构是、和。

12.一个变量的地址称为变量的。

13.在C 语言中处理字符串的方法可以用和。

二.选择题(每题2分,共20分)1.下列选项中,合法的C语言关键字是()。

A VARB cherC integerD float2.若已正确定义x和y 为double类型,则表达式x=1,y=x+3/2的值是()。

A 1 B 2 C 0 D 2.53.在下列选项中,不正确的赋值语句是( )。

A ++t;B n1=(n2=(n3=0));C k=i=j;D a=b+c=1;4.以下叙述中正确的是()。

A 输入项可以是一个实型常量,如:scanf(“%f”,3.5);B 只有格式控制,没有输入项,也能正确输入数据到内存,如:scanf(“a=%d,b=%d);C 输入一个实型数据时,格式控制部分可以规定小数点后的位数,如:scanf(“%4.2f”,&d);D 当输入数据时,必须指明变量地址,如:scanf(“%f”,&f)5.语句while(!e)中的条件!e等价于()。

A e= = 0B e!=1C e!=0D e6.以下程序段()。

X=-1; do x=x*x; while(!x);A 是死循环B循环执行两次 C 循环执行一次 D 有语法错误7.C语言规定函数的返回值的类型是由()。

重修c语言试题及答案

重修c语言试题及答案

重修c语言试题及答案一、选择题(每题2分,共10分)1. 下列选项中,哪个是C语言中的合法变量名?A. 2variableB. variable2C. variable_2D. variable-2答案:C2. C语言中,用于定义一个整型数组的关键字是?A. intB. arrayC. listD. vector答案:A3. 在C语言中,哪个运算符用于比较两个值是否不相等?A. ==B. !=C. <=D. >=答案:B4. 下列哪个函数用于将字符串复制到另一个字符串?A. strcpyB. strcatC. strcmpD. strlen答案:A5. C语言中,哪个关键字用于定义一个函数?A. functionB. defC. defineD. void答案:D二、填空题(每题2分,共10分)1. 在C语言中,定义一个整型变量的正确语法是:______ int variable; ______。

答案:int2. 如果要声明一个指向整型的指针变量,应该使用以下语法:______ int *ptr;答案:int *3. C语言中,用于计算两个整数相加的函数是:______。

答案:add4. 要将一个字符数组转换为字符串,需要在数组的最后一个字符后面加上______。

答案:'\0'5. 在C语言中,使用______关键字可以定义一个无限循环。

答案:while三、简答题(每题5分,共20分)1. 请简述C语言中数组和指针的关系。

答案:在C语言中,数组名可以被看作指向数组首元素的指针。

数组的每个元素都可以通过指针访问,指针可以遍历整个数组。

2. 解释C语言中的预处理指令#include的作用。

答案:预处理指令#include用于告诉编译器包含一个头文件。

头文件通常包含了函数声明、宏定义、常量等,这些信息被包含在程序中,以便编译器能够正确地编译程序。

3. 描述C语言中函数的原型声明和定义的区别。

江西理工大学c语言复习参考题

江西理工大学c语言复习参考题

江西理工大学c语言复习参考题《C语言程序设计》复习参考资料一.选择题1.以下关于运算符优先顺序的描述中正确的是()。

A) 关系运算符< 算术运算符< 赋值运算符< 逻辑与运算符B) 逻辑运算符< 关系运算符< 算术运算符< 赋值运算符C) 赋值运算符< 逻辑与运算符< 关系运算符< 算术运算符D) 算术运算符< 关系运算符< 赋值运算符< 逻辑与运算符2.下列选项中合法的变量名是_________A) #define B) int C) a594_3 D) abs(x)3.以下正确的描述是()。

A) break语句的作用是结束整个循环的执行B)在C程序中,注释说明只能位于一条语句的后面C) 在循环体内使用break语句或continue语句的作用相同D) 从多层循环嵌套中退出时, 只能使用goto语句4.以下说法正确的是()A).#define 和printf 都是C 语句。

B).#define 是C语句,而printf不是。

C).若程序中要调用数学函数,必须在文件开头输入语句 #include “math.h”D). #define 和printf 都不是C 语句。

5.下面的函数定义正确的是______________A)float fun (float x ; float y) {return x*y;}B)float fun (float x,y) {return x*y;}C)float fun (x,y) {int x,y;return x*y;}D)int fun (int x, int y) {return x*y;}6.执行下面语句后的输出为( )int i=-1;if (i<=0) printf(“****\n”)else printf(“%%%%\n”)A). **** B). %%%%C). %%%%c D). 有语法错误,不能正确执行7.以下程序的输出结果是( )void main( ){int k=17;printf("%d, %o, %x \n ", k, k, k );}A). 17, 21, 11 B). 17, 17, 17C). 17, 0x11, 021 D). 17, 21, 18.以下不正确的叙述是()A)#define是宏定义命令B)宏定义只是做简单的置换,不做正确性检查C)宏定义是C语句,必须在行末加分号D)printf是C语句,但#define不是。

2011年C语言重修复习结合答案

2011年C语言重修复习结合答案

题型选择题(20题40分)编程题(3题39分) 判断题(6题12分) 填空题(3个空9分) 一、编程题复习题1编写程序代码,完成函数fun,使其计算以下分段函数,该函数的数学表达式是#include <stdio.h>#include <math.h>#include <conio.h>double fun(float x){/**/double y;if(x<0)y=x*x+1;else if(0<=x&&x<5)y=(sqrt(3*x+1));else double y=log10(x);return(y);/**/}void main(){ float x;double y;printf("Please input a number: ");scanf("%f",&x);printf("f(%.2f)=%.2f\n",x,fun(x));getch();}复习题2编写程序代码,完成函数fun1,使其计算以下分段函数,该函数的数学表达式是#include <stdio.h>#include <math.h>double fun1(float x){/**/double y;if(x<3)y=sin(x);else if(x==3)y=x;else y= cos(2*x+1);return(y);/**/}void main(){float x;double y;clrscr();printf("Please input a number:\n"); scanf("%f",&x);y = fun1(x);printf("fun1(%.4f)=%.4f\n",x,y);getch();}复习题3编写程序,根据三角形的三条边长a,b,c用公式#include <stdio.h>#include <math.h>Void main(){double a,b,c,d,s;scanf("%lf%lf%lf",&a,&b,&c);if(((a+b)>c)&&((a+c)>b)&&((b+c)>a)){s=(a+b+c)/2;d=sqrt(s*(s-a)*(s-b)*(s-c));printf("%lf\n",d);}else printf("-1\n");}复习题4编写程序代码,完成其中的fun(int n)函数,其功能是根据整型参数n(n从1开始)返回如下公式的计算值。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《C语言程序设计》重修复习题一、单项选择题1.判断char型变量c1是否为大写字母的正确表达式为( B )。

A) (c1>='A' || c1<='Z') B) (c1>='A' && c1<='Z')C) ('a'>=c1 || 'z'<=c1) D) (c1>='a' && c1<='z')2.一个C程序的执行是从( A )A)本程序的main函数开始,到main函数结束B)本程序文件的第一个函数开始,到本程序文件的最后-个函数结束C)本程序的main函数开始,到本程序文件的最后-个函数结束D)本程序文件的第一个函数开始,到本程序main函数结束3.C语言源程序的基本单位是(B )。

A 过程B 函数C 子程序D 标识符4.在C语言中(以16位PC机为例),5种基本数据类型的存储空间长度的排列顺序为( A )A)char<int <1ong int<=float<doubleB)char=int<1ong int<=float<doubleC)char< int <1ong int=float=doubleD)char=int =1ong int<=float<double5.在C语言中,要求运算数必须是整型的运算符是( D ):A) / B) * C) + D)%6.若x,i,j和k都是int型变量,则执行下面表达式后x的值为( C )x=(i=4,j=16,k=32)A)4 B)16 C)32 D)527.假设变量a,b,c均为整型,则表达式(a=2,b=5,++a+b++)的值是( B ):A)7 B)8 C)6 D)28.下列程序的输出结果是()。

main( ){ int a=7,b=5;printf("%d\n",b=b/a);}A 5B 1C 0 D随机值9.下列程序的输出结果是()。

main( ){ int a=7,b=5;printf("%d\n",b=b%a);}A 5B 1C 0 D随机值10.若C语言中一个int型数据在内存中占2个字节,则unsigned int型数据的取值范围为:( C )A)0~255 B)0~32767 C)0~65535 D)0~214748364711.printf函数中用到格式符%8s ,其中数字8表示输出的字符串占用5列。

如果字符串长度小于8,则按方式( C )输出A)左对齐输出该字串,右边补空格B)居中齐输出该字串,两边补空格C)右对齐输出该字串,左边补空格D)输出错误信息12.printf函数中用到格式符%5s ,其中数字5表示输出的字符串占用5列。

如果字符串长度大于5,则( B )A)从左起输出该字串,右补空格B)原样输出字符串C)右对齐输出该字串,左补空格D)输出错误信息13.以下能正确地定义整型变量a,b和c并为其赋初值5的语句是( C )A)int a=b=c= 5; B) int a,b, c= 5;C)int a= 5,b=5,c=5; D) a= b= c=5;14.已知学生记录描述为struct student{ int no;char name[20];char sex;struct{ int year;int month;int day;} birth;};struct student s;要求变量s的birth中的三个成员的值分别为2015、12、21,下列正确的赋值方式是( D )A) year= 2015;B) birth.year= 2015;month=12;birth.month=12;day=21;birth.day= 21;C) s.year= 2015; D) s.birth.year=2015;s.month=12;s.birth.month=12;s.day=21;s.birth.day=21;15.当说明一个结构体变量时系统分配给它的内存是( A )A)各成员所需内存量的总和B)结构中第一个成员所需内存量C)成员中占内存量最大者所需的容量D)结构中最后一个成员所需内存量16.以下对结构体类型变量std1的定义中不正确的是( D )。

A)#dedine STUDENT struct student B) structSTUDENT { int num;{ int num; float age;float age; }student;}std1; struct student std1; C) struct D) struct{ int num;{ int num;float age;float age;}std1; }student;17.设有以下说明定义struct stu{ int a;float b;}stutype;则下面的叙述不正确的是( C )A)struct是定义结构体类型的关键字B)stutype是用户定义的结构体变量名C)stutype是用户定义的结构体类型名D)a和b都是结构体的成员名18.若有以下说明和语句:struct student{int age;int num;}std,* p;p=&std;则以下对结构体变量std中成员age的引用方式不正确的是( D ) A)std.age B)p->ageC)(*p).age D)*p.age19.当说明一个共用体变量时系统分配给它的内存是( C )A)各成员所需内存量的总和B)结构中第一个成员所需内存量C)成员中占内存量最大者所需的容量D)结构中最后一个成员所需内存量20.以下对C语言中共用体类型数据的叙述正确的是( C )A)可以对共有体变量名直接赋值B)一个共用体变量中可以同时存放其所有成员的值C)一个共有体变量中不能同时存放其所有成员的值D)共用体类型定义中不能出现结构体类型的成员21.在16位机上使用C语言,若有如下定义:union data{int i;char ch;double f;}b;则共用体变量b占用内存的字节数是( C )A)1 B )2 C)8 D)1122.使用typedef定义一个新的类型标识符的正确步骤是( A )A)2,1,4,3 B)1,3,2,4 C)2,3,4,1 D)4,2,3,11.把变量名换成新类型名。

2.按定义变量的方法写出定义体。

3.用新类型名定义变量。

4.在最前面加上关键字typedef。

23.下面对typedef的叙述中不正确的是( B )A)用typedef可以定义各种类型名,但不能用来定义变量B)用typedef可以增加新类型C)用typedef只是将已存在的类型用一个新的标识符来代表D)使用tvpedef有利于程序的通用和移植24.在16位系统中,以下程序的运行结果是( A )typedef union {1ong a[2];int b[4];char c[8];}TY ;TY our;main(){printf("%d\n",sizeof(our));}A) 8 B)16 C)24 D)3225.在16位系统中,以下程序的运行结果是( D )tvpedef struct {1ong a[2];int b[4];char c[8];}TY ;TY our;main(){printf("%d\n",sizeof(our));}A) 8 B)16 C)24 D)3226.请阅读以下程序:main(){int a=5,b=0,c=0;if(a=b+c) printf("111\n ");e1se if(b=c) printf("222\n");else printf("333\n");}以上程序( C ) :A)输出111 B)输出222C)输出333 D)有语法错不能通过编译27.设有以下定义,值为5的枚举常量是()。

enum week{sun,mon=4,tue,wed,thu,fri,sat} w;A tueB satC friD thu28.为了避免在嵌套的条件语句If-else中产生二义性,C语言规定else子句总是与( B )配对。

A)缩排位置相同的if B)其之前最近的未配对的ifC) 之后最近的if D)同一行上的if29.对for(表达式1;;表达式3)可理解为( B ):A) for(表达式1; 0;表达式3)B) for(表达式1;1;表达式3)C) for(表达式1;表达式1;表达式3)D) for(表达式1;表达式3;表达式3)30.以下正确的描述是( B )。

A)continue语句的作用是结束整个循环的执行B)可在循环体内和switch语句体内使用break语句C)在循环体内使用break语句或continue语句的作用相同D)使用break语句能从多层循环的内循环体中跳出到最外层循环之外31.若有说明:int a[10];则以下对a数组元素的表示中正确的是( D )A)a[10] B) a5 C) a(5) D) a[0]32.以下能正确定义二维数组a的是( C )A) int a[3,4]; B)float a(3,4);C) double a[3][4]; D)float a(3)(4)33.以下不能对二维数组a进行正确初始化的语句是( C )A) int a[2][3]={0};B) int a[][3」={{1,2},{0}};C) int a[2][4]={{1,2},{3,4},{5,6}};D) int a[][3」={1,2,3,4,5,6};34.对以下说明语句的说明正确是( B )int a[10]={6,7,8,9,10};A)将5个初值依次赋给a[1]至a[5]B)将5个初值依次赋给a[0]至a[4]C)将5个初值依次赋给a[6]至a[10]D)因为数组长度与初值的个数不相同,所以此语句不正确35.下面是定义字符数组s并对其初始化,其中不正确的是( D )A) char s[5」={"abc"} B)char s[5]={'a','b','c'};C) char s[]="abcd" D)char s[5]="abcdef";36.对两个数组a和b进行如下初始化char a[]="ABCDEF";char b[]={’A’,’B’,’C’,’D’,’E’,’F’};则以下叙述正确的是( C )A) a与b数组完全相同B) a与b长度相同C) a数组比b数组元素多D)a和b中都存放字符串"ABCDEF"37.以下判断字符串s1是否大于字符串s2正确的是( D )A) if (sl>s2) B) if (strcmp(s1,s2))C) if (strcmp(s2,sl)>0) D) if (strcmp(s1,s2)>0)38.下述对C语言字符数组的描述中错误的是( C )A)字符数组中可以存放字符串B)字符数组中的内容不一定能当做字符串使用C)可以用赋值的方式将一个字符串赋给一个已定义了的字符数组D)不可以用关系运算符对字符数组中的字符串直接进行比较39.在C语言函数中,以下说法正确的是( A )A)实参和与其对应的形参各占用独立的存储单元B)实参和与其对应的形参共占用一个存储单元C)只有当实参和与其对应的形参同名时才共占用存储单元D)形参是不占用存储单元40.C语言中定义函数时,允许省略返回值类型,此时该函数值隐含的类型是( B )A)float型B)int型c)char型D)void型41.在C语言程序中,以下正确的描述是( B )A)函数的定义可以嵌套,但函数的调用不可以嵌套B)函数的定义不可以嵌套,但函数的调用可以嵌套C)函数的定义和函数的调用均不可以嵌套D)函数的定义和函数的调用均可以嵌套42.若用数组名作为函数调用的实参,传递给形参的是( A )A)数组的首地址B)数组第一个元素的值C)数组中全部元素的值D)数组元素的个数43.以下不正确的说法为( D )A)在不同函数中可以使用相同名字的变量B)形式参数是局部变量C)在函数内定义的变量只在本函数范围内有效D)在主调函数中定义的变量在被调函数范围内有效44.C语言规定,函数返回值的类型是由( D )A) return语句中的表达式类型所决定B)调用该函数时的主调函数类型所决定C)调用该函数时系统临时决定D)在定义该函数时所指定的函数类型所决定45.C语言的编译系统对预编译命令的执行是( D )A)在程序运行时进行的B)在程序连接时进行的C)和C程序中的其它语句同时进行编译的D)在对源程序中其它成份正式编译之前进行的46.凡是函数中未指定存储类别的局部变量,其隐含的存储类别为( A )A)自动(auto) B)静态(static)C)外部(extern) D)寄存器(register)47.在一个C源程序文件中,若要定义一个只允许本源文件中所有函数使用的全局变量,则该变量需要使用的存储类别是( D )A)extern B)registerC)auto D)static48.若已定义int a=5;下面对(1),(2)两个语句的正确解释是( D )(1)int *p=&a; (2)*p=a;A)语句(1)和(2)中的*P含义相同,都表示给指针变量p赋值B)(1)和(2)语句的执行结果都是把变量a的地址值赋给指针变量pC)(1)是在对p进行说明的同时进行初始化,使p指向a,(2)是将变量a的值赋给指针变量pD)(1)是在对p进行说明的同时进行初始化,使p指向a,(2)是将变量a的值赋给指针变量p 指向的变量49.若已定义char s[10」;则以下表示元素s[1]的地址的表达式中错误的是( B )A)s+1 B)s++ C)&s[0]+1 D)&s[1]50.下面选项中正确的赋值语句是(设char a[5],*p=a;)(A )。

相关文档
最新文档