C语言测试题 .pdf





《C语言测试题 .pdf》由会员分享,可在线阅读,更多相关《C语言测试题 .pdf(48页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1 单项选择以下程序的执行结果是_. main() int w = 1, x = 2, y = 3, z = 4; w =( w x ) ? x : w; w =( w y ) ? y : w; w =( w z ) ? z : w; printf( %d , w ); A、2 B、4 C、3 D、1 答案: B 若有说明 :int n=2,*p=&n,*q=p;,则以下非法的赋值语句是()。A、n=*q; B、 p=q; C、p=n; D、*p=*q; 答案: C 题号: 5820 以下程序的输出结果是void prtv(int *x) printf(“%dn”, +*x); main()
2、int a = 25; prtv(&a); A、24 B、26 C、23 D、25 答案: B 题号: 6988 以下程序的输出结果是main() int a = 2, b =5; printf(“a=%d,b=%dn”,a, b); A、a=%2,b=%5 B、a=%d,b=%d C 、a=%d,b=%d D、 a=2,b=5 答案: C 题号: 6976 语句 printf(abrehiyboun);的输出结果是( 说明 :b是退格符 ) ()。A、abrehiybou B、rehiyou C、abrehiybou D、abrehiybou 答案: B 题号: 166 名师资料总结 - -
3、 -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 48 页 - - - - - - - - - 2 以下关于运算符优先顺序的描述中正确的是()。A、关系运算符算术运算符 赋值运算符 逻辑运算符B、赋值运算符逻辑运算符 关系运算符 算术运算符C、算术运算符关系运算符 赋值运算符 逻辑运算符D、逻辑运算符关系运算符 算术运算符 赋值运算符答案: B 题号: 333 下列语句的结果是()。main() int j; j=3; printf(%d,+j); printf(%d,j+); A、3,4 B
4、、4,4 C、4,3 D、 3,3 答案: B 题号: 457 设a和b均为 double 型变量,且 a=5.5 、b=2.5 ,则表达式 (int)a+b/b的值是A、6.000000 B、5.500000 C、6 D、6.500000 答案: A 题号: 523 若有定义 :int a=7;float x=2.5,y=4.7; 则表达式 x+a%3*(int)(x+y)%2/4的值是()。A、3.500000 B、0.000000 C、2.750000 D、2.500000 答案: D 题号: 855 若有以下程序段:int a=3,b=4; a=ab;b=ba;a=ab;则执行以上语句
5、后, a和b的值分别是()。A、a=4,b=4 B、a=3,b=3 C、a=3,b=4 D、a=4,b=3 答案: D 判断若有说明 int c;则while(c=getchar();是正确的 C语句。答案:正确C语言中 %运算符的运算对象必须是整型. 答案:正确c程序总是从程序的第一条语句开始执行.答案:错误名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 48 页 - - - - - - - - - 3 假设有 int a10, *p;则p=&a0 与p=a等价答案:正
6、确#define 和printf 都不是 C语句。答案:正确C语言本身不提供输入输出语句,输入和输出操作是由函数来实现的。答案:正确十进制数 15的二进制数是 1111.答案:正确x*=y+8 等价于 x=x*(y+8)。答案:正确若有 int i=10,j=2;则执行完 i*=j+8;后的值为 28。答案:错误关系运算符 = 与 = 的优先级相同。答案:错误填空以下程序段的输出结果是_。int i = 0, sum = 1; do sum += i+; while( i 5); printf(“%dn”, sum);答案:空 1: 11 表达式 3.5 + 1 / 2的计算结果是_。答案:空
7、 1: 3.5 以下程序段,要求通过scanf语句给变量赋值,然后输出变量的值。写出运行时给k输入 100,给a输入 25.81,给x输入 1.89234时的三种可能的输入形式_、_、_。int k; flaot a; double x; scanf(“%d%f%lf”, &k, &a, &x);printf(“k = %d, a = %f, x = %fn”, k, a, x);答案:空 1: 100 25.81 1.8923 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页
8、,共 48 页 - - - - - - - - - 4 空 2: 100 25.81 1.8923 空 3: 100 25.81 1.8923 阅读下面程序,程序执行后的输出结果为_。#include stdio.h main() char a,b; for(a=0,b=9;ab;a+,b-)printf (%c%c,a,b); printf (n); 答案:空 1: 0918273645 以下程序的输出结果是_。unsigned fun6(unsigned num) unsigned k = 1; do k *= num % 10; num /= 10; while( num); retur
9、n k; main() unsigned n = 26; printf(“%dn”, fun6(n); 答案:空 1: 12 下列程序的功能是输入一个整数,判断其是否是素数,若为素数输出1,否则输出 0. 请填空。main() int i, x, y=1; scanf (%d, &x ); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 48 页 - - - - - - - - - 5 for (i=2; ic*2 b!=5| ! (1/2 )中, a、b、 c的定义和赋
10、值为Int a=3,b=4,c=2;则表达式的值为_。答案:空 1: 1 单项选择能正确表示逻辑关系: a 10或a0 的C语言表达式是A、a=0 | a=10 or a=10 & a=10 | a=0 答案: D 设有定义: int n=0,*p=&n,*q=&p,则下列选项中正确的赋值语句是A、*p=5; B、 *q=2; C、p=1; D、q=p; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 48 页 - - - - - - - - - 6 答案: A 可在 C
11、程序中用作标识符的一组标识符是A、2c DO SiG B、void Define WORD C、as_b3 _123 If D、For -abc case 答案: C 以下运算符中,优先级最高的运算符是()。A、= B、| C、! D、% 答案: C 以下关于 long 、int 和short 类型数据占用内存大小的叙述中正确的是A、由 C语言编译系统决定 B、均占 4个字节C、由用户自己定义 D、根据数据的大小来决定所占内存的字节数答案: A 以下程序段给数组所有元素输入数据,应在下划线处填入的是main() int a10, i = 0; while(i =y&ch2)/(b1)的值是()
12、。A、8 B、2 C、0 D、4 答案: C C语言中不可以嵌套的是()。A、选择语句 B、循环语句 C、函数调用 D、函数定义答案: D 判断若i =3 ,则 printf(%d,-i+);输出的值为 -4 。答案: 错误7&3+12的值是 15。答案:错误名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 48 页 - - - - - - - - - 7 语句 printf(%f%,1.0/3);输出为 0.333333 。答案:错误a=(b=4)+(c=6) 是一个合法
13、的赋值表达式。答案:正确如果有一个字符串,其中第十个字符为n,则此字符串的有效字符为9个。答案:错误若有 int =10, j=0;则执行完语句 if (j=0)+ +; else - -; 的值为 11。答案:错误参加位运算的数据可以是任何类型的数据。答案:错误题号: 6167 表达式 (j=3, j+) 的值是 4.答案:错误函数 strlen(ASDFGn)的值是 7。答案:错误#define 和printf 都不是 C语句。答案:正确填空当计算机用两个字节存放一个整数时,其中能存放的最大十进制整数是_、最小十进制整数是_,它们的二进制形式是_。答案:空 1: 65535 空 2: -3
14、2768 空 3: 1111 1111 1111 1111,1000 0000 0000 0000 表达式( int )(double )(5/2 )+2.5)的值是 _.答案:空 1: 4 若有以下定义:char a=” ABCD ” , b=” abcd” ; if(strcmp(a,b)=0) printf(“ YESn” ); else 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 48 页 - - - - - - - - - 8 printf(“ NOn” )
15、; 执行结果是 _ 。答案:空 1: 无结果【或】语法错误【或】语法错误 (strcmp(a,b)=0) 以下程序的执行结果是_。main() int a, b, *p = &a, *q = &b; a = 10; b = 20; *p = b; *q = a; printf(“ a = %d, b = %dn” , a, b); 答案:空 1: a = 20, b = 20 若有以下定义 :double w10; 则w数组元素下标的上限是_, 下限是_。答案:空 1: 9 空 2: 0 C语言中用 _表示逻辑真,用_表示逻辑假。答案:空 1: 非0 空 2: 0 以下程序段的输出结果是_。i
16、nt *var, ab; ab = 100; var = &ab; ab = *var + 10; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 48 页 - - - - - - - - - 9 printf(“%dn”, *var);答案:空 1: 110 以下程序段的输出结果是_、_、_、_double a = 513.789215; printf(“a = %8.6f, a = %8.2f, a = %14.8f, a = %14.8lfn” , a, a, a,
17、 a);答案:空 1: a = 513.789215 空 2: a = 513.79 空 3: a = 513.78921500 空 4: a = 513.78921500 若有定义: int a=8 ,b=5,c 执行语句 c=a/b+0.4 后,c的值为 _答案:空 1: 1 表达式 3.5 + 1 / 2的计算结果是_。答案:空 1: 3.5 单项选择以下程序段的输出结果为()。 for(i=4;i1;i-) for(j=1;ji;j+) putchar(#); A、# B、无 C、# D、 # 答案:A 以下能正确进行字符串赋值的语句是名师资料总结 - - -精品资料欢迎下载 - -
18、- - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 48 页 - - - - - - - - - 10 A、char s5 = “ good! ” ; B、char s5 = ,a?, ,e?, ,i ?, ,o?, ,u?; C、char s5; s = “ good! ” ; D、char *s; s = “ good! ” ; 答案: D 以下程序段的输出结果为()。 char c=abc; int i=0; do ;while(ci+!=0);printf(%d,i-1); A、abc B、3 C、ab D、2 答案
19、: B 以下选项中合法的用户标识符是_。A、_2Test B、long C、A.dat D、3Dmax 答案: A 设有定义 :int n=0,*p=&n,*q=&p;则以下选项中,正确的赋值语句是()。A、p=1; B、*p=5; C、*q=2; D、q=p; 答案: B 若已定义 x为int 类型变量,下列语句中说明指针变量p的正确语句是()。A、int *p=&x; B、int p=&x; C、*p=*x; D、int *p=x; 答案: A 题号: 5227 以下程序的输出结果是void sub(int x, int y, int *z) *z = y - x; main() int
20、a, b, c; sub(10, 5, &a); sub(7, a, &b); sub(a, b, &c); printf(“%d, %d, %dn”, a, b, c); A、-5, -12, -7 B、-5, -12, -17 C、5, -2, -7 D、5, 2, 3 答案: A 以下选项中正确的实型常量是A、0.03x102 B、32 C、 3.1415 D、0 答案: B int a10; 给数组 a的所有元素分别赋值为1、2、3、的语句是()。A、for(i=1;i11;i+)ai+1=i; B、for(i=1;i11;i+)ai-1=i; C、for(i=1;i11;i+)ai=
21、i; D、for(i=1;i11;i+)a0=1; 答案: B 以下对整型数组a的正确说明是:A、int n = 10, an; B、名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 48 页 - - - - - - - - - 11 C、D、int a(10); 答案: C 判断若有 int i=10,j=2;则执行完 i*=j+8;后的值为 28。答案:错误一个 include 命令可以指定多个被包含的文件。答案:错误进行宏定义时,宏名必须使用大写字母表示。答案:错误
22、逻辑表达式 -5&!8 的值为 1.答案:错误若有宏定义: #define S(a,b) t=a;a=b;b=t由于变量 t 没定义,所以此宏定义是错误的。答案:错误关系运算符 = 与 = 的优先级相同。答案:错误若有定义和语句:int a;char c;float f;scanf(%d,%c,%f,&a,&c,&f); 若通过键盘输入:10,A,12.5,则a=10,c=A,f=12.5.答案:正确如果有一个字符串,其中第十个字符为n,则此字符串的有效字符为9个。答案:错误在Turbo C 中,整型数据在内存中占2个字节。答案:错误C语言中 %运算符的运算对象必须是整型.答案:正确填空以下程
23、序的输出结果是_。main() int x = 2; while ( x- ); printf(“%dn”, x); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 48 页 - - - - - - - - - 12 答案:空 1: -1 以下程序的执行结果是_。main() int k=8; switch(k) case 9: k+=1; case 10: k+=1; case 11: k+=1; break; default: k+=1; printf(%dn,k
24、); 答案:空 1: 9 若要通过以下语句给a、b、c、d分别输入字符A、B、C、D,给 w、x、y、z分别输入10、 20、30、40,正确的输入形式是_。请用 代表 Enter键。scanf(“ %d%c%d%c%d%c%d%c”, &w, &a, &x,&b, &y, &c, &z, &d);答案:空 1: 10A20B30C40D 以下程序的输出结果是_。#define PR(ar) printf(“ar = %d “, ar)main() int j, a = 1, 3, 5, 7, 9, 11, 13, 15, *p = a + 5; for(j = 3; j ; j-) swit
25、ch( j ) case 1: case 2: PR(*p+); break; case 3: PR(*(-p) ); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 48 页 - - - - - - - - - 13 答案:空 1: ar=9 ar=9 ar=11 以下程序的输出结果是_。main() int x=100, a=10, b=20, ok1=5, ok2=0; if (ab)if (b!=15)if(!ok1 )x=1; else if(ok2)x=10
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C语言测试题 2022 语言 测试

限制150内