版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第一单元C语言概述、选择题1、C语言中主函数的个数为(A)个。A) 1B) 2C)无穷个D)任意个2、以下关于C语言描述错误的是(D)。A) 一个C程序总是从main函数开始执行TB)每个语句和数据声明的最后必须有一个分号TC) C语言的注释符是以“ /*”开始并以“ */”结束的 TD) 一个C程序可以包含多个 main函数F3、C语言源程序文件后缀为(C )。A) .EXEB).OBJC).CD) .ASM4、C语言是由(C )组成的。A)子程序B)主程序与子程序C)函数D)过程5、C语言属于(B )语言A)机器语言B)汇编语言C)高级语言D)面向对象语言第二单兀C语百基础、选择题1、C语
2、言中普通整型变量int在内存中占(B )字节。A) 1B) 2C) 3D) 42、下列不是C语言基本数据类型的是(A )。A)字符型B)整型C)浮点型D)结构体3、有关自增、自减运算,以下只有( D )是正确的。A)-f B) +78C) ab+D) d+A )。4、已知 A=7.5,B=2,C=3.6,表达式(A>B && C>A) | (A<B && !C>B) 的值是(A) 0B) 10C) 1 D) 55、若有 x=1,y=2,z=3,则表达式(x<y?x:y)= =z 的值是(D )。A) 1B) 2C) 3D) 06、判
3、断char型变量ch是否为大写字母的正确表达式是( C )。A) 'A' <=ch<= 'Z'B) (ch>= 'A' )&(ch<= 'Z')C) (ch>= 'A' )&&(ch<= 'Z' )D) ( 'A' <= ch)AND( 'Z' >= ch)7、判断整型变量digit是否为数字的正确表达式是(C )。A) '0'<=ch<= '9'B)
4、(ch>=0' )&(ch<='9')C) (ch>=0' )&&(ch<=9' )D) ( '0'<= ch)AND('9'>= ch)8、一个C程序的执彳T是从(A )。A)本程序的main函数开始,至U main函数结柬B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C)本程序的main函数开始,到本程序文件的最后一个函数结束D)本程序文件的第一个函数开始,到本程序main函数结束9、在以下标识符中,合法的是(C )A) ifB) 0xyC)
5、_xyD) case10、C语言中各种类型的数据其实决定了占用内存的字节数。float占(C )。A) 一字节B)二字节C)四字节 D)八字节11、下列各选项中,(A )是有效的标识符。A) abB) 3dayC) day-3 D) #abc12、以下叙述正确的是(C )A)在C程序中,每行只能写一条语句B)若a是实型变量,C程序中不允许a=10这种赋值。C)在C程序中,是只能用于整数运算的运算符D)在C程序中,无论是整数还是实数,没有什么区别13、有输入语句:scanf( "a=%d,b=%d,c=%d ,&a,&b,&c使变量 a的值为1, b的值 为3,
6、 c的值为2,则正确的数据输入方式是(B )。A) 132/B) 1,3,2/C) a=1 b=3 c=2/D) a=1,b=3,c=2/14、设整型变量a为5,使b不为2的表达式是(C )。A) b = a/2 B) b = 6-(-a) C ) b=a%2 D) b=a>3?2:115、以下程序的输出结果是(D )int x=10,y=10;printf( "d n” ,关,-y);A)10 10B)9 9C)9 10D)10916、选出下列标识符中不是合法的标识符的是( D )。A)hot_doB)cat1C )_priD)2ab17、设有如下定义:int x=10,y=
7、3,z;则语句printf("%dn",z = x%y);的输出结果是(D )。A) 1B) 0 C) 4 D) 318、各种基本数据类型的存贮空间正确的长度排列为 (C )。A ) int < char <float<doubleB ) double<float <int<charC char<int <float<doubleD float<int <char<double19、下面的变量说明中(C )是正确的。A ) char: a, b, c;B) char a; b; c; C ) char
8、a, b, c; D) char a, b, g20、转义字符“反斜杠线”的表示方法正确的是 (B ) oA) B) C )" D)°21、若 x=5,y=3 则 y*=x+5; y 的值为(D )。A)10 B )20C)15D )3022、能正确表示a和b同时为正或同时为负的逻辑表达式是(D )A) (a>=0|b>=0) &&(a<0 |b<0)B) (a>=0 && b>=0)&&(a<0 && b<0)C) (a+b>0) &&(a
9、+b<=0)D) a*b>023、C语言中,合法的字符型常数是(D )。A)'A'B) "A"C) 65D) A24、下列程序段的输出结果是(C )。char c1,c2;c1=65;c2=65+32+1;printf( %c,%c”,c1,c2);A) a,B B) a,bC) A,b D) A,B25、下列语句不具有赋值功能的是( C )A) a*=b B) x=1 C) a+b D) a+26、在C语言中,存储一个整型、字符型、双精度实型变量所需的字节(A )。A) 2、1、8B) 4、1、4C) 4、1、4D) 2、2、827、下列程序段
10、输出结果是(B )。int j=2 , i=1;j /= i*j;printf( %d”,j);A) 0B)1C)2D)328、不是C语言提供的合法关键字是(D )0A) switchB)charC)caseD)this29、在C语言中,要求参加运算的数必须时整数的运算符是(C )。A) /B) *C) %D)=30、若已定义x和y为double类型,且x=1;则表达式y=x+3/2的值是(C )。A) 1B) 2C) 2.0D) 2.531、设a为整型变量,不能正确表达数学关系:10<a<15的C语言表达式是(C )。A) 10<a<15B) a= =11 | a=
11、=12 | a= =13 | a= =14C) a>10&&a<15D) !(a<=10)&&!(a>=15)32、表达式“10! =9"的值是(D )0A) true B)非零值 C) 0D) 133、设 a,b 为字符型变量,执行 scanf( "a=%c,b=%c",&a,&b)后使 a 为A', b 为B', 从键盘上的正确输入是(B )。A) A''B'B)' A' ,' B' C) A=A,B=B D) a=A
12、,b=B34、设有单精度变量f,其值为13.8。执行语句“n=( (int)f )%3; ”后,n的值是(B )。A) 4B) 1C) 4.333333 D) 4.635、普通整形int能够处理的数据范围是(D )A) -3276732767B) -3276832768C) -3276732768D) -327683276736、若定义x为double型变量,则能正确输入x值的语句是。BA) scanf( "f” ,x);B) scanf( "f” ,&x);C) scanf( "lf”,&x); D) scanf( "5.1f”,&am
13、p;x)37、执行 x=(6*7%8+9)/5;后,x 的值为(B )A)1B) 2C)3D)438、若有代数式3ae/bc,则不正确的c语言表达式是(B )A)a/b/c*e*3B) 3*a*e/b/cC)3*a*e/b*cD)a*e/b/c*339、设有变量说明:float x = 4.0 , y = 4.0,下面使x为10.0的表达式是(A)x -= y*2.5 B) x /= y+9C)x *= y-6D)x += y+240、以下能正确定义整型变量 z、b、c并为其赋初值5的语句是(C )A) int a=b=c=5;B) int a,c, c=5;C) a=5,b=5,c=5;D)
14、 a=b=c=5;41、C语言中双精度浮点型变量double在内存中占(D )字节。A 1B 2C4D 842、以下哪个数学函数的作用是求某数的平方根( A )。C )。A) sqrt()B) fabs()C) pow()D) exp()43、两次运行下面的程序,如果从键盘上分别输入6和3,则输出结果是(int x;scanf("%d",&x);if(+x>5)printf("%d",x);elseprintf("%dn",x -);A) 7 和 5B) 6 和3 C) 7 和 4D)6 和 444、执行语句"
15、x=(a=3,b=a-)"后,x,a,b的值依次为(B )。A) 3, 3, 2B)3,2,2 C3,2,3D)2,3,245、读出以下语句的输出结果是(D )。int x=10,y=10;printf("%d %dn",x-,-y);A)1010 B)99 C)9 10 D)10 9*46、C语言中,合法的字符串型常数是(D )。A)'A'B)"A"C)abcd' D)abcd47、为表小关系x>y >z,应使用C语百表达式(A )A) (x>=y) &&(y>=z) B) (x
16、>=y) AND (y>=z)C) (x>=y>=z)D) (x>=z)&(y>=z)48、C语言的输入与卒U出操作是由(C )完成的。A)输入语句B)输出语句C)输入与输出函数D)输入与输出语句49、设有int x=11 ;则表达式(x+1/3)的值是(C )A) 11.3B) 11.333333C) 11D) 1250、若已定义x和y为double类型,则表达式x = 1,y = x+3/2的值是(C )A) 1B) 2C) 2.0D) 2.5、判断题()1、“A”是一个字符常量。X()2.、在程序运行过程中其值可以改变的量称为变量。V()3、在
17、C语言中,变量可以先使用再定义。X()4、在C语言中,所有算术运算符的优先级都相同。X()5、程序中若要使用数学函数就必须包含头文件 ”math.h”。V()6、程序中若要使用printf()函数就必须引用头文件"stdio.h”。V()7、在标准C中,“二”是判断两个数是否相等。()8、在标准C中,使用所有输入输出函数必须包含“ stdio.h”文件。X()9、在C语言中输出数据时可以指定数据的精度,即小数点后保留几位。()10、C语言中的基本数据类型有字符型、整型和浮点型。V()11、所有的C语言程序都必须有一个名为 main的主函数。V()12、/运算符要求运算数必须是整数。X
18、()13、Int, #a15 , char都是合法的标识符。X()14、b和"b"是不同的两种常量。V()15、C语言本身没有输入输出语句,要实现输入输出必须调用相应的输入输出函数第三单元算法一、判断题()1、 算法简而言之就是基于某种计算机语言, 利用数据结构来解决具体问题的思路和方法。 V()2、描述算法的图形化方法之一就是程序流程图。V()3、描述算法可以用自然语言、传统流程图、N-S流程图来描述。V()4、算法要有一定的逻辑性和健壮性。V()5、算法的特点之一是无穷性。X第四单元顺序结构、选择题1、下列标识符中合法的标识符是(A )A) int2B) ifC) 2t
19、woD) a#b2、选出下列标识符中不是合法的标识符的是( B )A) hot_doB) cat113 C) INTD) _2ab3.、以下选项中属于C语言的数据类型是( B )A)字符串型B)双精度型 C)逻辑型 D)布尔型4、设有如下定义:int x=10,y=3, z;则语句printf("%dn", z = x%y );的输出结果是( D )A) 3B) 0C) 4D) 15、设整型变量n的值为2,执行语句"n += n;"后,n的值是(B )A) 0B) 4C) - 4D) 2、判断题()1、结构化程序设计的三种结构是顺序结构、选择结构和循环结
20、构。V()2、可以用printf("%d" ,123);语句输出一个十六进制整数。X()3、可以用scanf("%x",&da);语句从键盘接收一个八进制整数给变量da。X()4、语句 scanf("%5.2f", &a);是正确的。X()5、如果a是一维字符数组名,则语句 scanf("%s", &a);是正确的。X第五单元选择结构、选择题1、有以下程序段int a;if (3&&2)a=1;elsea = 2;执行后a= ( A ) oA) 1 B) 2C) 3 D) 0
21、2、表达式:10!=9的值是(D )。A) trueB)非零值C)0D)13、设 int x=1,y=1;表达式(!x+ | y-)的值是 _ ( B )。A) 0B)1C)2D)-14、设整型变量s, c1,c2的值均为2,则执行语句(s=(c1= =c2)后,s的值为:A) 0B)1C)2D)35、设整型变量a, b的值分别为1, 0,那么a && b的结果是(A )。A) 0 B) 1C) 2 D)都不对6、设整型变量a, b的值分别为1, 0,那么a | b的结果是(B )。A) 0B) 1C) 2D)都不对7、设整型变量a, b的值分别为1, 0,那么a != b的结
22、果是(B )。A) 0B) 1C) 2D)都不对8、设整型变量a, b的值分别为1, 0,那么a | (b+)的结果是(B )。A)0B) 1C)2D)都不对9、设整型变量a, b的值分别为1, 0,那么a && (+b )的结果是(B )A)0B) 1C)2D)都不对10、设整型变量a, b的值分别为1, 2,那么表达式a>b?a+b:a-b的结果是(A) 1 B) 2C ) 3 D) -111、下边程序段B )。D )。int a=2,b=3,c=4;if(c=a+b)printf( OK!”)elseprintf( NO!”);输出结果是(A ) oA) OK!B)
23、 NOC)程序错误D)以上都不对12、设整型变量a, b的值分别为1, 0,那么a= =b的结果是( A )。A) 0B) 1C)2D)都不对13、设整型变量a, b的值分别为1, 0,那么!(a = = b)的结果是(B )。A) 0B) 1C) 2D)都不对14、设整型变量a, b的值分别为1, 2,那么!a && b的结果是(A )。A) 0B) 1C) 2D)都不对15、设x为非零,则下列描述错误的是( D )。A) !(x = = 0)B) x != 0 C) 3*x != 0 D) x>016、下列表达式的值中哪个表示为逻辑假( C )。A) 1B) 3C)
24、0D) -117、设整型变量a, b的值分别为6, 2,那么a%b != 0的结果是(A )。A) 0B) 1C) 2D) 318、下列属于分支结构的是(B )。A) whileB) switch C) forD)以上都不是19、设整型变量a, b的值分别为1, 0,那么a | (+b)的结果是(B )A) 0B) 1C) 2D)都不对20、设整型变量a, b的值分别为1, 0,那么a&&(b+)的结果是(A )A) 0B) 1 C) 2D)都不对、判断题()1、在分支结构switch中,case后面跟的一定是常量。V()2、逻辑运算符优先级高于关系运算符的优先级。X()3、关
25、系运算符中,=的优先级要高于 >=的优先级。X()4、关系运算符中,> 的优先级要高于 >=的优先级。X()5、在条件表达式中,-3代表为真。V()6、在条件表达式中,非0代表为真。V()7、条件运算符?:是2目运算符。X()8、在sw让ch语句中,有没有break的情况都是相同的()9、判断a,b两个数是否相等,用a = b。()10、为J断a,b两个数是否相等,用 a = = bo第六单元for循环结构、选择题1、对下边for循环,循环体体执行次数是( B ) for ( i = 1; i <= 10; i = i + 2 );A) 6 B) 5 C) 4 D) 7
26、2、对下边for循环,循环体执行次数是(C )。for ( i = 5; i > 1; i -) ;A) 6 B) 5 C) 4 D) 73、下边循环执行完后,a为(C )。for ( a= 1;a< 5; a+ )a = 2 * a;A 5 B 4 C 7 D 84、下边循环执行完后,s为(A )。/无法确定for ( a= 1; a< 5; a+ )for ( b= s = 0; b< a; b+, s = s +a) ;A) 6 B) 4C) 7 D)无答案7、下边程序段输出结果是( A )。int i , a= 0;for ( i = 0; i < 10;
27、 i+ )a+, i+;printf("%d", a);A) 5 B) 6 C) 9 D) 108、以下for循环的次数为( D )0for(x = 0,y = 0; (y=123) && (x<4) ; x+);A)不循环B)无限次C)3D) 49、从循环体内某一层跳出,继续执行循环外的语句是:(A )。A)break语句B) return语句C)continue语句D)空语句11、循环语句 for (x=0,y=0; (y!=123)| (x<4);x+);的循环执行次数为( CA)无限次 B)不循环C) 4次D) 3次12、设i,j,k均为
28、int型变量,k初值为0,执行完下面的for循环后,k的值为(for (i=0,j=10; i<=j; i+,j-) k=i+j;A) 10B) 913、以下程序段的循环次数是(for (i=2 ;i=0 ;)printf( "%d i-);A)无限次B) 0次14、下边程序段循环执行的次数是int a= 0, j = 10;for ( ; j > 3; j- )a+;if ( a> 3) break ;A) 3 B、4 C、5 D)C) 8D) 7C )。C) 1次 D) 2次B )。6( D )。A)表达式1 B)表达式2 C)表达式3D) 3个都可以A) 3次
29、B) 2次 C) 6次D) 9次18、for循环中,能省略的表达式有20、下面循环体被执行的次数是(2 )for(i=0;i<3;i+)21、定义变量int i=-1;则以下不是无限循环的是:(C )A. for (i=0; i=1; i+) ;B. for ( i=0; i-);C. for (; i>-10; i-) ; D. for (; i<0 ;);22、定义变量int i=2;则以下是无限循环的是:(D )。A.for (i=0;i=1;i+) ; B.for (i=0; i<0 ; ) -i;C. for ( ; i>10; i+) ; D. for
30、 ( ; i ; +i);23、以下for循环语句,循环体的执行次数是:( A )。/*该题经验证是3次,不知 道怎么回事,自己取研究*/for( i=1; i<=5; i+=2 );A. 4B. 5C. 6D. 724、以下for循环语句,循环体的执行次数是:(A )。for( i=5; i>1; i-);A. 4B. 5C. 3D. 225、下面的循环体执行完后,a的值是:(A )。for( a=2; a<8; a+)a*=2 ;4A. 10B.9C. 12D. 11、判断题1、continue语句只能用于循环语句中。()2、在for循环中允许使用嵌套循环,但只能是嵌套
31、while循环。X()3、break语句只能用于循环语句中。X()4、for循环可能一次都不执行。V()5、break语句是结束本层循环。V()6、break语句是结束本次循环。X()7、continue语句是结束本层循环。X()8、continue语句是结束本次循环。V()9、在循环过程中,使用 break语句和continue语句的作用是一样的。X()10、for(;)这写书写for循环是合法的,即for三个表达式都是可以省略的V三、程序阅读aaaaaaaaa_1、以下程序运行完后的输出数据是:main()(int a=10 ;for( ; a ;)(a-;if(a=0) break;pr
32、intf("a");)2、以下程序运行完后a的值是:_1_ main()(int i, a=0 ;for(i=0; i<10; i+)i+; a+;printf("%d", a);)3、以下程序运行完后a的值是:_5_ main()(int i, a=0 ;for(i=0; i<10; i+)a+, i+;printf("%d", a);)4、以下程序运行完后的结果是:_#*#* main()(int k;for (k=1;k<5;k+)(if(k%2!=0)printf("#");elsepri
33、ntf("*");5、以下程序运行完后s的值是:_1.0main()(int n ;float s=1.0;for(n=10;n>1;n-)s=s+1/n;printf("%6.1fn",s);第七单元 while与do-while循环、选择题1、break语句的正确的用法是(C )。A)无论在任何情况下,都中断程序的执行,退出程序。B)在多重循环中,只能退出最靠近的那一层循环语句。C)跳出多重循环。D)只能修改控制变量。2、int i=0; while( i+ < 5);循环结束后 i 的值是(C )。A) 6B) 7C) 5D) 8D )
34、03、语句while ( E );括号中的表达式E等价于(A) E=0 B) E!=1C) E!=0 D) E=14、 int i=1; while( -i );循环次数是( B )。A)无限次 B) 0C) 2 D) 17、do-while语句的循环体(B )。A)可能一次都不执行B)至少要执行一次C)由循环条件决定循环次数D) B C均正确8、对下面的while语句,循环体执行次数是(A )次。a=30;while ( a-);A) 30 B) 31C) 39D)都不对9、在C语言中,下列说法中正确的是(B )。A)不能使用"dowhile"的循环。B) "d
35、o while"的循环必须使用break语句退出循环。C) "do while”的循环中,当条件为0时将结束循环。D) "do while”的循环中,当条件为非0时将结束循环。10、下面的循环执行完后,循环次数是( B )次。while( k=10 )k-;A) 9 B) 10C) 11D)无穷次、判断题()1、while适合控制循环次数不确定的循环。(V)()2、无论循环条件是否满足,do . while循环的循环体至少执行一次。(V)()3、while( 'a');是一个死循环。(V)()4、在实际编程中,do-while循环完全可以用for循
36、环替换。(V)()5、continue;语句和break语句有同样的作用。(X)第八单元数组、选择题1、下列描述中不正确的是(A )A)字符型数组中可能存放字符串。B)可以对字符型数组进行整体输入、输出C) 字符串函数声明在包ctype.h中。D)字符串的结束符是0'。2、定义如下变量和数组:int i ; int x6 =1,2,3,4,5,6;则语句 for(i=0;i<3;i+) printf("%d ",x 5-i);的输出结果是(D )A) 1 2 3 B) 1 3 5C) 2 4 6 D) 6 5 43、以下对二维数组a进行正确初始化的是( D )
37、。A) int a23=1,2,3,4,5,6;B)int a 3=1,2,3,4,5.6;C) int a2 =1,2,3,4,5.6;D) int a2 =1,2,3,4;4、下列程序的输出结果是( A )。char a="abcd", b="ABCD", str50="xyz"strcpy( str , strcat( a, b );printf( "%s", str );A) xyabcABB) abcABz C) ABabcz D) abcdABCD5、不能把字符串:Hello!赋给数组b的语句是(B )
38、。A) char b10='H','e',T,T,'o','!'B) char b5 ="Hello!"C) char b10; strcpy(b,"Hello!"); D ) char b10="Hello!"6、下列对数组定义不正确的语句是( A )。A) int m5;B) char b= 'h' ,' e' ;C) int a10=1,6,8,4;D ) char p;7、以下对二维数组a的正确定义是(A )Aint a3 ;Bfl
39、oat a(3,4) ;C double a24;D float a(3)(4) ;8、给出以下定义:char x =" abcdefg"chary=/ a,,/ b/,/ c/,/ d/,/ e/,/ V,/ g/ ;以下正确的叙述是(D )。A)数组x和数组y等价B)数组x和数组y长度相等C)数组x的长度大于数组y的长度,因为还存储了一个结束符D)数组x的长度小于数组y的长度,因为还存储了一个结束符9、在 int b 3=1,3,2,4,5,6,0; 中 b22的值是( C )A) 0 B) 5 C) 6 10、下列初始化正确的是A) char s1 =" a
40、bcd"C) char * p=1000 ;D) 2( A )0B) char s23=" zxy"D) char s423="Jxyz" , " mnp" ;11、设有定义:char s12=" string"则 printf (" %dn" ,strlen(s);的输出是( A )A) 6 B) 7C) 11D) 1212、函数调用 strcat(strcpy(str1,str2),str3)勺功能是( A )。A)将字符串str2复制到字符串str1中后再将字符用str3连接到字
41、符串str1之后B)将字符串str1复制到字符串str2中后再连接到字符串str3之后C)将字符串str1复制到字符串str2中后再复制到字符串str3之后D)将字符串str2连接到字符串str1中后再将字符用str1复制到字符串str3中 13、使用随机函数需要包含的头文件有( D )。A)#include<stdlib.h>B)#include<time.h>C)#include <conio.h>D)A 和 B14、若有说明int a34=0;下列叙述正确的是( D )A)只有元素a00可得到初值0B)此说明语句不正确C)数组a中各元素都可得到初值,但
42、其值不一定为0D)数组a中每个元素均可得到初值015、执行下面的程序段后,变量k的值为(C )。int k=3,s2;s0=k;k=s0*10;A)不定值 B) 33C) 30D) 1016、以下定义数组的语句中正确的是( D ),A) int a(10)B ) char str ;C) int n=5; int a4n;D) #define N 10char strN;E) 、定义如下变量和数组:int k;int a33=9,8,7,6,5,4,3,2.1);则下列语句的输出结果是(B )。for(k=0;k<3;k+) printf( %d",akk);A) 7 5 3
43、B)9 5 1 C) 9 6 3 D) 7 4 118、下列描述正确的是(D )。A)两个字符串所包含的字符个数相同时,才能比较字符串B)字符个数多的字符串比字符个数少的字符串大C)字符串“ STOP”与“STOP ”相等D)字符串“ That”与字符串“ ThaT'不相等19、若二维数组a有n行n歹I,则副对角线元素是()。(假设a00位于数组的第一个位置上,且i 0,n )A) aii B) ain-i C) an-ii D) ain-1-i20、对以下说明语句的正确理解是( B )。int a10=6,7,8,9,10);A)将5个初值依次赋给a1至a5。B)将5个初值依次赋给a
44、0至a4。C)将5个初值依次赋给a6至a10。D)因为数组长度与初值的个数不相同,所以此语句不正确21、判断字符串a和b是否相等,应使用(D )。A) if(a= =b) B) if(a=b)C) if(strcpy(a,b) D) if(strcmp(a,b)= =0)22、判断字符串s1的长度是否大于字符串s2的长度,应使用(C )。A) if (s1>s2)B) if(strcmp(s1,s2)C) if(strlen(s1)>strlen(s2)D ) if(strcat(s1)>strcat(s2)23、下列程序段的运行结果(B )。char c15='a&
45、#39;,'b',''0','c',''0'printf( %s”,c);A) 'a','b' B) ab C) abcD)a , b*24、假设有两个字符数组a,b,则以下正确的输入语句是( C )。A) puts(a,b);B) scanf( %s%s”,a,b);C) scanf( %s%s”,&a,&b);D) gets( a");gets( b");25、若有说明int a3=1,2,3,4,5,6,7,8,9;则a数组行数的大小为(B
46、)。A) 2B) 3 C ) 4D)无确定值26.若有定义double x35;则x数组中行标的下限为(D ),列标的上限为 )。A) 13 B) 35C) 05D) 0 427、若有说明a34;则数组a中的各元素(B )。A)可在程序的运行阶段得到初始值 0 B)可在程序的编译阶段得到初始值 0C)不能得到确定的初始值D)可在程序的编译或运行阶段得到初始值28、若有下列程序段char x80;scanf( %s”,x);printf ("s”,x);从键盘上输入字符串“ zhang san”,则输出结果为( A )。A) zhang B) zhangsan C) zhang san
47、 D) san29、在C语言中,引用数组元素时,其数组下标的数据类型允许为( A )A) 整型常量B)整型表达式C)整型常量或整型表达式D)任何类型的表达式30、设有如下形式的字符数组定义:char str= "welcome”;则执行下列语句后的输出结果( B )。printf( %dn”,strlen(strcpy(str, "Hello”);/*该题没有进行强制转换 */A) 7 B) 5C)8D) 931、若有 int a35=2 , 2 , 2, 6, 2 , 6, 2,则数组 a 共有(C )个元素。A) 8B) 5C) 3D) 1532、设有如下定义:int
48、a100;则数组下标区间为:(A )。A) 0-99B) 1-99 C) 0-100D) 1-10033、若有定义:int a34,则对数组a中某元素的正确引用是(B )A) a24 B) a13 C ) a(5)D) a10-1034、以下对一维整型数组 a的正确说明是( D )。A) int a(10) ;B) int n=10,an;C) int n;D) #define SIZE 10scanf( "d ,&n);int aSIZE;nt an;35、若要使用字符函数,需要引入的头文件是( A)oA) string.hB) ctype.h C) stdlib.hD)
49、stdio.h、判断题()1、在定义一维数组时,可以将该数组的长度省略V()2、数组的下标从0开始。V()3、数组的下标从1开始。X()4、数组名代表数组的首地址。V()5、在C语言中,数组元素在内存中的存放顺序是按顺序存放的。V()6、字符数组可以存放字符串。V()7、字符串函数strupr(str),可将用中大写字母变成小写字母。X()8、字符串函数strrev(str),可将str用字符颠倒过来。V()9、字符串的结束符不是'0'。X()10、可如此定义 a 数组:float a3=12.5,'z',"school"X()11、数组边定
50、义边赋值时,大括号内数据项的数目可以大于或等于数组的长度。X()12、数组边定义边赋值时,大括号内数据项的数目可以小于或等于数组的长度。V)13、字符串函数strcat(stU,str2)的作用是将字符串str2连接在字符串stU后()14、定义字符型一维数组char a80;可用gets(a0)给a0赋值。X()15、数组定义int a10;也可以写成int a(10);。 X三、程序阅读题1、下面程序的输出结果是 6 5。main ()char ch7="65ab21”;int i;for (i=0;chi>='0'&&chi<=
51、9;9'i+) printf("%c ",chi);2、下面程序执行后,s1=15.0,s2=2.7float b=0.5,1.6,2.7,3.8,4.9,5,6.1,6.2,7.3,8.4,s1,s2;int i;for(i=0,s1=s2=0 ; i<9 ; i+ )if ( i%2 ) s1 += ( int ) bi;if( i%3 ) s2 += bi -(int) bi;3、将程序补充完整,实现功能:输出斐氏数列的前20项,菲波纳契额数列具有这样的 性质:F(0)=1 F(1)=2 F(N)=F(N-1)+F(N-2)#include "
52、stdio.h"void main() int i;long f20=1,2;for(i=2 ; i<20 ; i+)fi = fi-2 + fi-1;for(i=0 ; i<20 ; i+)printf("%ldt ",fi);)4、将程序补充完整,实现功能:输入2个字符串,判断两个用是否相同,相同输出yes, 不同输出no。#include "stdio.h"#include "string.h"void main() char x80,y80;gets(x);gets(y);if(strcmp(x,y)=0
53、)puts("yes");elseputs("no");)5、设有以下代码:#include "stdio.h"void main()int a33,s=0;int i,j;for(i=0;i<3;i+)for(j=0;j<3;j+)scanf("%d”,&aij);for(i=0;i<3;i+)for(j=0;j<i;j+)s+=aij;printf("%dn",s);)假设键盘上输入的9个数据为:1 23456789,上面程序的输出结果是 19第九单元指针、选择题1、以
54、下定义正确的是(C)。A) int x;float*p=x;B) int x;int*p=x;C) int x;int*p=&x;D) int x;float*p=&x;2、以下定义正确的是(D)。A) floatx;float*p=x;B) floatx;int*p=x;C) floatx;int*p=&x;D) floatx;float*p=&x;3、以下定义正确的是(A )A) floatx10;float*p=x;B) floatx10;int*p=x;C) floatx10;int*p=&x;D) floatx10;float*p=&x
55、;4、以下定义正确的是(B )。A) intx10;B) intx10;C) intx10;D) intx10;float *p=x;int*p=x;int*p=&x;float *p=&x;5、设有以下变量定义int x;float y;double z;z = sizeof( x ) + sizeof ( y ) + sizeof ( z ) ;/*我觉得答案是 12,大家多研究下 */ 则z的值为()。A) 8B) 4 C) 6 D) 10、判断题()1、数组名代表数组的首地址。正确()2、指针的类型必须跟其所指向的变量的数据或数据结构类型一致。正确()3、指针可以不操作数组。错误()4、空指针的值为NULL。正确()5、指针不能实现对数据的间接访问。错误第十一单元函数、选择题1、以下不正确的说法是(D )。A)在不同函数中可以使用相同名字的变量B)形式参数是局部变量C)在函数内定义的变量只在本函数范围内有定义D)在某函数内定义的变量可在其余函数中通用2、以下正确的函数定义
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 IEC 62541-11:2025 EN OPC Unified Architecture - Part 11: Historical Access
- 2025年大学动物医学(疫病防控)试题及答案
- 18岁高三成人礼学校成人礼成人礼相册
- 工程机械物流安全培训课件
- 工程招标培训
- 工程安全日常培训课件
- 戒烟限酒社区健康公平干预路径
- 成本管控提高医保基金使用效率的策略
- 节能配送车辆租赁合同协议
- 样品寄送预计到达时间合同
- 文艺复兴经典名著选读智慧树知到期末考试答案章节答案2024年北京大学
- 5.2.1识读电解铝生产工艺流程简图
- 魁北克腰痛障碍评分表(Quebec-Baclain-Disability-Scale-QBPDS)
- 指导病人留取痰标本流程
- 《矿业权评估培训》课件
- 《铁道概论》题库及参考答案
- 新版物业交割单
- 足球俱乐部试训个人简历
- GB/T 24002.1-2023环境管理体系针对环境主题领域应用GB/T 24001管理环境因素和应对环境状况的指南第1部分:通则
- 高考英语阅读理解专项练习100篇
- 燃机三菱控制系统简述课件
评论
0/150
提交评论