2022年c语言选择题及答案 .pdf
1以下选项中不合法的用户标识符是( C )。 A)_123 B)PP C)A$ D)Dim 2C 语言提供的合法数据关键字是( A )。A)float B) Sagned C) Integer D) ing 3判断 char 型变量 c1 是否为小写字母的正确表达式为 ( D )。A) a=c1=A. &(c1=c1)|(z=a)&(c1b) c=a,a=b,b=c; B)if(ab) c=a,a=b,b=c; C)if(ab) c=a;a=b;b=c; D)if(ab) c=a;a=b;b=c; 7若有说明和语句: int a=5,b; b=a+; 此处变量b 的值是( C )。 A)7 B)6 C)5 D) 8以下程序的输出结果是( D ) 。int x=10,y=10; printf(%d %dn,x-,-y); A) 10 10 B) 9 9 C) 9 10 D) 10 9 9C 语言用 ( C ) 表示逻辑“真”值。A)true B)t或 y C) 非零整数值 D)整数10指出下面正确的输入语句( B )。 A) scanf(a=b=%d,&a,&b) ; B) scanf(%d,%d,&a,&b) ; C) scanf(%c,c) ; D) scanf(% f%dn,&f) ; 11若 x=5,y=3 则 y*=x+5; y的值为(D )。A) 10 B)20 C) 15 D) 3012设整型变量n 的值为 2,执行语句 n+=n-=n*n ; 后,n 的值是( C )。 A )0 B)4 C) - 4 D) 2 13以下程序的运行结果是( D ) 。void main() int a=65; char c= A; printf(“%x,%d ” ,a,c); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 5 页 - - - - - - - - - A)65, a B)41, a C)65,65 D )41,6514下面不正确的赋值语句是(B )。 A) a=a+1 B) a= =b C) a+=b D) a=1 15不是 C 语言提供的合法关键字。( B )A)switch B)prin C)case D)default 16在 C 语言中对于实型数组, 其每个数组元素的类型是( A )。A)实型 B)整型 C)可以为任何类型 D)不确定17正确的标识符是(D ) 。A)?a B)a=2 C)3A D )a_318sizeof(double)的结果值是(A ) 。A)8 B )4 C )2 D)出错19以下对二维数组 a 的正确说明是( C) 。A)int a B) float a(3,4) C)int a44 D ) float a(3)(4) 20语句 a=(3/4)+3%2; 运行后, a 的值为( B)A)0 B)1C)2 D)321下列属于文件包含的命令是( C )。 A) #define N 25 B.)#endif C ) #include stdio.h D) #else 22表达式 (double)(20/3)的值为(B) 。A)6 B )6.0 C)2 D)3 23若已知a=10,b=20, 则表达式 !ab 的值为( C )。A)10 B)20 C)1 D)0 24 TURBO C 中 int类型变量所占字节数是( B )。 A)1 B)2 C)3 D)4 25设 n=10, i=4 ,则赋值运算 n%=i+1 执行后, n 的值是 ( A )。A) 0 B) 3 C) 2 D) 1 26设 Int n=3;则有表达式 +n,n 的结果是 ( C ) 。A)2 B)3 C)4 D)5 27定义了三个变量:int a, b; float c; 使用 scanf 函数为这三个变量输入值,哪个输入语句是正确的:( C )。A)scanf(%d%d%f,a,b,c) B)scanf(%d%d%d,a,b,c) C)scanf(%d%d%f,&a,&b,&c) D)scanf(%d%d%d,&a,&b,&c) 28以下叙述中正确的是(A ) 。AC 程序中注释部分可以出现在程序中任意合适的地方;B花括号 和 只能作为函数体的定界符;C构成 C 程序的基本单位是函数,所有函数名都可以由用户命名;D分号是C 语句之间的分隔符,不是语句的一部分。29有语句 :char s110,s210=books; 则能将字符串 books 赋给数组s1 的正确语句是( B )。A)s1=books B)strcpy(s1,s2) C)s1=s2 D)strcpy(s2,s1) 30sizeof(double)的结果值是( A ) 。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 5 页 - - - - - - - - - A)8 B)4 C)2 D)出错31 有下列程序段#include #define N 4 #define M 8 void main() int i; for(i=N; iM; i+) printf(%dn, i); 该程序中的for循环执行的次数是(A )。A)4 B) 5 C)6 D)7 32C语言中定义符号常量正确的是( D )。A)#define PI=3.14 B)define PI 3.14 C)float PI=3.14 D)#define PI 3.14 33语句 printf(“%.2f”,123 .456 );的输出结果是( A )。A)123.46 B)123.456 C)1.23e2 D)1.23456e2 34 C 语言程序的基本单位是( C )。A)程序行B)语句C)函数D)字符35能正确表示逻辑关系 : ”a10且 a0”的 C 语言表达式是(C )。A)0 a 10B)0=a=0 & a=0 & a=10 36若有说明:int x3= 1,3,5,7,9,11,13; ,则 x 数组的行数为( B )。A)2 B) 3 C)4 D)无确定值37若有定义 :int a3=0,1,2;则 a1 的值为 ( B ) 。 A) 0 B) 1 C)2 D) 3 38已知 int a10;则对 a 数组元素引用不正确的是(A ) 。A)a10 B)a3+5 C)a10-10 D) a5 39下列属于整型常量的是( A)。 A ) 12 B)2.0 C) -12.0 D) 10E10 40 putchar()函数的功能是向终端输出( B ) 。A)多个字符 B )一个字符 C)一个实型变量值 D )一个整型变量表达式41下面程序的输出结果是( A ) 。#include #define SQR(x) (x*x) void main() int a,b=3; a=SQR(b+2); printf(“n%d”,a); A)11 B)25 C)不定值D)产生错误42设 int x=1,y=1;表达式( !x+ | y-)的值是(B ) 。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 5 页 - - - - - - - - - A) 0 B ) 1 C) 2 D)-1 43以下程序运行后,循环体运行的次数为( B ) 。int i=10,x; for( ;i10;i+) x=x+i; A10 B0 C1 D无限44不属于字符型常量的是( C )。 A) A B ) a C) A D) b 45从循环体内某一层跳出,继续执行循环外的语句是:( C )。 A ) break语句 B)return语句 C )continue语句 D)空语句。46下列对数组定义不正确的语句是( D )。 A) int m5; B) char b=h, e; C) int a10=1,6,8,4; D ) char p;47在 TC 中,基本int a4 类型变量所占的字节数是( D)。A)1 B)2 C)4 D)848若有定义 :int a34=1,2,0,1,2,3;则 a11的值为 ( A ) 。A)0. B ) 1,2 C)1 D)3 49若有定义 :int a;则语句 a=(3*4)+2%3; 运行后 a 的值为 ( B ) 。A) 12 B )14 C)11 D) 17 50 getchar( )函数的功能是从终端输入(D ) 。A)一个整型量值 B )一个实型变量值 C )多个字符D)一个字符51 C 语言对于计嵌套语句的规定:else 总是与(B )配对A)第一个if B)之前最近且尚未配对C)缩进位置相同的if D)之前最近的if 52若有定义int a23;则对数组元素的非法引用是( D ) 。A)a01/2 B) a11 C)a4-40 D) a0353设: char s10=october;则 printf (%dn ,strlen(s);输出是:(A )。A)7 B) 8 C) 10 D)11 54设有 int x=11 ;则表达式( x+1/3 )的值是(C )。A)3 B) 4 C) 11 D)12 55设有语句int a=3;,则执行了语句a+=a-=a*a 后,变量 a 的值是(D )A)3 B)0 C)9 D)-1256 char 型变量存放的是(A) 。A)ASC 码值 B )字符本身 C)十进制代码值 D)十六进制代码值57 C 语言中 while 和 dowhile 循环的主要区别是(A ) 。A)dowhile 的循环体至少无条件执行一次B)While 的循环控制条件比dowhile 的循环控制条件严格C)dowhile 允许从外部转到循环体内名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 5 页 - - - - - - - - - D)dowhile 循环体不能是复合语句58要求操作数必须是整数的操作符为(B )。A)/ B)% C)* D)+ 59以下程序的输出结果是( D)。 char str15=hello!; printf(%dn,strlen(str); A) 15 B) 14 C) 7 D) 660下面程序段的运行结果是( D ) 。int a =5 b=6;printf (“ %d ”,a/b); A )5 B) 6 C) 7 D ) 0名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 5 页 - - - - - - - - -