2010秋江苏省c语言试题及答案- 副本

更新时间:2023-09-22 19:45:01 阅读量: 经管营销 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

2010秋江苏省计算机二级C考试试题

2010秋江苏省计算机二级C考试试题

绝密★ 启用前 2010年秋

江苏省高等学校非计算机专业学生 计算机基础知识和应用能力等级考试

二级试卷 试卷语种:C语言

一、选择题(用答题卡答题,答案依次填在21~30答题号内,共10分) 21.以下关于C源程序的叙述中正确的是___(21)___ 。 A.注释只能出现在程序的开始位置或语句后面 B.一行中不能写多条语句 C.一条语句可以分写在多行中

D.一个源程序只能保存在一个文件中

22.C源程序中的命令#include与#define是在___(22)___阶段被处理的。 A.预处理 B.编译 C.连接 D.执行 23.以下语句中有语法错误的是___(23)___

A.printf(\ C.printf(\

24.已有声明\x=5,y;float z=2;\以下表达式中语法正确的是_____(24)____ 。

A.y=x%z B.x>0?y=x:y=-x C.y=x/2=z D.y=x=z/2

25.已知字母A的ASCII码是65,字母a的ASCII码是97,变量c中存储了一个大写字母的编码.若要求将c中大写字母编码转换成对应小写字母编码,则以下表达式中不能实现该功能的是______(25)_____

A.c=tolower(c) B.c=c+32 C.c=c-'A'+'a' D.c=(c+'A')&-'a'

26.一元二次方程ax +bx+c=0有两个相异实根的条件是a≠0且b -4ac>0,

以下选项中能正确表示该条件的C语言表达式是 ___(26)___ 。

A.a!=0,b*b-4*a*c>0 B.a!=0||b*b-4*a*c>0 C.a && b*b-4*a*c>0 D.!a && b*b-4*a*c>0

27.以下关于break和continue语句的叙述中正确的是 ___(27)______ 。

A.break和continue语句都可以出现在switch语句中 B.break和continue语句都可以出现在循环语句的循环体中

C.在循环语句和switch语句之外允许出现break和continue语句 D.执行循环语句中的break或continue语句都将立即终止循环

28.若有一函数定义为\声明该函数的正确形式是__(28)___ .

A.void f(int,int); B.int *f(int,int *); C.int f(int *,int *); D.int f(int,int *);

29.已知有声明\则执行以下语句不会输出字符a的是 _____(29)______ .

A.putchar(*p+4); B.putchar(*(p+4)); C.putchar(a[sizeof(a)-3]); D.putchar(*(a+5)); 30.已有定义和声明: struct student {int no;

char name[20];

struct{int year,month,day;}birth; } s;

若要求将日期\年11月12日\保存到变量s的birth成员中,则能实现这一功能的程序段是____(30)____ 。 A.year=1989; month=11;day=12; B.s.year=1989;s.month=11;s.day=12;

C.birth.year=1989;birth.month=11;birth.,day=12;

D.s.birth.year=1989;s.birth.month=11;s.birth.day=12;

二、填空题(将答案填写在答题纸的相应答题号内,每个答案只占一行,共30分)

● 基本概念

1.若有声明\则数学公式\对应的C语言表达式正确形式是___(1)___ 。

2.已知有声明\

a;\执行语句\时如果从键盘输入的数据是\则变量a得到的值是___(2)___ 。

3.若有声明\执行语句\ c--;\后,变量a、b、c的值分别___(3)___ 。 4.若有以下宏定义: #define M(a,b) -a/b

则执行语句\后输出结果为___(4)___ 。

5.声明\中的类型标识符\是在头文件 ___(5)___中定义的。

● 阅读程序

6.以下程序运行时输出到屏幕的结果为___(6)___ 。 #include

enum{A,B,C,D}x; void main()

{char s[]=\ for(x=B;x<=D;x++) putchar(s[x]); }

7.以下程序运行时输出到屏幕的结果是 (7) 。 #include void main()

{int s[12]={1,2,3,4,4,3,2,1,1,1,2,3},c[5]={0},i,j; for(i=0;i<12;i++) {j=s[i]; c[j]++; }

for(i=1;i<5;i++)

printf(\ }

8.以下程序运行时输出到屏幕的结果是___(8)___ 。 #include

int fun(int x) {static int c,y; if(c==0) y=1; else y=y+x; c++;

return y; }

void main() {int i;

for(i=0;i<2;i++)

printf(\ }

9.以下程序运行时输出到屏幕的结果中第一行是___(9)___,第二行是___(10)___ 。

#include

void fun(int *a,int b) {while(b>0) {*a+=b; b--; }

}

void main() {int x=0,y=3; fun(&x,y);

printf(\ }

10.以下程序运行时输出到屏幕的结果是___(11)___ #include int f(int x)

{ if(x==0||x==1)return 3; return x*x-f(x-2); }

void main()

{printf(\

21--30 C ABDDCBDAD 二 填空

(1)1/3.0*n(4*n*n-1) (2)23 (3) 0 1 1 (4) -2 (5)stdio.h (6)our (7) 4 3 3 2 (8)13 (9)6 (10)3

(11)6 (12)1 (13)19 (14)1 0 0 (15)1 2 0 (16)3 5 8 (17)301 orang 100 (18)101 apple 200 (19)1

(20)t*1/n

(21)a[i]= = x (22)in(a,7,b[i])

(23)i

(26)&month,&day (27)h1||h2 (28)h1->n= = h2->n (29)p2->next

(30)h1= =null &&h2= =null

本文来源:https://www.bwwdw.com/article/yncd.html

Top