




已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
选择题1、以下不是C语言基本数据类型的是 D 。A 字符型B C 整型D 构造类型2、以下 B 是八进制数。A 1X12B 123C 1001D 01233、Turbo C中,char类型变量所占字节数是 B 。A 2B 1C 3D 44、C语言提供的合法的数据类型关键字是 B 。A longerB shortC integerD character5、C语言中运算对象必须是整型的运算符是 A 。A %=B =C +=D *=6、下面关于字符串和字符常量的叙述中错误的是 C 。A 字符常量由单引号括起来,字符串常量由双引号括起来B 字符常量只能是单个字符,字符串常量可以含一个或多个字符C 字符常量占一个字节的内在空间,字符串常量占的内在字节数为字符串中字符数D 可以将一个字符常量赋予一个字符变量,但不能将一个字符串常量赋予一个字符串变量7、以下程序的输出结果是 D 。main(0int m = 10, n = 3;printf( %dn , n = m / n ) ;A 10B 11C 13D 38、若以下变量均已正确说明为char类型,要给x、y和z输入数据,正确的是 B 。A scanf ( x, y, z );B scanf ( %c%c%c, &x, &y, &z ) ;C scanf ( %C%C%C, x, y, z ) ;D scanf ( %c%c%c, x, y, z ) ;9、以下程序的输出结果是 C 。char c1, c2;c1=65; c2 = 65 + 32 + 1 ;printf ( %c, %c , c1, c2 ) ;A a, BB A, BC A, bD a, b10、以下程序的输出结果是 C 。#include stdio.h#include math.hmain()int a=3, b=9 ;float y, x=1.2 ;y= ( a+b ) / sqrt ( b ) * x ;printf ( %n, y ) ; A 1.000000B 1.400000C 4.800000D 1.90000011、以下程序段的输出结果是 7 6 7 。【提示:printf ()为右结合的运算】int y=7 ;printf ( %d %d %d , +y, -y, y+ ) ;A 8 7 8B 8 7 7C 7 8 7D 7 8 812、表达式“ sizeof (unsigned short )”的值是 A 。A 2B 4C 3D 813、下列程序执行后,屏幕上显示的结果是 C 。#include stdio.h main ()int a ;float b ;a = 4; b = 9.5 ;printf ( a=%d b=%4.2fn , a, b ) ; A a=%d b=%fnB a=%d b=%fC a=4 b=9.50D a=4 b=9.514、以下程序段,当输入“3”并回车后,屏幕上显示的内容是 C 。int ch ;ch = getchar () ;putchar () ;A 2B 1C 3D 015、下列程序执行后,屏幕上显示 B 。int j = 2, i = 1 ;j /= i*j ;printf ( %dn, j ) ;A 2B 1C 3D 016、设有定义:intk=0;,以下选项的四个表达式中与其他三个表达式的值不相同的是 D 。A k+B k+=1C +kD k+117、以下程序的输出结果是_A_。 #includemain( )printf ( %dn, strlen (IBMn0121 ) ) ;A 9B 7C 11D 1018、下列叙述中,不是C语言特点的是 B 。A 简洁、紧凑,使用方便、灵活,易于学习和掌握B C语言是面向对象的程序设计语言C C语言允许直接对位、字节和地址进行操作D C语言数据类型丰富,生成的目标代码质量高19、C语言程序的大小写字母是 D 。A 都不加区分B 变量不加区分C字符串不加区分D 字符串中区分20、C语言程序是由 C 组成。A 子程序B 主程序和子程序C 函数D 过程21、下面属于C语言标识符的是 D 。A 1abB fC ?bD _a1222、以下选项中,为C语言合法关键字的是 D 。A antB cherC withD default23、以下选项中不合法的用户标识符的是 A 。Adef.cB fileC MainD PRINTF24、C语言中,主函数的个数是 B 个。A 2个B1个C 任意个D 10个25、下列关于C语言注释的叙述中错误的是 D 。A 以“/*”开头并以“*/”结尾的字符串为C语言的注释符B 注释可以出现在任何位置,用以提示和注释程序的意义C 程序编译时,不对注释作任何处理D 程序编译时,需要对注释进行处理26、以下选项中不合法的用户标识符的是 A 。Adef.cB fileC MainD PRINTF27、C语言中,主函数的个数是 B 个。A 2个B1个C 任意个D 10个28、下列关于C语言注释的叙述中错误的是 D 。A 以“/*”开头并以“*/”结尾的字符串为C语言的注释符B 注释可以出现在任何位置,用以提示和注释程序的意义C 程序编译时,不对注释作任何处理D 程序编译时,需要对注释进行处理29、下列不是C语言分隔符的是 D 。A 回车B 空格C 制表符D 双引号30、下列关于C语言的关键字的叙述中错误的是 D 。A 关键字是由C语言规定的具有特定意义的字符串,也称保留字B 用户定义的标识符不应与关键字相同C ANSI C标准规定的保留字有32个D ANSI C标准规定的保留字有64个31、若有以下定义:float a; int x, y ; 则正确的switch语句是 D 。A switch ( a )B switch ( int (a )case 1.0: printf (*n);case 1: printf (*n);case 2.0: printf(*n); case 2: printf (*n); Cswitch ( x+y )Dswitch ( x+y ) ;case 1: printf (*n);case 1: printf (*n);case 1+2: printf (*n); case 2: printf (*n); 32、以下由while构成循环的次数是 D 。int i = 1 ;while ( i = 1 ) i+;A 执行无限次B 语法错C 一次也不执行D 执行1次33、以下程序的输出结果是 D 。main ( )int i , mul ;mul没有初始化for ( i = 1; i 3; i+ ) mul *=1;printf( %dn, mul ); A 3B 6C 1D 不确定34、若m的值为100,则以下for循环执行次数是 D 。for ( j = 0; j = m; printf ( * ) ); j+; A 执行100次B 语法错C 一次也不执行D 无限次35、若要求在if后一对圆括号中的表达式,表示a等于0时的值为真,则能正确表示这一关系的表达式是 B 。A a != 0B !aC aD a = 036、下列程序段运行后x的值是 A 。main ()int a, b, c, x ;a=b=c=0 ; x= 35 ;if ( !a ) x- ;else if ( b ) ;if ( c ) x =3 ;printf ( %d, x ); A 34B 0C 35D 337、以下程序段的执行结果是 B 。main ()int x = 23 ;do printf (%dn, x- ); while ( !x ) ;printf (%dn, x ); A 3221B 2322C 不输出任何内容D 陷入死循环38、若从键盘输入56以下程序的执行结果是 C 。main ()int x, y, m ;scanf (%d %d, &x, &y );m=x ;if ( x y ) m = y ;m *= m ;printf (%dn, m ); A 14B 18C 36D 2039、以下程序的输出结果是 C 。main ()int i, j, m = 0 ;for ( i = 1; i = 10; i += 3 )for ( j = 2; j = 12; j +=2 ) m +;printf (%dn, m ) ; A 10B 12C 24D 1540、下列关于do.while语句和while语句的叙述中,错误的是 C 。A do.while语句先执行循环体中的语句,然后再判断表达式B while语句是先进行条件判断,满足条件才去执行循环体C while语句至少要执行一次循环语句D do.while循环至少要执行一次循环语句41、下列关于break语句和continue语句的叙述中错误的是 D 。A break可以用来退出循环体B continue语句用来退出本次循环,提前进入下次循环的判定C break语句和continue语句都可以用在while、do.while和for循环体中D 在循环语句中,break语句不能和if语句连在一起使用42、下列程序执行后,b的值为 。main ()int a = 1, b = 10 ;do b -= a; a+ ; while ( b - 0; y - )if ( y%3 = 0 ) printf (%d, - y ); continue ; A 743B 852C 793D 87645、下列程序的输出结果是 D 。main ()int n = 10 ;while ( n - ) ;printf ( n=%dn, n ); A 构成死循环B n = 0C n = 1D n = -146、从以下给出的表达式中选出与while ( E )语句中的( E )等价的表达式是 C 。A ( !E != 0 )B ( E 0 ) & ( E 0 ) & ( E 0 )C ( E != 0 )D ( E = 0)49、以下程序的执行结果是 D 。main () int x = 10, y = 20, t = 0; if ( x = y ) t = x ; x = y ; y = t ;if只有一个内嵌语句 printf( “%d %dn”, x, y );A 10 20B 10 0C 20 10D 20 050、如果从键盘输入9,则以下程序的执行结果是 B 。main () int n ; scanf ( “%d”, &n ) ; if ( n+ y ) ? x : y ;printf (%d, max ) ;A 8B 5C 3D 1352、选择结构程序设计的特点是 D 。A 自上向下逐个执行B 根据判断条件,选择其中一个分支执行C 反复执行某些程序代码D 以上都是53、int a = 2; while ( a=0 ) a -; 该循环共执行了 C 次。A 2B 1C 0D 无限次54、以下程序的执行结果是 C 。#include stdio.hmain() int x=1, y=0, a=0, b=0; for ( x=1; x=4; x+ ) switch(x) case 1: switch (y) case 0: a+; break; case 1: b+; break; case 2: a+; b+; break;case 3: a+; b+;printf(a=%d, b=%dn, a, b);A a = 2, b = 1B a=3, b = 2C a = 4, b = 3D a = 5, b = 455、 以下选项中,当x为大于1的奇数时,值为0的表达式 D 。A x%2 = 1B x/2C x%2 != 0D x%2 = 056、当执行以下程序时,输入1234567890,则其中while循环体将执行_C_次。# includemain( )charch ;while ( ( ch = getchar ( ) ) = 0 )printf ( # ) ;A 执行10次B 执行9次C 执行0次D 无限次57、若x为int型变量,则则以下语句的结果是 C 。for ( x=1; x100; x+ )if ( + x%2 = 0 ) if ( + x%3= 0 )if ( + x%5= 0 )printf (%d, x );A 30 60 90B 29 59 89C 不打印任何内容D 31 61 9158、在C语言中,数组元素下标的下限是 C 。A 1B视说明语句而定C 0D 无固定下限59、定义一维数组时, 内的下标表达式应该是 A 。A 整型常量表达式B 常量表达式C 表达式D 整型表达式60、若有说明语句:int a 2 3 = 0 ;,则下面正确的叙述是 C 。A 此语句说明不正确B 只有a0 0可以得到初值0C数组中的每个元素可以得到初值0D数组中的每个元素可以得到初值,但不一定为061、下列数组定义正确的是 B 。A long a 4 = 1, 2, 3, 4 5 ;B float x 3 = 0;C int s 3 = 1,2,3 ;D char z 2 = ;62、有语句char str 10 , str2 10 = China ;,则将字符串China 赋给数组str的正确语句是 B 。A str1= China ;B strcpy ( str1, str2 );C str1 = str2D strcpy ( str2, str1 );63、以下对一维数组a的正确定义是 C 。A int a (10 );B int n, a n ;C #define N 10D int n; scanf (%d, &n );int a N ;int a n ;64、定义以下变量和数组,则下面语句的输出结果是 A 。int x 3 = 9, 8, 7, 6, 5, 4, 3, 2, 1 ;for ( i=0; i 3; i+ ) printf (%d, x i 2-i );A7 5 3B 7 4 1C 9 5 1D 9 6 365、以下程序的输出结果是 B 。main() char a=1,2,3,4,0;printf(%d %dn,sizeof(a) ,strlen(a) );A5 5B 5 4C 4 5D 4 466、若有以下语句,则下面 B 是正确的描述。static char x = 12345;static char y = 1, 2, 3, 4, 5 ;printf(%d %dn,strlen(x),strlen(y);Ax数组和y数组的长度相同Bx数组的长度大于y数组的长度C x数组等价于y数组Dx数组的长度小于y数组的长度67、若有语句long b 3 3= 1, 2 , 9, 8, 7 ;则b 1 1 的值为 C 。A1B 7C 8D 968、在数组中,数组名表示 A 。A数组第一个元素的首地址B数组第一个元素的首地址C数组所有元素的首地址D数组最后一个元素的首地址69、以下程序运行后的输出结果是 D 。main( )int m 3 = 1,2,3,4,5,6,7,8,9 ;int i, k = 2;for ( i=0; i3; i+ ) printf (%d, m k i );A456B 258C 369D 78970、以下程序的运行结果是 C 。main ( )int i, j, m, n;char a = a, b, c, d, e, f, g, h, 0 ;char b10 = a, b, c, d, e, f, g, h, 0 ;i= sizeof( a ); j=strlen( a ); m= sizeof( b ); n=strlen ( b );printf ( %d, %d, %d, %dn, i, j, m, n );A 9, 9, 10, 10B 8, 9. 8, 10C 9, 8, 10, 8D 9, 8, 9, 871、判断字符串是否相等,应当使用 D 。A if (s1 = s2 )B if ( s1 = s2 )C if (strcpy (s1, s2 )D if ( strcmp (s1, s2 )72、在C语言中,二维数组元素在内存中的存放顺序是 A 。A 按行存放B 按列存放C 由用户决定D 由编译器确定73、以下程序的运行结果是 D 。main( ) char s 10 , c = a;for ( int i = 0; i=1; i - ) a i = a i 1 ;for (i=0; i5; i+ ) printf (%d , a i );A 1 2 3 4 5B 2 3 4 5 1C 1 1 2 3 4D 5 1 2 3 475、有以下程序main ()int num 4 4 = 1,2,3,4, 5,6,7,8,9,10,11,12, 13,14,15,16 , i, j;for ( i = 0; i 4; i +)for ( j = 0; j i; j + ) printf (%4c, );for ( j = ; j 4; j + ) printf ( %4d, num i j );printf (n);若要按以下形式输出结果,则在程序的下划线处应填入 B 。1234678111216A 0B iC 4 iD i + 176、有以下程序,程序的运行结果是 C 。main ()int a 6 = 1, 2, 3, 4, 5, 6 , i, j, t;for (i = 0; i 3; i+ )j = 3 + i;t = a i ; a i = a j ; a j = t;for ( i = 0; i 6; i + ) printf (%d , a i );A 1 2 3 4 5 6B 6 5 4 3 2 1C 4 5 6 1 2 3D 3 4 5 6 1 277、以下程序的运行结果是 A 。main ()int a 4 4 =1,2,3,4, 1,2,3,4, 1,2,3,4, 1,2,3,4;int i, j, s = 0;for ( j = 0; j 4; j + )i = j; s += a i j ; printf (%dn, s );A 10B 40C 4D 1278、函数在定义时,省略函数类型说明符,则该函数值的类型为 A 。A intB floatC longD double79、以下 个函数,真正地没有返回值 B 。A int a( ) int a = 2; return ( a ); Bvoid b( ) printf( c ); Cint a( ) int a = 2; return a; D 以上都是80、在C语言中,有关函数的说法,以下正确的是 C 。A 函数可嵌套定义,也可嵌套调用B 函数可嵌套定义,但不可嵌套调用C 函数不可以嵌套定义,但可以嵌套调用D 函数不可嵌套定义,也不可以嵌套调用81、函数调用可以在 D 。A 函数表达式中B 函数语句中C 函数参数中D 以上都可以82、被调用函数调用结束后,返回到 A 。A 主调用函数中该被调用函数调用语句处B 主函数中该被调用函数调用语句处C 主调用函数中该被调用函数调用语句的前一条语句D 主调用函数中该被调用函数调用语句的后一条语句83、以下关于递归的说法错误的是 C 。A 递归是特殊的嵌套B 递归要注意两点,递归终止条件和递归公式C 递归可以轻松地转为选择语句D 递归可分为两个阶段,即回推和递推84、有关数组名作为函数参数说法错误的是 C 。A 用数组名作为函数参数时,要求形参和实参类型相同B 用数组名作为函数参数时,实参传给形参的是数组的首地址C 用数组名作为函数参数时,实参将数组各元素的值传给形参D 用数组名作为函数参数时,实参和形参共享同一数组85、在函数内部定义的变量称为 B 。A 全局变量B 局部变量C 外部变量D 静态变量86、静态变量的说明符为 B 。A autoB staticC externD register87、C语言中,默认的存储类别为 A 。A autoB staticC externD register88、运行下列程序,w 的值为 A 。main ()int w = 2, k;for ( k = 0; k 3; k+ ) w = f ( w ); printf (%dn, w ); f ( x )int y = 0;static z = 3;y+; z +;return ( x + y + z );A 20B 7C 28D 1389、以下程序的运行结果为 A 。int num ( )int x, y, a = 15, b = 10;x = a b; y = a + b; return;main ( )int a = 7, b = 5;x = a + b; y = a b;num ( );printf (%d %dn, x, y );A 12, 2B 5, 20C 2, 12D 不确定90、以下程序的运行结果为 C 。int num ( )extern int x, y;int a = 15, b = 10;x = a b; y = a + b; return;main ( )int a = 7, b = 5;x = a + b; y = a b;num ( );printf (%d %dn, x, y );A 12, 2B不确定C 5, 25D2, 1291、以下程序的运行结果是 B 。main() fun( ); fun( ); void fun( ) static int a=2; char k=A; a*=2; k+=1; printf( %d, %cn, a, k ) ;A4, BB4, BC4, BD4, B4, B8, B4, C8, C92、以下程序的运行结果为 D 。unsigned f6 ( unsigned x )unsigned b = 2;do b *= x%10; x = x/10; while ( x );return ( b ); main ( )unsigned n = 46;printf (%dn, f6 ( n ) );A 程序死循环B24C 12D4893、以下程序的运行结果是 。intk=0;voidfun( intm )m += k; k += m;printf(“m=%dnk=%d”, m, k+);main()int i = 4;fun( i+ ); printf ( i=%dk=%dn, i, k );A m =5 k = 10Bm = 4 k = 8i = 5 k = 11i = 5 k = 9C m =5 k = 11Dm = 4 k = 9i = 5 k = 11i = 5 k = 994、以下程序的运行结果为 B 。int fun ( int x )int p;if ( x = 0 | x = 1 ) return ( 3 );p = x fun ( x 2 );return p;main ( )printf ( %dn, fun ( 9 ) ); A 8B7C 6D595、若有定义:int a;,则定义一个指针p,使其可以指向变量a的赋值语句是 C 。A int p = a;Bint *p = a;C int *p = &a;Dint p = *a;96、若有定义:int a; int *p=&a,则通过指针p给变量a读入的数据的scanf函数的调用语句是 D 。A scanf (%d, *p );Bscanf ( %d, *p );C scanf (%d, &p );Dscanf ( %d, p );97、以下正确的叙述是 A 。A 数组名实际上是此数组的首地址,所以数组名相当于一个指针变量B 若定义数组a23,则a+1和 *(a+1)完全相等C 若定义数组a23,则+a和 a1完全等价D:或指针D 某函数的形参为一个数组,则调用此函数时只能将数组名作为对应的实参 98、若有说明:float x, y = 1.0, *p = &x; ,则与x = y; 等价的语句是 B 。A x = *p;B*p = *&y;C x = &y;Dx = *p;99、若有以下定义:int n, *p; ,则正确的赋值表达式是 A 。A p = &n;Bp = n;C *p = &n;D*p = *n;100、以下定义语句中,错误的是 D 。A int a = 1, 2 ;Bchar *a 3 ;C char s 10 = test;Dint n = 5, a n ;101、若有说明:char s1 4 =12; char *ptr;则以下语句后的输出为 A 。ptr = s1;printf ( %cn, *(ptr+1) );A 字符 2B字符 1C 字符 2 的地址D不确定102、下列程序的输出结果是 C 。main ()char a 10 = 9, 8, 7, 6, 5, 4, 3, 2, 1 , *p = a + 5;printf ( %d, * -p ); A 非法Ba 4 的地址C 5D3103、若有说明语句:int x 3 4 ; 则以下关于x、*x、 x 0 、 &x 0 0 的正确描述是 D 。A x、 * x 、 x 0 和 &x 0 0 均表示元素x 0 0 的地址B 只有x、 x 0 和 &x 0 0 表示的是元素x 0 0 的地址C 只有x 0 和 &x 0 0 表示的是元素x 0 0 的地址D 只有 &x 0 0 表示的是元素x 0 0 的地址104、以下程序执行后,x 值为 B 。main ()int *p, x;x = 20; p = &x; x = *p + 5;printf (%d, x );A 20B25C 15D5105、以下程序的输出结果是 C 。main ()int i = 1, a = 2, b = 3;int *pi = &i, *pa = &a, *pb = &b;*pb = *pi * ( *pa );printf ( %dn, b );A 6B3C 2D1106、以下程序的输出结果是 C 。void add ( int a, int b, int *c ) *c = b + a; main()int x, y, z;add ( 1, 2, &x );add ( x, 3, &y );add ( x, y, &z );printf ( %d, %d, %dn, x, y, z );A 1, 2, 3B4, 5, 6C 3, 6, 9D3, 4, 2107、以下程序的运行结果是 B 。void fun ( int *x )printf ( %dn, - *x ); main ()int a =2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 怎么写数学测试题及答案
- 2025年森林环境考试题目及答案
- 燃煤发电环保设施建设方案
- 高级绿化考试试题及答案
- 社会保险基金应收账款质押担保及区块链技术应用合同
- 金融行业员工岗位调整及劳动合同完善协议
- 环保项目环评咨询与实施合同
- 离婚协议书贷款还款及财产分割执行细则合同
- 企业环境管理体系建设与节能减排方案
- 物业让与担保及能源管理系统建设合同范本
- 【数学】角的平分线 课件++2025-2026学年人教版(2024)八年级数学上册
- 阿迪产品知识培训内容课件
- 幼儿园副园长岗位竞聘自荐书模板
- 第1课 独一无二的我教学设计-2025-2026学年小学心理健康苏教版三年级-苏科版
- T∕CEPPEA5004.5-2020核电厂常规岛施工图设计文件内容深度规定第5部分仪表与控制
- 反对邪教主题课件
- 化工阀门管件培训课件
- 新疆吐鲁番地区2025年-2026年小学六年级数学阶段练习(上,下学期)试卷及答案
- TCT.HPV的正确解读课件
- 白酒生产安全员考试题库及答案解析
- 广东春考试卷及答案
评论
0/150
提交评论