上海市计算机二级考试C语言复习资料题目.docx
- 文档编号:27432642
- 上传时间:2023-06-30
- 格式:DOCX
- 页数:20
- 大小:21.95KB
上海市计算机二级考试C语言复习资料题目.docx
《上海市计算机二级考试C语言复习资料题目.docx》由会员分享,可在线阅读,更多相关《上海市计算机二级考试C语言复习资料题目.docx(20页珍藏版)》请在冰豆网上搜索。
上海市计算机二级考试C语言复习资料题目
上海理工大学
上海市计算机二级考试(C语言)复习资料题目
C语言是一种面向过程的程序设计语言,函数、指针、地址和递归概念是它的难点。
本复习资料以教学大纲为依据,提供各类题型和练习,重在“基本概念”、“常用算法”、“阅读分析程序”、“编程技能”等诸方面的强化训练,按照上海市计算机二级考试(C语言)的框架,提供“基础知识、读程序写结果、改错、编程序和程序指令填空”几部份,供学生学习参考,文末附习题参考解答。
1.B2.C3.C4.B5.D6.A7.A8.C9.C10.A
11.C12.A13.B14.B15.C16.B17.D1819.A20.C
21.C22.B23.B24.C25.D26.B27.B28.D29.C30.C
31.D32.C33.C34.B35.C36.D37.C38.B39.C40.B
41.C42.B43.C44.B45.B46.A47.D48.D49.D50.D
51.A52.C
第一部份:
基础知识
1.下述循环的循环次数是(B)因为没有进入循环
2;
(0)("",k);
;("\n");
A、无限次B、0次C、1次D、2次
2.在下列选项中,没有构成死循环的程序段是(C)
A、100;B、(;;)
(1)
{100+1;
(i>100);
}
C、1000;D、36;
{;}(k>=10000);(s);;
3.若有以下定义和语句,且0<<10,则对数组元素的错误引用是(C)
a[]={0,1,2,3,4,5,6,7,8,9},*p,i;
;
A、*()B、a[]C、D、*([i])
4.下面能正确将字符串""进行完整赋值操作的语句是(B)有四个字符包括结束符
A、s[3]={'B','o','y'};B、s[]="";
C、s[3]={""};D、s[3];
s[0]='B';s[1]='o';s[2]='y';
5.以下程序段的输出结果是(D)
[]="";
*;
(;<4;)
("\n",);
A、B、AC、DD、
D
6.C语言的型变量是(A)
A、存储在动态存储区中。
B、存储在静态存储区中。
C、存储在计算机的寄存器中。
D、存储在外存储器中。
7.测试文件是否结束函数的函数名是(A)
A、B、C、D、
8.下面程序段的输出结果是(C)
a[][4]={1,2,3,4,5,6,7,8,9,10,11,12},(*p)[4];
;
(“\n”,*(*(p)+2));*3=3
A、1B、5C、3D、7
9.C语言规定:
在一个源程序中,函数的位置是(C)
A、必须在最开始B、必须在系统调用的函数的后面
C、可以任意D、必须在最后
10.一个C程序的执行是从(A)
A、本程序的函数开始,到函数结束
B、本程序的第一个函数开始,到本程序文件的最后一个函数结束
C、本程序的函数开始,到本程序文件的最后一个函数结束
D、本程序文件的第一个函数开始,到本程序函数结束
11.下面的四个选项中,均是不合法的用户标识符的选项是(C)
A、AB、C、D、_123
00
12.下面四个选项中,均是合法转义字符的选项是(A)
A、’\’’B、’\’C、’\018’D、’\\0’
‘\\’‘\017’‘\f’‘\101’
‘\n’‘\”’‘’‘x1f’
13.()是(B)求长度
A、一个双精度型的表达式B、一个整型表达式
C、一种函数调用D、一个不合法的表达式
14.下述循环的循环次数是(B)
2;
(0)("",k);
;("\n");
A、无限次B、0次C、1次D、2次
15.若有以下定义和语句,且0<<10,则对数组元素的错误引用是()
a[]={0,1,2,3,4,5,6,7,8,9},*p,i;
;
A、*()B、a[]C、D、*([i])
16.若二维数组a有m列,则在a[i][j]前的元素个数为(B)
A、j*B、i*C、i*1D、i*1
17.对两个数组a和b进行如下初始化
a[]=””;
b[]={‘A’,’B’,’C’,’D’,’E’,’F’};
则以下叙述正确的是(D)
A、a与b数组完全相同B、a与b长度相同
C、a和b中都存放字符串D、a数组比b数组长度长
18.C语言中有关全局变量的说法,正确的是(B)
A、在使用到它的所有文件中均需定义
B、在函数体外定义一次
C、在函数中定义
E、在函数外定义
19.若有数组名作为函数调用时的实参,则传递给该函数形参的是(A)
A、数组的首地址B、数组的第一个元素的值
C、数组中全部元素的值D、数组元素的个数
20.下面程序段的输出结果是()
a[][3]={1,2,3,4,5,6,7,8,9,10,11,12},(*p)[3];
;
(“\n”,*(*
(1)+2));
A、3B、4C、6D、7
21.不属于C语言程序基本结构的是()
A)顺序结构B)选择结构C)函数结构D)循环结构
22.若有定义及赋值:
a[6][6],*p;*a;
则下列各式中能表示元素a[0][1]列地址的表达式是。
A)[0]+1B)a[0]+1C)*
(1)D)1
23.十进制数123转换成十六进制数是。
A)7B)7C)7D)7
24.C语言中合法的字符常量是。
A)'\058'B)''C)'\'D)”\0”
25.下列字符中Ⅱ码值最小的是。
A)AB)aC)0D)空格
26.下面程序输出结果是
()
{0;'A';
{()
{'A':
;;
'B':
;
'C':
2;;
'D':
2;;
'E':
*10;;
:
3;
}
;
}(c<'G');
("\n");
}
A)3B)4C)2D)0
27.设有如下定义:
,1;,则语句:
("\n",());的输出结果是()
A)1B)0C)-1D)2
28.C语言规定,函数返回值的类型是由。
A)语句中的表达式类型所决定
B)调用函数时的主调函数类型所决定
C)调用函数时系统临时决定
D)在定义该函数时所指定的函数类型所决定
29.下列定义中,不是指针数组定义的是。
A)*p[5];B)*q[4];C)(*r)[6];D)*w[7];
30.以下程序运行结果为
3.5
S(x)*x*x
()
{1,2;
("%4.1f\n"());
}
A)14.0B)31.5C)7.5D)10.5
31.下面程序输出结果是()
()
{a[]="",k,*p;
(a,0,2);(a,4,6);
("\n",a);
}
(*s,p1,p2)
{c;
(p1 {[p1];s[p1][p2]; s[p2];p1;p2; } } A)B)C)D) 32.以下程序的输出结果是() () {1; (0<4) (""(a)); } (a) a; {0;1; ; (); } A)4444B)4455C)4567D)5678 33.执行下面的程序后,y的值是 () {a[]={2,4,6,8,10}; 1,x,*1; (0;x<3;)*(); ("\n",y); } A)17B)18C)19D)20 34.若使用下述程序段将整数30和浮点数5.5分别赋给变量a和b,那么输入应该是() a; b; (""); A)305.0B)305.5C)30,5.5D)305.5 35.设有如下定义: (*)(); 则以下叙述中正确的是() A)是指向一维数组的指针变量 B)是指向型数据的指针变量 C)是指向函数的指针,该函数返回一个型数据 D)是一个函数名,该函数的返回值是指向型数据的指针 36.设有以下定义: a[4][3]={1,2,3,4,5,6,7,8,9,10,11,12}; (*)[3],*p=a[0]; 则以下能够正确表示数组元素a[1][2]的表达式的是() A)*(*1)[2]B)*(*(5)) C)(*1)+2D)*(* (1)+2) 37.若有以下定义和语句,且0<<10,则对数组元素的错误引用是() a[]={0,1,2,3,4,5,6,7,8,9},*p,i;; A)*()B)a[]C)D)*([i]) 38.执行下面的程序后,a的值是() (X)X*X () {1021; ()(); ("\n"); } A)10B)1C)9D)0 39.表达式18/4*(4.0)/8的值的数据类型为() A)B) C)D)不确定 40.当1354时,执行完下面一段程序后x的值是() (a (c (a (b 3; 6; 7; A)1B)2C)3D)6 41.判断型变量是否为大写字母的正确表达式() A)’A’<<=’Z’B)(>=’A’)(<=’z’) C)(>=‘A’)(<=’Z’)D)(‘A’<)(‘Z’>) 42.以下程序的输出结果是() () {i,k,a[10],p[3];k=5; (i=0<10)a[i]; (i=0<3)p[i][i* (1)]; (i=0<3)[i]*2; ("\n"); } A)20B)21C)22D)23 43.下面程序的运行结果是() () {[7]={"6521"}; 0; (0[i]>='0'[i]<='9'2)10*[i]-'0'; ("\n");} A)1256B)6521C)6D)62 44.以下程序运行后的结果是()。 () {s[]="12345678";v[4]={0,1,1,0}; (0;s[k]) {(s[k]) {'1': 0;'2': 1; '3': 2;'4': 3;} v[i]; } (0<4)(""[k]); } A)0123B)0118C)5678D)0246 45.下面程序输出结果是() () {0;'A'; {() {'A': ;; 'B': ; 'C': 2;; 'D': 2;; 'E': *10;; : 3; } ; }(c<'G'); ("\n"); } A)3B)4C)2D)0 46.二进制数1110111B转换成十六进制数是() A)77HB)37HC)73HD)E7H 47.能正确表示a和b同时为正或同时为负的逻辑表达式是() A)(a>=0‖b>=0)(a<0‖b<0)B)(a>=0>=0)(a<0<0) C)(>0)(<=0)D)a*b>0 48.要把高级语言编写的源程序转换为目标程序,需要使用() A)编辑程序B)驱动程序C)诊断程序D)编译程序 49.英文小写字母d的码为100(十进制),英文大写字母D的码为() A)50B)66C)52D)68 50.下面程序输出结果是() (*x) {("\n"*x); } () {25(); } A)23B)24C)25D)26 51.下面程序的输出是() [3][3]={{2},{4},{6}}; () {i,*p=[0][0]; (i=0;i<2;) {(i0) [i][1]=*p+1; ; ("",*p);} } A)23B)26C)33D)36 52.该程序的执行结果是() <> <> () {(*); *p; "1234567"; ((p)); (p); } (*n) {t,*s1,*s2; s1;s21; (s1 {*s1; *s1=*s2; *s2; } } A)1234567B)7654321C)1711717D)7177171 53.试写出下列数学表达式的C语言表达式 54.下面程序的输出结果是() <> () {*"1234";(a);("\n");} (*s) {t; (*s){*;(t);(s);} } 55.若有定义及赋值: a[6][6],*p;*a; 则下列各式中能表示元素a[0][1]列地址的表达式是() A)[0]+1B)a[0]+1C)* (1)D)1 56.如果用八位二进制补码表示带符号的定点整数,则能表示的十进制数的范围是() A)-127到+127B)-128到+128C)-127到+128D)-128到+127 57.若有定义及赋值: y,*p,*p1; ;p1;*p1=4; 则可以输出变量y的地址的语句是() A)("%u\n",y);B)("%u\n",*p1); C)("%u\n",*p);D)("%u\n",); 58.设有y,0,15,下列各项中不能使y值为0的是() A)∧x;B、∣u;C、>>4;D、; 59.二进制数1111111.101B转换成十六进制数是() A)B).5HC)7D)7F.5H 60.字符串”123”在计算机内所占用的字节数是()个。 A)1B)2C)3D)4 61.C语言中最基本的数据类型包括() A)整型、实型、逻辑型B)整型、实型、字符型 C)整型、字符型、逻辑型D)整型、实型、逻辑型、字符型 62.C语言中有关—循环的说法,正确的是() A)在语句内不能再使用语句构成的循环 B)语句构成的循环必须用语句才能退出 C)语句构成的循环,当语句中的表达式值为非零时结束循环 D)语句构成的循环,当语句中的表达式值为零时结束循环 63.在C语言中,不正确的类型的常数是() A)32768B)0C)037D) 64.设有如下定义: 213422; 则执行表达式: (>b)(>d)后的值为() A)1B)2C)3D)0 65.设类型正确,语句("", (2)(-2));的执行结果是() A)2B)–2C)1D)0 66.设有如下定义: ,1;,则语句: ("\n",());的输出结果是() A)1B)0C)-1D)2 67.若有以下定义和语句,且0<<10,则对数组元素的错误引用是() a[]={0,1,2,3,4,5,6,7,8,9},*p,i;; A)*()B)a[]C)D)*([i]) 68.以下程序段的输出结果是() []=""; *; (;<4;) ("\n",); A)B)AC)DD) D 69.下列定义中,不是指针数组定义的是() A)*p[5];B)*q[4];C)(*r)[6];D)*w[7]; 70.不能进行和运算的数据类型是() A)指针变量B)整型变量C)整型常量D)字符变量 71.已知: ;用语句("");输入a、b的值时,不能作为输入数据分隔符的是() A),B)空格C)回车D)[]键 72.为表示关系x>>,应使用C语言表达式() A)(x>)(y>)B)(x>)(y>) C)(x>>)D)(x>)&(y>) 73.以下不能对二维数组a进行正确初始化的语句是() A)a[2][3]={0}; B)a[][3]={{1,2},{0}}; C)a[2][3]={{1,2},{3,4},{5,6}}; D)a[][3]={1,2,3,4,5,6}; 74.以下不正确的描述是() A)语句不能用于循环语句和语句外的任何其它语句 B)在语句中使用语句或语句的作用相同 C)在循环语句中使用语句结束本次循环,但不会终止整个循环 D)在循环语句中使用语句是,会跳出循环体,提前结束循环 75.若有以下定义和语句 s[12]="a! "; ("",(s)); 则输出结果是() A)12B)8C)7D)6 76.以下程序的输出结果是() () {2; (0<3) (""(a)); } (a) a; {0;3; ; (); } A)777B)777C)789D)789 77.执行下面的程序后,y的值是() () {a[]={2,4,6,8,10}; 1,x,*1; (0;x<3;)*(); ("\n",y); } A)17B)18C)19D)20 78.下面程序的输出是() [3][3]={{2},{4},{6}}; () {i,*p=[0][0]; (i=0;i<2;) {(i0) [i][1]=*p+1; ; ("",*p);} } A)23B)26C)33D)36 79.设有以下定义: a[4][3]={1,2,3,4,5,6,7,8,9,10,11,12}; (*)[3],*p=a[0]; 则以下能够正确表示数组元素a[1][2]值的表达式的是() A)*(*1)[2]B)*(*(5)) C)(*1)+2D)*(* (1)+2) 80.设有如下的程序段: []=""; *; ; 执行完上面的程序段后,*(5)的值为() A)'o'B)'\0'C)不确定的值D)'o'的地址 81.假设已定义a[10]和*,下面的赋值语句中,正确的是() A)a[10]="C"B)"C" C)*"C"D)"C" 82.下面程序输出结果是() () {a[]="",k,*p; (a,0,2);(a,4,6); ("\n",a); } (*s,p1,p2) {c; (p1 {[p1];s[p1][p2]; s[p2];p1;p2; } } A)B)C)D) 83.下列程序的输出结果是() () {a[5]={2,4,6,8,10},*p,**k; ;; ("",*()); ("\n",**k); } A)44B)22C)24D)46 84.如有 {; [20]; ; {; ; ; }; }; s; 对变量s赋值"1984年11月11日"正确方式是() A)1984;11;11; B)1984;11;11; C)1984;11;11; D)1984;11;11; 85.以下程序的输出结果是() () { {i[2]; k;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 上海市 计算机 二级 考试 语言 复习资料 题目