全国计算机等级考试二级教程(高教版)习题(有答案).doc_第1页
全国计算机等级考试二级教程(高教版)习题(有答案).doc_第2页
全国计算机等级考试二级教程(高教版)习题(有答案).doc_第3页
全国计算机等级考试二级教程(高教版)习题(有答案).doc_第4页
全国计算机等级考试二级教程(高教版)习题(有答案).doc_第5页
已阅读5页,还剩88页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

快动网()推出计算机等级考试自学平台提供免费视频教程在线试题及解析全国计算机等级考试二级教程C 语言程序设计课后题及参考答案(教育部考试中心)高等教育出版社出版(第一章、第二章、第三章)第一章程序设计基本概念1.3 结构化程序由_、_、_三种基本结构组成。答案:顺序、选择、循环二、填空题2.16 函数体由符号_开始,用符号_结束。函数体的前面是_部分,其后是_部分。答案:、定义、执行第三章、顺序结构一、选择题3.1 3.2 以下选项中不是C 语句的是A) int i; i+; printf(%dn, i); B) ; C) a=5,c=10 D) ; 答案:C分析:语句必须以分号结尾。选项A是一个复合语句,复合语句是用括号多条语句。选项B是一个空语句,只有一个分号。选项C不是语句,因为没有以分号结尾。3.6 若变量已正确说明为float 类型,要通过以下赋值语句给a 赋予10、b 赋予22、c 赋予33,以下不正确的输入形式是A) 10 22 33 B) 10.0,22.0,33.0 C) 10.0 22.0 33.0 D) 10 22 33scanf(%f %f %f, &a, &b, &c);答案:B分析:使用scanf输入整数,输入的每个整数中间以空格、回车、tab作分隔,输入整数时要看scanf的格式控制符,如果格式控制符中除空格以外有其它字符要原样输入。选项B格式不正确,因为scanf的格式控制符为%f %f %f并没有逗号,而输入10.0,22.0,33.0是不对的。3.7 若变量以正确定义,要将a 和b 中的数进行交换,下面不正确的语句组是A) a=a+b,b=a-b,a=a-b; B) t=a,a=b,b=t;C) a=t; t=b; b=a; D) t=b; b=a; a=t;答案:C分析:可以假设a和b的值分别为3、5通过执行A、B、D中的语句发现都可以实现a和b的值交换。选项C不能实现a、b值交换。3.8 3.9 3.10 3.11 当运行以下程序时,在键盘上从第一列开始输入9876543210(此处代表Enter),则程序的输出结果是A) a=98,b=765,c=4321 B) a=10,b=432,c=8765C) a=98,b=765.000000,c=4321.000000 D) a=98,b=765,c=4321.0main()int a; float b,c;scanf(%2d%3f%4f,&a,&b,&c);printf(na=%d,b=%f,c=%fn,a,b,c);答案:C分析:该题目考察对scanf格式控制符宽度的掌握。在scanf函数格式控制符中间加一个整数用来表示匹配数据的宽度。scanf(%2d%3f%4f,&a,&b,&c);匹配输入数据2位赋值给a,匹配输入数据3位赋值给b, 匹配输入数据4位赋值给c,本题目输入9876543210然后回车,即将98赋值给a,765赋值给b,4321赋值给c,使用printf(na=%d,b=%f,c=%fn,a,b,c);输出a、b、c的值,a以整型输出,b和c以小数形式输出,即输出:98,765.000000,4321.000000选项C正确。scanf在输入多个数据是以回车、空格、tab作为分隔符,而当在格式控制符中间使用宽度时会依次配置输入数据的宽度,如果从输入数据中能够匹配到指定宽度的数据则scanf就对变量进行赋值,但是如果匹配不到则还是停留在输入状态让用户输入,例如:输入:123回车这时scanf先匹配两位数据12赋值给a,现在只剩下一位3赋值给b这时再输入4 回车,将4赋值给c例如:输入:123456回车将12赋值给a将345赋值给b将6赋值给c大家多多练习体会一下格式控制符宽度的使用。3.12 以下程序的输出结果是A) a=%2,b=%5 B) a=2,b=5 C) a=%d,b=%d D) a=%d,b=%dmain() int a=2,b=5;printf(a=%d,b=%dn,a,b);答案:D分析:本题目考察输出%的问题。格式控制符以%开头,如果要输出%符号则必须使用两个%号。printf(a=%d,b=%dn,a,b);该语句输出:a=%d,b=%d,并没有输出a和b的值,可见当两个%符号一起使用时则输出%,而格式控制符不起作用。3.13 3.14 以下程序段的输出是A) *496 * B) * 496* C) *000496* D)输出格式符不合法int x=496;printf(*%-06d*n,x);答案:A分析:考察对printf格式控制符中宽度和对齐的用法printf(*%-06d*n,x);表示输出x的值,总共输出6位,并且左对齐,如果x的位数比6小则在右边补足空格,输出:*496 *也可以写为:printf(*%-6d*n,x);输出:*496 *如果:printf(*%06d*n,x);则输出:*000496*如果:printf(*%6d*n,x);则输出:* 496*3.15 以下程序段的输出是A) |3.1415| B) | 3.0| C) | 3| D) | 3.|float a=3.1415;printf(|%6.0f|n,a);答案:C分析:考察%f中间加整数1.整数2的形式整数1表示总位数,整数2表示小数位,如果总位数比整数1小,则在左边补空格。输出:| 3|(注意:3前边有5个空格,因为3.1415不输出小数位只能输出一位3,%f中间的整数1部分是6,所以在3前边补5个空格)如果改为:printf(|%-6.0f|n,a);则输出:|3 |(加-符号左对齐显示)3.16 以下程序段的输出是A) |2345.67800| B) |12345.6780| C) |12345.67800| D) |12345.678|printf(|%10.5f|n,12345.678);答案:C分析:%10.5f表示输出5位小数位,不够小数位的补0,总位数是10,那么12345.678以%10.5f形式输出为:|12345.67800|3.17 以下程序段的输出是A) *0000057.66* B) * 57.66* C) *0000057.67* D) * 57.67*float a=57.666;printf(*%010.2f*n,a);答案:C分析:%010.2f格式控制符表示显示2位小数,总位数是10,如果输出数据的总位数比10小则左边补0。本题目输出57.666,两位整数+一位小数位+两位小数总共5,所以还需要在前边补5个0凑够10位。输出:*0000057.67*,注意小数第三位进行了四舍五入。3.19 若变量已正确说明,要求用以下语句给a 赋予3.12、给b 赋予9.0,则正确的输入形式是(代表空格)A) 3.129.0 B) a=3.12b=9C) a=3.12,b=9 D) a=3.12,b=9scanf(a=%f,b=%f,&a,&b); 表示Enter 键答案:C分析:考察对scanf的使用scanf中格式控制符中除了格式控制符的其它字符要原样输入,把原样输入的字符称为固定字符。以上选项中原样输入固定字符的是选项C3.20 以下程序的输出结果是A) 9 8 B) 8 9 C) 6 6 D) 以上三个都不对#include math.hmain() double a=-3.0, b=2;printf(%3.0f %3.0fn,pow(b,fabs(a),pow(fabs(a),b);答案:B分析:pow二、填空题3.21 若有以下定义,请写出以下程序段中输出语句执行后的输出结果。(1)_(2)_(3)_int i=-200,j=2500;printf(1) %d %d,i,j);printf(2) i=%d, j=%dn,i,j);printf(3) i=%dn j=%dn,i,j);答案:-200 2500i=-200, j=2500i=-200 j=25003.22 变量i、j、k 已定义为int 类型并有初值0,用以下语句进行输入时scanf(%d,&i); scanf(%d,&j); scanf(%d,&k);当执行第一个输入语句,从键盘输入:12.3 表示Enter 键则变量i、j、k 的值分别是_、_、_。答案:12、0、03.23 复合语句在语法上被认为是_。空语句的形式是_。答案:一条语句、;3.24 C 语句的最后用_结束。答案:;3.25 以下程序段,要求通过scanf 语句给变量赋值,然后输出变量的值。写出运行时给k 输入100,给a 输入25.81,给x 输入1.89234 时的三种可能的输入形式_、_、_。int k; float 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.89234(2) 100 25.811.89234(3) 100 25.81 1.892343.26 以下程序段的输出结果是_。int x=0177;printf(x=%3d,x=%6d,x=$%6o,x=%6x,x=%6un,x,x,x,x,x);答案:x=127,x= 127,x= 177,x= 7f,x= 1273.27 以下程序段的输出结果是_。int x=0177;printf(x=%-3d,x=%-6d,x=$%-06d,x=$%06d,x=%06dn,x,x,x,x,x);答案:27、x=127,x=127 ,x=$127 ,x=$000127,x=%06d3.28 以下程序段的输出结果是_。double a=513.789215;printf(a=%8.6f,a=%8.2f,a=%14.8f,a=%14.8lfn,a,a,a,a);答案:a=513.789215,a= 513.79,a= 513.78921500,a= 513.78921500第四章、选择结构一、选择题4.1 下列运算符中优先级最高的运算符是A) ! B) % C) -= D) &答案:A4.2 下列运算符中优先级最低的运算符是A) | B) != C) =y)&(y=z) B) (x=y)AND(y=z)C) (x=y=z) D) (x=y)&(y=z)答案:A4.4 设a、b 和c 都是int 型变量,且a=3,b=4,c=5;则以下的表达式中,值为0 的表达式是A) a&b B) a=b C) a|b+c&b-c D) !(ab)&!c|1)答案:D4.5 以下程序的输出结果是A) 0 B) 1 C) 2 D) 3main() int a=2,b=-1,c=2;if(ab)if(b0) c=0;else c+=1;printf(%dn,c);答案:C4.6 以下程序的输出结果是A)1 B) 2 C) 3 D) 4main() int w=4,x=3,y=2,z=1;printf(%dn,(wx?w:zy?z:x);答案:A4.7 若执行以下程序时从键盘上输入3 和4,则输出结果是A) 14 B) 16 C) 18 D) 20main() int a,b,s;scanf(%d%d,&a,&b);s=a;if(ab) s=b;s*=s;printf(%dn,s);答案:B4.8 下面的程序片段所表示的数学函数关系是-1(x0)1(x0)0(x0)-1(x0)y=-1;if(x!=0) y=1;if(x0) y=1;else y=0;答案:本题没有正确答案。程序片段所表示的数学函数关系应该是0(x0)4.9 运行以下程序后,输出A) * B) &C) #& D) 有语法错误不能通过编译main() int k=-3;if(k、=、=、=、!=4.13 C 语言中的逻辑运算符按优先级别是_、_、_。答案:!、&、|4.14 C 语言中的关系运算符和逻辑运算符的优先级别是_、_、_、_、_、_、_。答案:!、=、!=、&、|4.15 C 语言中逻辑运算符_的优先级高于算术运算符。答案:!4.16 将下列数学式改写成C 语言的关系表达式或逻辑表达式A)_B)_。A)a=b 或a4答案:A)a=b|a4|x100) printf(%dn,a100);else printf(%dn,a0) B) !0答案:A) xc)b=a; a=c; c=b;答案:3、2、24.20 若变量已正确定义,以下语句段的输出结果是_。x=0; y=2; z=3;switch(x) case 0: switch(y=2) case 1: printf(*); break;case 2: printf(%); break;case 1: switch(z) case 1: printf($);case 2: printf(*); break;default : printf(#);答案:*#第五章、循环结构一、选择题5.1 以下程序段的输出结果是A) 9 B) 1 C) 11 D) 10int k,j,s;for(k=2; k6; k+,k+) s=1;for(j=k; j6; j+) s+=j;printf(%dn, s);答案:D5.2 以下程序段的输出结果是A) 12 B) 15 C) 20 D) 25int i,j,m=0;for(i=1; i=15; i+=4)for(j=3; j7) n-;printf(%dn, n);答案:B5.4 以下程序段的输出结果是A) 1 B) 3 0 C) 1 -2 D) 死循环int x=3;do printf(%3d,x-=2); while(!(-x);答案:C5.5 以下程序段的输出结果是A) 15 B) 14 C) 不确定D) 0main() int i,sum;for(i=1; i0; y-)if(y%3=0) printf(%d, -y); continue; 答案:B5.7 若x 是int 型变量,以下程序段的输出结果是A) *3#4*5B) #3*4#5C) #3*4#5D) *3#4*5for(x=3; x6; x+)printf(x%2)?(*%d):(#%dn),x);答案:D5.8 以下程序的输出结果是A) *#*#*#$ B) #*#*#*$ C) *#*#$ D) #*#*$main() int i;for(i=1; i=5; i+) if(i%2) printf(*);else contionue;printf(#);printf($n);答案:A5.9 以下叙述正确的是A) do_while 语句构成的循环不能用其它语句构成的循环来代替。B) do_while 语句构成的循环只能用break 语句退出。C) 用do_while 语句构成循环时,只有在while 后的表达式为非零时结束循环。D) 用do_while 语句构成循环时,只有在while 后的表达式为零时结束循环。答案:D5.10 以下程序的输出结果是A) 39 81 B) 42 84 C) 26 68 D) 28 70main() int x,i;for(i=1; ib; +b) i+;while(a+c) j+;do k+; while(ad+);答案:5、4、65.12 以下程序段的输出结果是_。int k,n,m;n=10; m=1; k=1;while(k=n) m*=2;printf(%dn,m);答案:死循环5.13 以下程序的输出结果是_。main() int x=2;while(x-);printf(%dn,x);答案:-15.14 以下程序段的输出结果是_。int i=0,sum=1;do sum+=i+; while(i5);printf(%dn,sum);答案:115.15 有以下程序段:s=1.0;for(k=1; k=n; k+) s=s+1.0/(k*(k+1);printf(%fn,s);请填空,使下面的程序段的功能完全与之等同。s=0.0;_;k=0;do s=s+d;_;d=1.0/(k*(k+1);while(_);printf(%fn,s);答案:d=1.0、k+、kamax) amax=x;if(_) amin=x;scanf(%f,&x);printf(namax=%fnamin=%fn,amax,amin);答案:x=0、xamin第六章、字符型数据一、选择题6.1 C 语言中的简单数据类型有A) 整型、实型、逻辑型B) 整型、实型、字符型C) 整型、字符型、逻辑型D) 整型、实型、逻辑型、字符型答案:B6.2 C 语言中,字符(char)型数据在微机内存中的存储形式是A) 反码B) 补码C) EBCDIC 码D) ASCII 码答案:D6.3 设有语句char a=72;,则变量aA) 包含1 个字符B) 包含2 个字符C) 包含3 个字符D) 说明不合法答案:A6.4 C 语言中不合法的字符常量是A) 0xff B) 65 C) & D) 028答案:本题A)和D)选项都是不合法的字符常量。若A)选项改为xff,则正确。6.5 C 语言中不合法的字符串常量是A) 121 B) y= C) nn D) ABCDx6d答案:B6.6 判断char 型变量c 是否为大写字母的最简单且正确的表达式是A) A=c=A)&(c=Z)C) (A=c) D) (c=A)&(c=A&x=Z)?(x+32):x;printf(%cn,x);答案:B6.9 以下程序的输出结果是A) 67,C B) B,C C) C,D D) 不确定的值main() char ch1,ch2;ch1=A+5-3;ch2=A+5-3;printf(%d,%cn,ch1,ch2);答案:A6.10 对以下程序,从第一列开始输入数据:2473,代表Enter。程序的输出结果是A) 668977 B) 668966 C) 66778777 D) 6688766#include stdio.hmain() int c;while(c=getchar()!=n) switch(c-2) case 0 :case 1 : putchar(c+4);case 2 : putchar(c+4); break;case 3 : putchar(c+3);default : putchar(c+2); break;printf(n);答案:A6.11 若变量已正确说明,要求用以下语句给c1 赋予字符%、给c2 赋予字符#、给a 赋予2.0、给b 赋予4.0,则正确的输入形式是(代表空格)A) 2.0%4.0# B) 2.0%4.0#C) 2%4# D) 2%4scanf(%f%c%f%c,&a,&c1,&b,&c2);(代表Enter 键)答案:B二、填空题6.12 EOF 的十进制值是_。答案:-16.13 C 语言中,字符占内存_个字节。答案:16.14 调用C 语言对字符处理的库函数时,在#include 命令行中应包括的头文件是_。答案:string.h6.15 若输入字符A,在以下while 语句执行后ch 的值是_。while(ch=getchar()=A);答案:16.16 若要通过以下语句给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);答案:10A20B30C40D6.17 若有以下说明和输入语句,要求给c1、c2 输入字符A 和B,给a1、a2 输入7.29 和101.298,从键盘正确输入数据的形式是_。char c1,c2; float a1,a2;scanf(%f%f,&a1,&a2); scanf(%c%c,&c1,&c2);答案:7.29101.298AB6.18 若有以下说明和输入语句,要求给c1、c2 输入字符A 和B,给a1、a2 输入7.29 和101.298,从键盘正确输入数据的形式是_。char c1,c2; float a1,a2;scanf(%c%f%c%f,&c1,&a1,&c2,&a2);答案:A7.29B101.2986.19 若有以下说明和输入语句,要求给c1、c2、c3 输入字符A、B 和C,请写出各种从键盘正确输入数据的形式。char c1,c2,c;scanf(%4c,&c1); scanf(%4c,&c2); scanf(%4c,&c3);答案:ABC第七章、函数一、选择题7.1 以下说法中正确的是A) C 语言程序总是从第一个定义的函数开始执行B) 在C 语言程序中,要调用的函数必须在main 函数中定义C) C 语言程序总是从main 函数开始执行D) C 语言程序中的main 函数必须放在程序的开始部分答案:C7.2 以下函数的类型是A) 与参数x 的类型相同B) void 类型C) int 类型D) 无法确定fff(float x) printf(%dn,x*x); 答案:C7.3 以下函数调用语句中,含有的实参个数是A) 1 B) 2 C) 4 D) 5func( (exp1,exp2),(exp3,exp4,exp5);答案:B7.4 以下程序的输出结果是A) 11 B) 20 C) 21 D) 31fun(int a,int b) int c;c=a+b;return c;main() int x=6,y=7,z=8,r;r=func(x-,y+,x+y),z-);printf(%dn,r);答案:C7.5 以下程序的输出结果是A) -1 B) 0 C) 1 D) 2main() int i=2,p;p=f(i,i+1);printf(%d,p);int f(int a, int b) int c;c=a;if(ab) c=1;else if(a=b) c=0;else c=-1;return(c);答案:A7.6 以下程序的输出结果是A) 0 B) 1 C) 6 D) 无定值fun(int a,int b,int c) c=a*b; main() int c;fun(2,3,c);printf(%dn,c);答案:D7.7 以下程序的输出结果是A) 5.500000 B) 3.000000 C) 4.000000 D) 8.25double f(int n) int i; double s;s=1.0;for(i=1; i=n; i+) s+=1.0/i;return s;main() int i,m=3; float a=0.0;for(i=0; ieps; n+) s+=t;t=n*t/(2*n+1);return (2.0*_);答案:n=1、s7.12 以下函数用以求x 的y 次方。请填空。double fun(double x, int y) int i; double z;for(i=1; i_; i+)z=_;return z;答案:=y、z*x7.13 以下程序的功能是计算s=0!+1!+2!+3!+.+n!。请填空。long f(int n) int i; long s;s=_;for(i=1; i=n; i+) s=_;return s;main() long s; int k,n;scanf(%d,&n);s=_;for(k=0; k=n; k+) s=s+_;printf(%ldn, s);答案:1L、s*i、0、f(k)第八章指针一、选择题8.1 若有定义:int x,*pb; 则以下正确的赋值表达式是A) pb=&x B) pb=x C) *pb=&x D) *pb=*x答案: A8.2 以下程序的输出结果是A) 因变量无定义输出不定值B) 0 C) -1 D) 1#include main() printf(%dn,NULL); 答案: B8.3 以下程序的输出结果是A) 5,2,3 B) -5,-12,-7 C) -5,-12,-17 D) 5,-2,-7void sub(int x,int y,int *z) *z=y-x; main() int a,b,c;sub(10,5,&a); sub(7,a,&b); sub(a,b,&c);printf(%d,%d,%dn,a,b,c);答案: B8.4 以下程序的输出结果是A) 4 B) 6 C) 8 D) 10main() int k=2,m=4,n=6;int *pb=&k,*pm=&m,*p;*(p=&n)=*pk*(*pm);printf(%dn,n);答案: C8.5 已知指针p 的指向如图8.5 所示,则执行语句*p+; 后,*p 的值是A) 20 B) 30 C) 21 D) 31答案: B8.6 已知指针p 的指向如图8.5 所示,则表达式*+p 的值是A) 20 B) 30 C) 21 D) 31答案: B8.7 已知指针p 的指向如图8.5 所示,则表达式+*p 的值是A) 20 B) 30 C) 21 D) 31答案: C8.8 以下程序的输出结果是A) 23 B) 24 C) 25 D) 26void prtv(int *x) printf(%dn,+*x); main() int a=25;prtv(&a);答案: D8.9 以下程序的输出结果是A) 运行出错B) 100 C) a 的地址D) b 的地址main() int *k, *a b=100;a=&b; k=&a;printf(%dn,*k);答案: B8.10 以下程序的输出结果是A) 4,3 B) 2,3 C) 3,4 D) 3,2void fun(float *a,float *b) float w;*a=*a+*a;w=*a;*a=*b;*b=w;main() float x=2.0,y=3.0;float *px=&x,*py=&y;fun(px,py);printf(%2.0f,%2.0fn,x,y);答案: C8.11 以下程序的输出结果是A) 9.000000 B) 1.500000 C) 8.000000 D) 10.500000void sub(float x,float *y,float *z) *y=*y-1.0;*z=*z+x;main() float a=2.5,b=9.0,*pa,*pb;pa=&a,pb=&b;sub(b-a,pa,pa);printf(%fn,a);答案: C8.12 以下四个程序中不能对两个整形值进行交换的是A) main() int a=10,b=20;swap(&a,&b);printf(%d%dn,a,b);swap(int *p, int *q) int *t,a;t=&a;*t=*p; *p=*q; *q=*t;B) main() int a=10,b=20;swap(&a,&b);printf(%d%dn,a,b);swap(int *p, int *q) int t;t=*p; *p=*q; *q=t;C) main() int *a,*b;*a=10,*b=20;swap(a,b);printf(%d%dn,*a,*b);swap(int *p, int *q) int t;t=*p; *p=*q; *q=t;D) main() int a=10,b=20;int *x=&a,*y=&b;swap(x,y);printf(%d%dn,a,b);swap(int *p, int *q) int t;t=*p; *p=*q; *q=st;答案:C二、填空题8.13 以下程序段的输出结果是_。int *var,ab;ab=100; var=&ab; ab=*var+10;printf(%dn,*var);答案:1008.14 以下程序的输出结果是_。int ast(int x,int y,int *cp,int *dp) *cp=x+y;*dp=x-y;main() int a,b,c,d;a=4; b=3;ast(a,b,&c,&d);printf(%d %dn,c,d);答案:7 18.15 若有定义:char ch;(1) 使指针p 可以指向变量ch 的定义语句是_。答案:char *p=&ch;(2) 使指针p 可以指向变量ch 的赋值语句是_。答案:p=&ch;(3) 通过指针p 给变量ch 读入字符scanf 函数调用语句是_。答案:scanf(%c,*p);(4) 通过指针p 给变量ch 的赋字符的语句是_。答案:ch=*p;5) 通过指针p 输出ch 中字符的语句是_。答案: printf(%c,*p);8.16 若有如图8.5 所示五个连续的int 类型的存储单元并赋值如图,且p 和s 的基类型皆为int,p 已指向存储单元a1。(1) 通过指针p,给s 赋值,使其指向最后一个存储单元a4的语句是_。答案: s=p+3;(2) 用以移动指针s,使之指向中间的存储单元a2的表达式是_。答案: s=s-2;(3) 已知k=2,指针s 已指向存储单元a2,表达式*(s+k)的值是_。答案: 50(4) 指针s 已指向存储单元a2,不移动指针s,通过s 引用存储单元a3的表达式是_。答案: *(a+1)5) 指针s 已指向存储单元a2,p 指向存储单元a0,表达式s-p 的值是_。答案: 26) 若p 指向存储单元a0,则以下语句的输出结果是_。for(i=0; i5;i+) printf(%d ,*(p+i);printf(n);答案:10 20 30 40 50第九章数组一、选择题9.1 若已定义:int a =0,1,2,3,4,5,6,7,8,9,*p=a,i;其中0i9,则对a 数组元素的引用不正确的是A)ap-a B)*(&ai) C)pi D)*(*(a+i)答案:D9.2 以下程序段给数组所有元素输入数据,应在下划线处填入的是A)a+(i+) B)&a(i+1) C)a+i D)&a+imain()int a10,i=0;while(i10)scanf(%d,_);.答案:D9.3 以下程序的输出结果是A)3 B)4 C)1 D)2main()int a10=1,2,3,4,5,6,7,8,9,10,*p=a;printf(%dn,*(p+2);答案:A9.4、以下程序的输出结果是A)不确定的值B)3 C)2 D)1main()int n2=0,i,j,k=2;for(i=0;ik;i+)for(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论