版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第一章 一选择题1.最早开发C语言是为了编写下面那一种操作系统( C) A .Windows B.DOS C.UNIX D.Linux2.下面哪一项不属于C语言的特点( B ) Ac语言具有可移植性 B.c是一种面向对象程序设计语言 C.c语言具有自我扩展能力 D.c语言程序执行效率较高3.下面关于程序的说法中哪一项是正确的( B ) A.程序是指由二进制0和1构成的代码 B.程序就是人与计算机进行交流的语言 C.将需要计算机完成的工作写成一种形式化指令,而这些单个的指令就是程序 D程序的设计形式是一致的4.下面哪一项不属于c语言程序开发过程中设计程序阶段应该考虑的问题(D ) A.程序可以包
2、含哪些函数 B.用什么类型的变量来保存数据 C.需要哪些步骤来解决问题 D.采用哪一张开发工具5.经过连接以后生成的可执行文件的扩展名是下面的哪一项(B ) A. .c B. .exe C. .o D. .obj6.下面哪一项不属于c语言继承开发环境包含的程序( C )A.编辑程序 B.编译程序 C.汇编程序 D.调试程序二选择题1把高级语言转换成机器语言的程序被称作(编译器)2.c语言的代码通常使用(编译器)程序输入到计算机中。3.ANSI C是C语言的第一个标准,一般称为(C89),目前最新的修改版本是(C99)。4.程序调试的主要目的是(发现并修正错误)。三判断题1.连接器只是把编译生成
3、的目标代码连接起来生成可执行代码(F)。2.C语言只能用来编写操作系统(F)。3.UNIX操作系统本身提供C语言的编译器,称为CC(T)。4.用机器语言编写的程序依赖于具体的机器,不具备可移植性(T)。5.一个C语言程序只要编译和连接没有错误,就肯定能正常运行(F)。第二章一.选择题1.下面哪一项可以作为c语言的标识符(B)。A 2m B. var C. n37 D. ok?2.下面哪一项怒能作为c语言的标识符(C)。A mean B. ked C. a+c D.Main3.在C语言中,声明语句用下面列出的哪一种符号结束(B)。A.逗号 B.分号 C.冒号 D.句号4.在下面关于变量的说明中哪
4、一项是不正确的(C)。A.变量在使用之前必须声明 B.可以通过输入为变量赋值C.声明变量时只需指定变量名 D.变量名应该是一个合法的标识符5.在下面关于注释的说明中哪一项是正确的(B)。A.在执行程序时,注释会导致计算机在屏幕上显示/*和*/之间的内容B.在程序中添加注释可以增强代码的可续性,应该鼓励多写注释C.注释会增加程序源代码的长度,也会增加目标代码的长度D.一个注释不可以分多行来写6.下面哪一项不益于增强程序代码的可续性(C)A.适当插入空行分隔不同的处理部分B.为变量和函数命名时,尽量使名称能见名知意C.删去不必要的圆括号使表达式简短D.尽量把一条语句安排在一行7.下面说法中正确的是
5、哪一项(C)。A.c语言源程序是由一个个语句构成的B.c语言源程序有固定的书写格式C.每个语句的末尾必须有一个分号,作为语句结束的标志D.可以用/*/对c语言程序中的任何部分作注释8.调用printf()函数输出3个变量的值,正确的语句是哪一项(A)。A.printf(”%d%d%dn”,x,y,z); B.printf(“%d%d%dn”,x,y);C.printf(“%d%dn”,x,y,z); D.printf(“%D%D%Dn”;二填空题1.c程序的每条语句必须以(;)结尾。2.( printf() )函数用于在屏幕上显示输出。3.( scanft() )函数用于输入数据。4.(std
6、ion)头文件包含了标准输入输出库函数的声明。5.一个函数定义包括函数头和(函数值)。6.C语言程序的基本模块是(函数)。7.编译器可以发现程序中的(语法)错误。8.能够进行判断的c语句是(if语句)。三判断题1.在c语言中,Abc和abc是不同的两个标识符(T)。2.main()函数是程序执行的起点(T)。3.程序中的一行可以有多条语句(T)。4.一个c程序可以包含多个函数,但只能有一个main()函数(T)。5.在声明变量时必须为其指定一种数据类型(T)。6.只能通过赋值语句改变变量的值(F).7.变量的声明可以放在函数体重的任何位置(F)。8.在程序中可以包含多个预处理命令(T)。第三章
7、一.选择题1.以下选项中均为合法整型常量的是AA160.Oxffff,0112.以下选项不正确的转义字符是CC0773.设a是int类型,有语段:a=-017L;printf(%dn,a);,输出结果为DD-154.下列变量说明语句中,正确的是CC intx,y,z=105.以下为字符串常量的是BBChina6.以下不属于C语言数据类型的是DD long unsigned short7.以下选项均为不合法浮点常量的是BB。123,2e2.5,e58.以下选项中均为不合法转义字符的是AA , ,n9.char类型在内存中的存储形式是DD ASCII码10.以下选项中正确定义符号常量的是CC #d
8、efine NAMEWang11.scanf()函数称为AA格式输入函数12.设a为float类型变量,则下列选项中正确的是AA scanf(%f,&a);13.getchar()函数和putchar()函数的头文件是BB sttdio.h14.设有语句段:int a=256,b=356;printf(%dn,a,b);,则输出结果为DD 25615.设有语句段:float x; scanf (%6.2f,&x);printf(X=%fn,x);若输入数据:134.89后,则BB运行结果错二.填空题1.c语言中标识符的首字符必须是(字母或者下划线)2.在VC+中,int类型数据占用(4)个字节
9、3.若有变量说明语句:char c=72;,则变量C包含(1)个字符4.字符串wx53np103q的长度是(7)5.字符串HOW ARE YOU?在内存中占用(13)个字节。6.scanf()函数的功能是按(格式控制字符串)指定的格式,在标准输入设备上把数据输入到(变量)中7.在输入多个数值型数据时,若scanf()函数的格式控制字符串”中没有非格式字符作为输入数据的间隔符,则可用(定格),(Tab)和(Enter)作分隔。8.设有语句段,int=65;printf(%d,%cn,x,x);,则输出结果为(65.A)9.设有语句段,float x=123.456;printf(x=%,2fnx
10、);则输出结果(X=123.46)10.若要输出以下各种类型的数据,应使用神马转换说明符;字符宽度为4的十进制证书应使用%4d;字段宽度为6的十六进制整数应使用(%6x),八进制整数应用(%6o);字段宽度为4的字符应使用(%4c);字段宽度为10,保留3位小数的双精度实数应使用(%10.31f),字段宽度为8的字符串应使用(%8s)三.判断题1.在C语言中,数据有常量和变量之分T2.在c语言中,可以把一个字符串赋给一个字符变量F3.符号常量不是常量的一种数据类型,而是任何类型常量的另一种表示形式T4.语句printf(%dn,12.8%4);的输出结果为0 F5.在使用scanf()函数为d
11、ouple型变量赋值时,可使用%f或%lf格式符F6.说明语句int a=10,b=10,c=10;和说明语句int a=b=c=10;等价F7.有语句intx;scanf(%4d,&x);若输入数据,则只能把1234赋给变量x F8.语句段:int=100;y=200;printf(dn,(x,y));的输出结果为200 T9.scanf()和printf()是C语言中标准的格式输入输出语句F10.若有intx=15;printf(%dn,&x);则系统不会报错,则输出X的地址T第四章一选择题1.下列运算符中,只能用于整形数据的是DD%2.设有定义int a=8,b=5,c;,则执行语句c=
12、a/b+0.4;后,c的值是BB 13.设有定义int a,b,i=18;double x,y ;则符合C语言规则的表达式是AA y=(float)i4.设有定义int k=11;,则表达式k+*1/3的值是BB 35.设有定义float a=2;b=4;h=3;则以下C语言表达式中与代数式计算结果不相符的是BB (1/2)*(a+b)*h6.有以下程序C,执行后输出结果为:CC 6.47.以下选项中,与表达式k=n+等价的表达式是AA k=n,n=n+18.设有定义double x,y ;,则表达式x=2,y=x+3/2的值是DD 3.9.设有定义int m=10;,则以下错误的表达式是AA
13、 m+=1510.设有定义int a=5;float=5.5;则以下错误的表达式是DD.a+b二.填空题1.表达式8/4*(int)2.5/(int)1.25*(3.7+2.3))的数据类型为(int)2.设有定义int x=f;,则执行语句printf(%cn,a+(x-a+1));后输出结果是(g)3.表达式5%6的值是(5)4.设y为int型变量,则描述“y是偶数”的表达式是(y%2=0)5.设有定义int x=3,y=2;float a=2.5,b=3.5;则表达式(x+y)%2+(int)a/(int)b的值为(1)6.设有定义int a=6;则表达式a+=a-=a*a的值(-60)
14、7.设有定义intk;则执行表达式k=10,k+,k+,k+3后,表达式的值是15,变量k的值是(12)8.以下程序a=H-A+O执行后输出结果是(7)9以下程序printf(%fn,z),执行后输出结果是(-7.)10.请书写数学式cos60+8ey的C语言表达式(cos(60*3.14159/180)+8*exp(y)三,判断题1.x+是一个合法的算术表达式T2.x=y=z=0是一个合法的赋值表达式T3.要求参与运算的操作数必须是基本类型的运算符是% F4.凡是表达式都是一个确定的值T5.无论是整数还是实数,只要允许的范围内都可以准确无误的表示F6.在主函数内变量一经定义,系统将自动赋予初
15、始值F7.设a为实型变量,且有语句a=10;,因此可说实型变量中允许存放整型值F8.在赋值表达式中,赋值号右边可以是变量也可以是任意表达式,但赋值号左边只能是变量T9.执行表达式a=b后,变量a的值由原值改变为b的值,而变量b的值置零F10.在C语言程序中,书写任何表达式都只能写在一行内F第五章一、选择题1、判断char型变量c1是否为小写字母的正确表达式为(D)A、 a=c1 = A) & (c1 =c1) | ( z= a) & (c1 = z)2、在C语言中的if语句中,用以决定分支流程的表达式为(D)A、只能用关系表达式 B、只能用逻辑表达式C、只能用算术表达式 D、任意表达式3、若变
16、量都已正确说明,则以下程序段的输出为(D)int a=1,b=2,c,d;if (a=b) c=d=a;else c=b;d=b;printf(“c=%d,d=%d”,c,d);A、c=1,d=1 B、c=1,d=2 C、c=2,d=1 D、c=2,d=2 4、请阅读以下程序#include void main()int a=5,b=0,c=0;if(a=b+c) printf(“&”);else printf(“#”);下列说法正确的是:(D)A、有语法错不能通过编译 B、可以通过编译但不能连接C、输出& D、输出#5、两次运行下面的程序,如果从键盘上分别输入6和4,则输出的结果是(D)#i
17、nclude void main()int x;scanf(“%d”,&x);if(x 5) printf(“%d”,x);else printf(“%dn”,x-);A、7和5 B、6和3 C、7和4 D、6和46、以下不正确的if语句形式是(B)A、if (x y);B、if (x=y) x+=yC、if (x !=y) scanf(“%d”,&x); else scanf(“%d”,&y);D、if (x 7) if (b 8) if (c 9) x=2; else x=3;后x的值是(C)A、0 B、2 C、1 D、310、请从以下表达式中选出a为偶数时值为0的表达式(D)A、a %2
18、=0 B、!a %2 !=0 C、a/2* 2 2 =0 D、a %211、在下列选项中,没有构成死循环的程序段是(C)A、int i=100; B、for ( ; ; ); while (1) i = i %100 +1; if (i 100) break; C、int k =1000; D、int s =36; do -k; while (k); while (s =0); +s;12、C语言中do-while循环中,循环由do开始,用while结束;而且在while表达式后面的哪一个符号不能丢,它表示do-while循环的结束(B)A、n B、; C、% D、,13、下列有关for循环的
19、描述正确的是(D)A、for循环只能用于循环次数已经确定的情况B、for循环是先执行循环体语句,后判断表达式C、在for循环中,不能用break语句跳出循环体D、for循环体语句中,可以包含多条语句,但要用花括号括起来14、对于for(表达式;表达式3)可理解为(B)A、for(表达式; 0;表达式3) B、for(表达式;1;表达式3)C、for(表达式;表达式1;表达式3) D、for(表达式;表达式3;表达式3)15、执行程序段:x=-1; do x=x* x; while (!x);的结果是(C)A、死循环 B、循环执行2次 C、循环执行一次 D、有语法错误 16、以下程序的输出结果是
20、(D)#include void main() int y=10; while(y-); printf(“y=%dn”,y);A、y=0 B、无限循环,无结果输出 C、y=1 D、y=-117、若有如下程序段:int n=0; while (n+ =2) printf (“%d”, n);,则正确的执行结果是(D)A、3 B、2 C、1 D、12318、设有程序段: int k=10; while (k=0) k=k-1;,则下列描述正确的是(C)A、while循环执行10次 B、循环是无限循环C、循环体语句一次也不执行 D、循环体语句执行一次19、以下能正确计算1 X 2 X 3 X 4 X
21、X 10的程序段是(C)A、do I = 1; s = 1;s = s * I ; i+; B、do i= 1 ; s = 0 ; s = s * i ; i+ ; while (i =10); while (i =10);C、i=1 ;s =1 ; D、i =1 ; s =0; do s = s* i ; i+ ; while (i =10); do s = s* i ; i + ; while (i=10);20、程序段 int y =10; do y - ; while (-y); printf (“%dn”,y-);的运行结果是(D)A、-1 B、1 C、8 D、021、程序段int
22、a=1, b=10; do b-=a;a+; while (b - 0); printf (“a=%d,b=%dn”,a,b);的运行结果是(B)A、a=3,b=11 B、a=2,b=8 C、a=1,b=-1 D、a=4,b=922、以下for循环的执行次数是(C) for (x=0; y=0; (y !=123) & (x4); x+);A、无限次 B、循环次数不定 C、执行4次 D、执行3次23、以下正确的描述是(B)A、continue语句的作用是结束整个循环的执行B、只能在循环体内和switch语句内使用break语句C、在循环体内,使用break语句和使用continue语句的作用是
23、相同的D、从多层循环嵌套中退出时,只能使用goto语句24、以下为死循环的程序段是(C)A、for (i = 1; ; ) if (+i &2 =0) continue; if ( +i %3 =0) break; B、i = 32767 ; do if (i 0) break ; while (+i );C、for (i = 1 ; ; ) if ( +i 10) continue;D、i = 1; while (i-);二、填空题1、在C语言中,逻辑运算符中,(逻辑非)的优先级高于算术运算符。若已知a=2,b=3,则表达式!a+b的值为(3) 2、以下程序实现:输入三个数,按从小到大的顺序
24、进行输出。请在空中填入正确内容。 #include void main() int x,y,z,c; scanf(“%d%d%d”,&x,&y,&z); if(zy) c=y;y=z;z=c; if(yx) c=x;x=y;y=c; if(zy) c=z;z=y;y=c; printf(“%d,%d,%d”,(x,y,z); 3、以下程序对输入的一个小写字母,将字母循环后移5个位置后输出。例如a变成f,w变成b。请在空中填入正确的内容。 #include void main() char c; c = (getchar() if (c =a&(c=v&c=z) (c=c-21); putcha
25、r(c); 4、 有一个整数345,取它的个位数的表达式为(345%100),取百位数的表达式为(345/100),取十位数的表达式为(345/10%10)。5、下面是计算n!的值的程序。 #include void main() int i,s,n; s=1 scanf(“%d”,&n);for(i=1;i =n;i +) (s=s*i);printf(“s=%dn”,s); 6、下面程序的功能是分别计算110之间的奇数和与偶数和。#include void main()int a,b,c,i;a=c=0;for(i=0;i =0&c=9) n+ c=getchar();8、下面程序的功能是
26、用do-while语句求11000之间满足“用3除余2、用5除余3、用7除2”的数,且一行只能打印5个数。#include void main()int i=1,j=0;do if (i%3=2& i%5=3& i%7 =2) printf(“%4d”,i); j=j+1 if(i%5=0) printf(“n”); i=i+1;while(iy或ay&a0) x=x+y;printf (“%f”,x); ;else printf (“%f”,-x) ;语句语法是正确的 (F)6、语句: if(ab) max=a; else max=b; ,不可用条件表达式写为max= (ab) ? a:b;
27、 ( F )7、在case后的各常量表达式的值可以相同 (F)8、if语句执行时,首先计算紧跟在if后面一对圆括号中的表达式的值,如果表达式的值为非零( “真”),则执行if后的“语句”,然后去执行if语句后的下一个语句 (T)9、while语句do-while语句无论在什么情况下,二者的执行结果都一样 (F)10、continue语句的功能就是结束本层循环 (F)11、break语句的作用就是结束本层循环 (T)12、C语言的while、do-while和for几个循环语句,可以相互嵌套 (T)13、do-while语句构成的循环不能用其他语句构成的循环来代替 (F)14、用do-while
28、语句构成循环时,只有在while后的表达式为非0时结束循环 (F)15、for(; ;) 循环体 ,会无终止地执行循环体 (T)16、for(表达式1;表达式2;表达式3)中,表达式1和表达式3可以同时都为逗号表达式 (T)17、要使for(表达式1;表达式2;表达式3) 循环体不形成死循环,表达式2一定不能为空 (F)18、while循环的while()后没有分号,而do-while循环的while()后一定要有一个分号(T)19、C语言程序的三种基本结构是嵌套结构、递归结构和顺序结构 (F)20、C语言中while与do-while语句的主要区别是do-while的循环体至少无条件执行一次
29、 (T)第六章一、选择题1、C语言程序的基本单位是(D)A、程序 B、语句 C、字符 D、函数2、以下叙述正确的是(A)A、C语言程序中注释部分可以出现在程序中任何合适的地方B、括号“”和“”只能作为函数体的的定界符C、组成C程序的基本单位是函数,所有函数名都可以由用户命名D、分号是C语言之间的分隔符,不是语句的一部分3、一个C语言的程序总是从哪儿开始执行的(A)A、main函数 B、文件中的第一个函数 C、文件中的第一个子函数调用 D、文件中的第一条语句4、有以下函数定义(C) void fun(int n,double x) 若以下选项中的变量都已正确定义并赋值,则对函数fun的正确调用语
30、句是:A、fun(int x,double n); B、m=fun(10,12,5);C、fun(x,n); D、void fun(n,x);5、函数的实参不能是(C)A、变量 B、常量 C、语句 D、函数调用表达式6、定义为void类型的函数,其含义是(A)A、调用函数后,被调用的函数没有返回值B、调用函数后,被调用的函数不返回C、调用函数后,被调用的函数的返回值为任意的类型D、以上三种说法都是错误的7、函数f(double x) printf(“%6dn”,x); 的类型为(C)A、double类型 B、void类型 C、int类型 D、A,B,C均不正确8、关于函数的调用,以下错误的描述
31、是(D)A、出现在执行语句中 B、出现在一个表达式中C、作为一个函数的实参 D、作为一个函数的形参9、C语言中,函数返回值的类型是有什么决定的(D)A、调用函数时临时 B、return语句中的表达式类型C、调用该函数的主调函数类型 D、定义函数时,所指定的函数类型10、在函数调用过程中,如果函数A调用了函数B,函数B又调用了函数A,则被称为什么调用(B)A、函数的直接递归调用 B、函数的间接递归调用C、函数的循环调用 D、C语言中不允许这样的递归调用二、填空题1、构造递归函数的关键是找到适当的递归算法和(递归终止条件)2、在C语言中,一个函数一般有两部分组成,他们是函数头和(函数体)3、在C语
32、言中,一个程序往往由(多个文件)组成4、在被定义的函数中,必须指定形参的(类型)5、C语言规定,实参变量对形参变量的数据传递都是(值传递)6、函数的返回值是通过函数中的(return)语句获得的7、如果函数值的类型和return语句中表达式的值不一致,则以(函数)类型为准8、为了明确表示“不带回值”。可以用(void)定义“空类型”9、按函数在程序中出现的位置来分,有3种函数调用方式:(函数语句),函数表达式,函数参数10、实参可以是常量、变量或(表达式)三、判断题1、以下程序段是否正确 main( ) void fun( ) ( F )2、形参可以是常量、变量或表达式 (F)3、定义函数时,
33、形参的类型说明可以放在函数体内 (F)4、在有参函数中,定义函数中指定的形参变量在整个程序一开始执行时便分配内存单元 (F)5、若调用C标准库函数,调用前必须重新定义 (F)6、return语句后面的值可以为表达式 (T)7、函数调用可以作为一个函数的形参 (F)8、形参和实参的变量名称可以一样 (T)9、在一个函数定义中只能包含一个return语句 (F)10、主函数和其它函数可以互相调用 (F)11、所有的函数都是平行的。一个函数并不从属于另一个函数 (T)12、函数的嵌套调用就是在调用一个函数的过程中,又调用了另一个函数 (T)13、只有主函数才可以调用其它函数 (F)14、C语言中允许
34、函数的嵌套定义和嵌套调用 (F)15、在C语言中。函数可以递归调用或递归定义 (F)第七章一、选择题1.下列各种存储类别的变量中,必须定义在函数体外的是:( D )(A)自动变量类型 (B)寄存器类型变量(C)内部静态类型变量 (D)外部静态变量2.在一个源文件中定义的全局变量的作用域为:( D )(A)本文件的全部范围 (B)本程序的全部范围(C)本函数的全部范围 (D)从定义该变量的位置开始至本文件结束3.以下不正确的描述是:( B )(A)在函数之外定义的变量为外部变量,外部变量是全局变量(B)在函数中既可以使用本函数中的局部变量,又可以使用其他函数的局部变量(C)在可以不使用全局变量的
35、情况下应避免使用全局变量(D)若在同一个源文件中,外部变量与局部变量同名,则在局部变量的作用范围内,外部变量不起作用4.以下叙述中不正确的是:( D )(A)在不同的函数中可以使用相同名字的变量(B)函数中的形式参数是局部变量(C)在一个函数内定义的变量只在本函数范围内有效(D)在一个函数内的复合语句中定义的变量在本函数范围内有效5.以下叙述中正确的是:(A)(A)局部变量说明为static存储类别,其生存期将得到延长(B)全局变量说明为static存储类别,其作用域将被扩大(C)形参可以使用的存储类别说明符与局部变量完全相同(D)任何存储类别的变量在未赋初值时,其值都是不确定的6.以下说法中
36、正确的是:( C )(A)形参是全局变量,其作用范围仅限与函数内部(B)形参是全局变量,其作用范围从定义之处到文件结束(C)形参是局部变量,其作用范围仅限与函数内部(D)形参是局部变量,其作用范围从定义之处到文件结束7.当全局变量与函数内部的局部变量同名时,则在函数内部:( B )(A)全局变量有效 (B)局部变量有效(C)全局变量与局部变量都有效 (D)全局变量与局部变量都无效8.在一个C语言源程序文件中,若要定义一个只允许在该源文件中所有函数使用的外部变量,则该变量需要的存储类别为:( D )(A)extern (B)auto (C)register (D)static9.若要限制一个变量
37、只能被本程序文件使用,可以采用的实现方法是:( A )(A)定义静态外部变量 (B)定义静态内部变量(C)外部变量说明 (D)局部变量说明10.凡在函数中未指明存储类别的变量,其隐含的存储类别为:( B )(A)register (B)auto (C)static (D)extern二、填空题1.按函数能否被其所在文件外的其他文件引用,可将C函数分为(内部函数)和(外部函数)两种。2.只有(局部自动变量)和(形式参数)才能被定义为寄存器变量。定义寄存器变量的目的是提高程序的执行速度。3.在(main)函数中定义static变量的意义不大,因为程序每次运行都是重新分配空间的。4.从存储类别看,C
38、语言中没有给出存储类别的局部变量一律隐含定义为(自动存储)类别。5.外部变量的作用范围是通常是从(变量的定义处)开始,直到(本程序文件的结尾处)。6.对外部变量的初始化只能在(定义)时进行。7.对一个变量的性质可以从两个方面分析,一是从变量的(作用域),一是从变量值存在的时间的长短,即(生存期)。8.为了便于区别全局变量和局部变量,C语言规定(将全局变量的第一个字母用大写表示)。9.由于函数在本质上是外部的,在程序中经常要调用外部函数,为方便编程,C语言允许在声明函数是省略(extern)。10.在C语言中,可以用(extern)声明变量为已定义的外部变量。三、判断题1.在C语言中,最好使用全
39、局变量。( F )2.除了利用实际参数和形式参数在各函数之间传递数据外,利用全局变量,也可以在各函数间传递数据。( T )3.如果定义函数时省略extern,则系统认为其是外部函数。( T )4.在同一源文件中,外部变量与局部变量同名时,则在局部变量的作用范围内,外部变量不起作用。( T )5.不同函数中使用相同名字的变量时,代表的是相同的变量。( F )6.在main函数中定义的变量是全局变量。( F )7.不同函数中定义的变量,其作用范围都限制在各自的函数内,在内存中占据的存储单元也各不相同。( T )8.全局变量在程序的全部执行过程中都占用存储单元。( T )9.局部静态变量属于静态存储
40、类别,在静态存储区内分配存储单元,在程序整个运行期间都不释放。( T )10.在函数体中:auto int b,c=3;与 int b,c=3; 两者等价。( T )第八章一、选择题1.有定义语句 int w5;,则在vc+6.0下,数组w占用多少个字节的内存单元。( C )(A)5 (B)10 (C)20 (D)402.下列关于数组的叙述中,错误的是:( B )(A)数组是一种构造类型(B)数组元素的类型可以不完全相同(C)数组元素是按顺序存放在内存中(D)数组的元素个数是确定的3.以下定义语句中,错误的是:( B )(A)int a =1,2,3; (B) int n=3,an;(C)in
41、t a5=1,2,3; (D) int n,a3;4.以下描述中正确的是:( D )(A)数组名后面的常量表达式用一对圆括号括起来(B)数组下标从1开始(C)数组下标的数据类型可以是整型或实型(D)数组名的命名规则与变量名相同5.以下能正确定义一维数组的选项是:( B )(A) int a ; (B)#define N 100 int aN;(C) int a0,100 (D)int N=100 int aN;6.定义数组并初始化int a 10=1,2,3,4;,以下描述错误的是:( B )(A)a 8 的值为0 (B)a1的值为1 (C)a3的值为4 (D)a9的值为07.一维数组初始化时
42、,若对部分数组元素赋初值,则以下说法正确的是:( A )(A)可以只对数组的前几个元素赋初值(B)可以只对数组的中间几个元素赋初值(C)可以只对数组的厚几个元素赋初值(D)以上说法全部正确8.如有定义:int a4; , 若要把10、20、30、40分别赋值给数组a的4个元素,下面正确的赋值方式是:( C)(A)scanf(”%d%d%d%d”,a0,a1,a2,a3);(B)scanf(”%d”,a);(C)a0=10;a1=a0+10;a2=a1+10;a3=a2+10;(D)a=10,20,30,40;9.已知一个一维数组,有10个整型元素,其中最后3个元素分别为3、2、1,其余元素为默
43、认值。下面实现方法中,正确的是:( C )(A) int a10=3,2,1;(B) inta =3,2,1;(C) int a10=0;a7=3;a8=2;a9=1;(D) int a10=0;a8=3;a9=2;a10=1;10.数组初始化的初始值表中的数据项个数与数组元素的个数的关系错误的是:( A )(A)大于 (B)小于 (C)等于 (D)小于等于11.设有定义:int a 3= 1,2,3,4,5,6,7,8,9 ;,则a1 2的初值为:( C )(A)2 (B)4 (C)6 (D)812.下列数组的初始化,合法的是:( D )(A) int x = 1,2,3,4,5,6 ;(B
44、) int x 3=1,2,3,4,5;(C) int x3 3=1,2,3;4,5,6;7,8,9;(D) int x3 3=1,2,3;13.在内存中,二维数组存放的顺序是:( A )(A)先行后列 (B)先列后行 (C)按元素的大小 (D)按元素被赋值的先后顺序14.若有说明:int m3 4;,则对数组m中的元素的正确引用是:( C )(A)m1 4 (B)m1,3 (C) m1+1 2 (D)m(2)(3)15.若说明:int m3 4=0;,则下面正确的叙述是:( D )(A)只有第一个元素可得到初值0(B)此说明语句不正确(C)数组m中各元素都可得到初值,但其值不一定为0(D)数
45、组m中每个元素均可得到初值016.若有说明:int m 3=1,2,3,4,5,6;,则下面错误的叙述是:( D )(A)数组m中所有元素都可得到初值(B)二维数组m的第一维大小为2(C)因为初值个数除以第二维大小的值等于2,所以数组m的行数为2(D)根据以上说明不能确定数组m的第一维大小17.若二维数组a有n列,则计算任一元素ai j在数组中位置的公式为:( D )(A)i*n+j (B)j*n+i (C)i*n+j-1 (D)i*n+j+118.设有: int x2 4=1,2,3,4,5,6,7,8;printf(”%d”,x2 4);,则输出结果是:( C )(A)8 (B)1 (C)随机数 (D)语法检查出错19.用一维数组名作为函数实参,则以下说法正确的是:( A )(A)必须在主调函数中说明此数组的大小(B)实参数组类型与形参数组类型可以不匹配(C)在被调函数中,形参数组的长度必须与实参的长
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 肌筋膜疼痛综合征的推拿理疗
- 大连理工大学出版社说课稿-2025-2026学年中职中职专业课电子商务类73 财经商贸大类
- 品质异常处理SOP|从发现到关闭
- 血液透析中的抗凝治疗与护理
- 初中2025年说课稿学习主题班会
- 上海音乐学院《安装工程计价》2025-2026学年第一学期期末试卷(B卷)
- 2025年动力电池回收产业链金融风险案例与防范
- 上海音乐学院《Android 移动平台开发》2025-2026学年第一学期期末试卷(A卷)
- 上海震旦职业学院《安全经济原理与实践》2025-2026学年第一学期期末试卷(B卷)
- 初中科技创新展示主题班会2025说课稿
- 2025年内蒙古鄂尔多斯市康巴什区事业单位考试题及答案解析
- 培训餐厅服务员
- 心脏外科患者伤口护理
- 2026年工业无人机焊接技术报告
- 《城市体检工作手册》(试行)下载
- 2025年甘肃钢铁职业技术学院辅导员考试真题
- 屋顶光伏施工技术规范
- 2025年国家义务教育质量监测小学四年级劳动教育国测模拟测试题及答案
- 第节深圳市中考英语听说考试概述
- 2026年山东省菏泽一中自主招生物理试卷试题(含答案详解)
- ICMP协议课件教学课件
评论
0/150
提交评论