浙江省高等学校二级C语言(笔试部分真题2008_2010年)

浙江省高等学校二级C语言(笔试部分真题2008_2010年)
浙江省高等学校二级C语言(笔试部分真题2008_2010年)

省高等学校

计算机等级考试试卷(二级C)

2010-2008笔试部分真题

2010年春省高等学校

计算机等级考试试卷(二级C)

一、程序阅读与填空(24小题,每小题3分,共72分)

1. 阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。【程序说明】

输入一个整数,求它的各位数字之和位数。例如,17的各位数字之和是8,位数是2。

运行示例:

Enter an integer:-153

sum = 8, count = 3

【程序】

#include

main()

{

int count = 0, in, sum = 0;

printf("Enter an integer:");

scanf("%d", &in);

if( D ) in = -in;

do{

sum = sum + (2) C ;

(3)C ;

count++;

}while( (4)B );

printf("sum = %d, count = %d\n", sum, count);

}

【供选择的答案】

(1) A、in == 0 B、in > 0

C、in != 0

D、in < 0

(2) A、in /10 B、in mod 10

C、in % 10

D、in

(3) A、in = in % 10 B、in /10

C、in = in /10

D、in % 10

(4) A、in % 10 != 0 B、in != 0

C、!in

D、in / 10 != 0

2.阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。【程序说明】

输出50到70之间的所有素数。要求定义和调用函数isprime(m)判断m是否为素数,若m为素数则返回1,否则返回0。素数就是只能被1和自身整除的正整数,1不是素数,2是

素数。

运行示例:

53 59 61 67

【程序】

#include

#include

main()

{ int i; int isprime(int m);

for(i = 50; i <= 70; i++)

if( (5) B )

printf("%d ", i);

}

int isprime(int m)

{

int i, k;

(6)B

k = (int)sqrt((double)m);

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

if(m % i == 0) (7) A ;

(8)A ;

}

【供选择的答案】

(5) A、isprime (m) != 0 B、isprime (i) != 0

C、isprime (m) == 0

D、isprime (i) == 0

(6) A、if(m != 1) return 1; B、if(m == 1) return 0;

C、;

D、if(m == 1) return 1;

(7) A、return 0 B、return 1

C、return i <= k

D、return

(8) A、return 1 B、return 0

C、return

D、return i <= k

3. 阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。【程序说明】

输入6个整数,找出其中最小的数,将它和最后一个数交换,然后输出这6个数。要求定义和调用函数swap(x, y),该函数交换指针x和y所指向单元的容。

运行示例:

Enter 6 integers: 6 1 8 2 10 97

After swaped: 6 97 8 2 10 1

【程序】

void swap(int *x, int *y)

{ int t;

(9) ;

}

main()

{ int i, index, a[10];

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

scanf("%d", &a[i]);

(10) ;

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

if(a[index] > a[i])

(11) ;

(12) ;

printf("After swaped:");

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

printf("%d ", a[i]);

printf("\n");

}

【供选择的答案】

(9) A、t = *x, *x = *y, *y = t

B、t = x, x = y, y = t

C、*t = *x, *x = *y, *y = *t

D、&t = x, x = y, y = &t

(10)A、index = 0 B、index = 5

C、index = index

D、index = 1

(11)A、a[index] = a[i] B、i = index

C、a[i] = a[index]

D、index = i

(12)A、swap(a[index], a[5])

B、swap(*a[index], *a[5])

C、swap(a[*index], a[*5])

D、swap(&a[index], &a[5])

4. 阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。【程序】

#include

#define T(c) (((c) >= '0') && ((c) <= '9') ? (c) - '0' : -1)

void f1(char ch)

{

switch(ch){

case '0': printf("0");

case '1': printf("1");

case '2': printf("2");break;

case '3': printf("3");

default: printf("9");

}

printf("\n");

}

double f2()

{

return (double)(5/2);

}

double f3(int n)

{

if(n == 1) return 1.0;

else return 1.0 + 1.0/f3(n-1);

}

main()

{

printf("%d %d\n", T('7'), T('a'));

f1('1');

printf("%.1f\n", f2());

printf("%.3f\n", f3(4));

}

【问题】

(13) 程序运行时,第1行输出 (13) 。

A、7 -1

B、-1 7

C、7 a

D、-1 -1

(14) 程序运行时,第2行输出 (14) 。

A、1239

B、12

C、1

D、9

(15) 程序运行时,第3行输出 (15) 。

A、2.5

B、2

C、2.0

D、3

(16) 程序运行时,第4行输出(16) 。

A、1.000

B、2.000

C、1.500

D、1.667

5. 阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。【程序】

程序1

#include

main()

{

int i, j, t, a[3][4] = {1,2,3,4,5,6,7,8,9,10,11,12};

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

for(j = 0; j <= i/2; j++){

t = a[i][j], a[i][j] = a[i][3-j], a[i][3-j] = t;

}

printf("%d\n", a[0][1]);

printf("%d\n", a[2][2]);

}

程序2

#include

main()

{

char str[10] = "27";

int i, number = 0;

for(i = 0; str[i] != '\0'; i++)

if(str[i] >= '0' && str[i] <= '7')

number = number * 8 + str[i] - '0';

printf("%d\n", number);

for(i = 0; str[i] != '\0'; i++)

if(str[i] >= '0' && str[i] <= '5')

number = number * 6 + str[i] -'0';

printf("%d\n", number);

}

【问题】

(17) 程序1运行时,第1行输出 (17) 。

A、3

B、4

C、1

D、2

(18) 程序1运行时,第2行输出 (18) 。

A、12

B、11

C、10

D、9

(19) 程序2运行时,第1行输出 (19) 。

A、2

B、27

C、23

D、16

(20) 程序2运行时,第2行输出 (20) 。

A 、19

B 、140

C 、147

D 、2

6阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。 【程序】

#include main() {

int i, j;

char ch, *p1, *p2, *s[4]={"four","hello","peak","apple"}; for(i = 0; i < 4; i++){ p1 = p2 = s[i]; ch = *(p1 + i);

while(*p1 != '\0'){ if(*p1 != ch){ *p2 = *p1; p2++; }

p1++; }

*p2 = '\0'; }

for(i = 0; i < 4; i++) printf("%s\n", s[i]); } 【问题】

(21) 程序运行时,第1行输出 (21) 。

A 、our

B 、four

C 、fur

D 、fou (22) 程序运行时,第2行输出 (22) 。

A 、ello

B 、hllo

C 、heo

D 、hell (23) 程序运行时,第3行输出 (23) 。

A 、peak

B 、eak

C 、pek

D 、pak (24) 程序运行时,第4行输出 (24) 。

A 、pple

B 、apple

C 、ale

D 、appe

二、程序编写 (每小题14分,共28分)

1.编写程序,输入100个整数,将他们存入数组a ,求数组a 中所有奇数之和。

2.按下面要求编写程序:

(1)定义函数total(n)计算n +??+++321,函数返回值类型是int 。

(2)定义函数main(),输入正整数n ,计算并输出下列算式的值。要求调用函数total(n)计算n +??+++321。 n

s ??++++

??++++++

=3211

32112111

计算机等级考试参考答案(二级C)

一、程序阅读与填空(24小题,每小题3分,共72分)

⑴ D ⑵ C ⑶ C ⑷ B ⑸ B ⑹ B ⑺ A ⑻ A ⑼ A ⑽ A ⑾ D ⑿ D ⒀ A ⒁ B ⒂ C ⒃ D

⒄ D ⒅ C ⒆ C ⒇ B (21)A (22)B (23)C (24)D

二、程序编写(每小题14分,共28分)

1.

#include

void main()

{

int a[100], i, s=0;

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

{

scanf("%d", &a[i]);

if(a[i] % 2 == 1)

s = s + a[i];

}

printf("%d\n", s);

}

2.

#include

int total(int n)

{

int i, s = 0;

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

s = s + i;

return s;

}

void main()

{

int i, n;

float s = 0;

scanf("%d", &n);

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

s = s + 1.0 / total(i);

printf("%f\n", s);

}

历年二级C语言笔试真题及答案

1 2009年9月全国计算机等级考试二级笔试 试卷 1)下列数据结构中,属于非线性结构的是 A )循环队列 B) 带链队列 C) 二叉树 D )带链栈 2)下列数据结果中,能够按照“先进后出”原则存取数据的是 A) 循环队列 B) 栈 C)队列 D)二叉树 3)对于循环队列,下列叙述中正确的是 A )队头指针是固定不变的 B )队头指针一定大于队尾指针 C )队头指针一定小于队尾指针 D )队头指针可以大于队尾指针,也可以小于队尾指针 4)算法的空间复杂度是指 A )算法在执行过程中所需要的计算机存储空间 B )算法所处理的数据量 C )算法程序中的语句或指令条数 D )算法在执行过程中所需要的临时工作单元数 5)软件设计中划分模块的一个准则是 A) 低内聚低耦合 B) 高内聚低耦合 C) 低内聚高耦合 D) 高内聚高耦合 6)下列选项中不属于结构化程序设计原则的是 A) 可封装 B) 自顶向下 C) 模块化 D) 逐步求精 7)软件详细设计产生的图如下: 该图是 A) N-S 图 B) PAD 图 C) 程序流程图 D) E-R 图 8)数据库管理系统是 A )操作系统的一部分B) 在操作系统支持下的系统软件C) 一种编译系统 D) 一种操作系统 9)在E-R 图中,用来表示实体联系的图形是 A) 椭圆图B) 矩形C) 菱形D) 三角形 10)有三个关系R ,S 和T 如下: 其中关系T 由关系R 和S 通过某种操作得到,该操作为 A) 选择 B) 投影 C) 交 D) 并 11)以下叙述中正确的是 A )程序设计的任务就是编写程序代码并上机 B )程序设计的任务就是确定所用数据结 构 C )程序设计的任务就是确定所用算法 D )以上三种说法都不完整 12)以下选项中,能用作用户标识符的是 A )void B )8_8 C )_0_ D )unsigned 13)阅读以下程序 #include main() { int case; float printF; printf(“请输入2个数:”); scanf(“%d %f”,&case,&pjrintF); printf(“%d %f \n”,case,printF); } 该程序编译时产生错误,其出错原因是 A )定义语句出错,case 是关键字,不能 用作用户自定义标识符B )定义语句出错,printF 不能用作用户自定义标识符 C )定义语句无错,scanf 不能作为输入函 数使用 D )定义语句无错,printf 不能输出case 的值 14)表达式:(int)((double)9/2)-(9)%2的值是 A )0 B )3 C )4 D )5 15)若有定义语句:int x=10;,则表达式 x-=x+x 的值为 A )-20 B )-10 C )0 D )10 16)有以下程序 #include main() { int a=1,b=0; printf(“%d,”,b=a+b); printf(“%d \n”,a=2*b); } 程序运行后的输出结果是 A )0,0 B )1,0 C )3,2 D )1,2 17)设有定义:int a=1,b=2,c=3;,以下语 句中执行效果与其它三个不同的是 A )if(a>b) c=a,a=b,b=c; B )if(a>b) {c=a,a=b,b=c;} C ) if(a>b) c=a;a=b;b=c; D ) if(a>b) {c=a;a=b;b =c;} 18)有以下程序 #include main() { int c=0,k; for (k=1;k<3;k++) switch (k) {default: c+=k case 2: c++;break; case 4: c+=2;break; } printf(“%d \n”,c); } 程序运行后的输出结果是 A )3 B )5 C )7 D )9 19)以下程序段中,与语句:k=a>b?(b>c?1:0):0;功能相同的是 A )if((a>b)&&(b>c)) k=1;else k=0; B )if((a>b)||(b>c) k=1;else k=0; C )if(a<=b) k=0;else if(b<=c) k=1; D )if(a>b) k=1;else if(b>c) k=1; else k=0; 20)有以下程序 #include main() { char s[]={“012xy”};int i,n=0; for(i=0;s[i]!=0;i++) if(s[i]>=?a?&&s[i]<=?z?) n++; printf(“%d \n”,n); } 程序运行后的输出结果是 A )0 B )2 C )3 D )5 21)有以下程序 #include main() { int n=2,k=0; while(k++&&n++>2); printf(“%d %d \n”,k,n); } 程序运行后的输出结果是 A )0 2 B )1 3 C )5 7 D )1 2 22)有以下定义语句,编译时会出现编译错误的是 A )char a=?a? B )char a=?\n?; C )char a=?aa?; D )char a=?\x2d?; 23)有以下程序 #include main() { char c1,c2; c1=?A?+?8?-…4?; c2=?A?+?8?-…5?; printf(“%c,%d \n”,c1,c2); } 已知字母A 的ASCII 码为65,程序运行后的输出结果是

浙江省计算机二级c语言上机考试真题版

浙江省二级c语言上机考试真题 介绍:浙江省二级c语言考试分为笔试和上机考试两块.取笔试和上机中分数较低的那个作为计算机二级的最终成绩,最后证书上按档次划分等级,其中60-79及格,80-89良好,90-100优秀。 笔试部分分两块,一块是24道选择题(六道程序题,每题中间有四个空,每空有四个选项供选择),浙江省的计算机笔试选择题不考概念性内容,所以大家不用费心,另一块是程序编写,手写两个完整程序,一道循环数组(结合),一道是函数或指针。 上机部分分两块,一块是计算机基本操作,即从access,ppt,excel,outlook,word,网页制作,文件夹操作中随机选择四道,另一块是编程,编程题可以打开编程软件c-free来做,编程中共五道题,一道改错,两道填空,最后两道是编写程序。 (一)程序改错: 1,10个数求最大最小值

该程序中“/***** N ***** /”的下一行中有错误, 请改正(注意:不得加行、减行、加句、减句,否则后果自负)。 该程序功能:运行时输入10个数,然后分别输出其中的最大值、最小值。#include void main() { float x,max,min; int i; /******** 1 *******/ for(i=0;i<=10;i++) { scanf("%f",&x); /******* 2 ********/ if(i=1) { max=x;min=x;} if(x>max) max=x; if(x } printf("%f,%f\n",max,min); } ?#include ?int main() ?{ float x,max,min; int i; ?/******** 1 *******/

计算机二级c语言历年真题及答案

计算机二级c语言历年真题及答案【篇一:国家计算机二级c语言历年真题及答案】 class=txt>c语言程序设计 (考试时间90分钟,满分100分) 一、选择题((1)—(10)、(21)—(40)每题2分,(11)—(20)每题1分,共70分) (1)下列数据结构中,属于非线性结构的是 a)循环队列 b) 带链队列 c) 二叉树 d)带链栈 (2)下列数据结果中,能够按照“先进后出”原则存取数据的是 a) 循环队列 b) 栈 c)队列 d)二叉树 (3)对于循环队列,下列叙述中正确的是 a)队头指针是固定不变的 b)队头指针一定大于队尾指针 c)队头指针一定小于队尾指针 d)队头指针可以大于队尾指针,也可以小于队尾指针 (4)算法的空间复杂度是指 a)算法在执行过程中所需要的计算机存储空间 b)算法所处理的数据量 c)算法程序中的语句或指令条数 d)算法在执行过程中所需要的临时工作单元数 (5)软件设计中划分模块的一个准则是 a) 低内聚低耦合 b) 高内聚低耦合 c) 低内聚高耦合 d) 高内聚高耦合 (6)下列选项中不属于结构化程序设计原则的是 a) 可封装 d) 自顶向下

c) 模块化 d) 逐步求精 (7)软件详细设计产生的图如下: 该图是 a) n-s图 b) pad图 c) 程序流程图 d) e-r图 (8)数据库管理系统是 a)操作系统的一部分 b) 在操作系统支持下的系统软件 c) 一种编译系统 d) 一种操作系统 (9)在e-r图中,用来表示实体联系的图形是 a) 椭圆图 b) 矩形 c) 菱形 d) 三角形 (10)有三个关系r,s和t如下: 其中关系t由关系r和s通过某种操作得到,该操作为 a) 选择 b) 投影 c) 交 d) 并 (11)以下叙述中正确的是 a)程序设计的任务就是编写程序代码并上机调试 b)程序设计的任务就是确定所用数据结构 c)程序设计的任务就是确定所用算法 d)以上三种说法都不完整 (12)以下选项中,能用作用户标识符的是 a)void b)8_8 c)_0_ d)unsigned (13)阅读以下程序

C语言考试题库及答案复习整理

C 语言理论上机考试选择题部分(共200题) 1、下面程序的输出是___D______ #include void main() { int k=11; printf("k=%d,k=%o,k=%x\n",k,k,k); } A) k=11,k=12,k=11 B) k=11,k=13,k=13 C) k=11,k=013,k=0xb D) k=11,k=13,k=b 2、在下列选项中,不正确的赋值语句是__D______. A) ++t; B) n1=(n2=(n3=0)); C) k=i=j; D) a=b+c=1; 3、下面合法的C 语言字符常量是______A____. A) '\t' B) "A" C) 65 D) A 4、表达式: 10!=9的值是 ________D____. A) true B) 非零值 C) 0 D) 1 5、C 语言提供的合法的数据类型关键字是_____B____. A) Double B) short C) integer D) Char 6、字符(char)型数据在微机内存中的存储形式是__D__. A) 反码 B) 补码 C) EBCDIC 码 D) ASCII 码 7、C 语言程序的基本单位是_____C______. A) 程序行 B) 语句 C) 函数 D) 字符 8、设 int a=12,则执行完语句

a+=a-=a*a 后,a 的值是____D____ A) 552 B) 264 C) 144 D) -264 9、执行下面程序中的输出语句后,输出结果是____B__. #include void main() {int a; printf("%d\n",(a=3*5,a*4,a+5)); } A) 65 B) 20 C) 15 D) 10 10、下面程序的输出是____B______. #include void main() {int x=023; printf("%d\n",--x); } A) 17 B) 18 C) 23 D) 24 11、下面程序的输出的是_____C____. #include void main() {int x=10,y=3; printf("%d\n",y=x/y); } A) 0 B) 1 C) 3 D) 不确定的值 12、已知字母A 的ASCII 码为十进制的65,下面程序的输出是______A_____. #include void main() {char ch1,ch2; ch1='A'+'5'-'3'; ch2='A'+'6'-'3'; printf("%d,%c\n",ch1,ch2); } A) 67,D B) B,C C) C,D D) 不确定的值 13、若要求在if 后一对圆括号中表示a 不等于0的关系,则能正确表示这一关系的表达式为____D__. A) a<>0 B) !a C) a=0 D) a

03年浙江省计算机等级考二级(C语言)

2003年秋浙江省高校非计算机专业学生 计算机等级考试试卷(二级C) 说明:⑴考生应将试题一至试题三的答案涂在答题卡上,将第四、五题的答案填写在答卷上,否则作无效处理; ⑵请将你的准考证号的后四位填写在答卷右下角的指定位置内; ⑶考试时间为120分钟。 试题一、计算机基础题(本题共15分) (一)单选题(每小题1分,共10分) (1)计算机网络最突出的优点是(1)。 A、运算速度快 B、精度高 C、共享硬件、软件和数据资源 D、内存容量大 (2)在微型计算机的设备中,访问速度最快的是(2)。 A、软盘 B、硬盘 C、内存储器 D、CD-ROM (3)操作系统的主要功能是(3)。 A、对计算机系统的所有资源进行控制与管理 B、实现多用户及分布式处理 C、扩充计算机的功能 D、对硬件资源进行分配、控制、调度和回收 (4)Internet与WWW的关系是(4)。 A、都是因特网,只是名称不同 B、Internet就是WWW C、Internet与WWW完全没有关系 D、WWW是Internet上的一个应用(5)在Windows 98环境下,下面关于附件中应用程序的说法,(5)是不正确的。 A、写字板可以编辑文本文件 B、写字板的缺省扩展名为.DOC C、计算器中的计算结果,可以粘贴到文档文件中 D、记事本中设置的显示字体,将保存在文本文件中,当使用Word读入该文件时, 仍具有所设置的字体 (6)在Word编辑文本时,将文档中所有的“memory”都改成“存储器”,最快捷的方法是采用(6)操作。 A、中英文转换 B、替换 C、改写 D、翻译 (7)以下几种关于消除计算机病毒的说法中,正确的是(7)。 A、专门的杀毒软件并非总是有效的 B、删除所有带毒文件能消除所有病毒 C、对感染上病毒的软盘,格式化既能消除病毒,又能使数据不受破坏 D、要一劳永逸地使计算机不感染病毒,最好的方法是装上防病毒卡 (8)实现汉字字形表示的方法,一般可分为(8)两大类。

C语言二级考试试题及答案

1.若i,j和k都是int型变量,则表达式(i=4,j=16,k=32,i=j)的值为 A. 4 B. 16 C. 32 D. 52 2.若有函数内部说明:int a[3][4];则数组a中各元素 A. 可在程序的运行阶段得到初值0 B. 可在程序的编译阶段得到初值0 C. 不能得到确定的初值 D. 可在程序的编译或运行阶段得到初值0 3.一个C语言程序是由 A. 一个主程序和若干子程序组成 B. 函数组成 C. 若干过程组成 D. 若干子程序组成 4.若有说明 int a[2][4];则a数组元素的非法引用是 A. a[0][2*1] B. a[1][3] C. a[4-3][0] D. a[0][4] 5.阅读下面程序,则执行后的输出结果是___。 #include "stdio.h" main() {int x,y,z; x=1;y=2;z=3; if(x>y)if(x>z)printf("%d",x); else printf("%d",y); printf("%d\n",z); } A. 0 B. 1 C. 2 D. 3 6.下面程序的输出结果为 main() { int a,b;b=(a=3*5,a*4,a*5); printf("%d",b ;} A. 60 B. 75 C. 65 D. 无确定值 7.下列选项中不是结构化程序基本结构的是 A. 顺序结构 B. 跳转分支结构 C. 选择结构 D. 循环结构 8.所有C函数的结构都包括的三部分是 A. 语句、花括号和函数体 B. 函数名、语句和函数体 C. 函数名、形式参数和函数体 D. 形式参数、语句和函数体 9.设int a=5,b=6,表达式(--b==6)?++a:--b的值是___ A. 5 B. 6 C. 7 D. 4 10.下列叙述中不是C语言的特点的是______。 A. 简洁、紧凑,使用方便、灵活,易于学习和应用 B. C语言是面向对象的程序设计语言 C. C语言允许直接对位、字节和地址进行操作 D. C语言数据类型丰富、生成的目标代码质量高 11.下列关于C语言注释的叙述中错误的是______。 A. 以“/*”开头并以“*/”结尾的字符串为C语言的注释符 B. 注释可出现在程序中的任何位置,用来向用户提示或解释程序的意义 C. 程序编译时,不对注释作任何处理 D. 程序编译时,需要对注释进行处理 12.s1和s2已正确定义并分别指向两个字符串。 若要求:当s1所指串大于s2所指串时,执行语句S;则以下选项中正确的是 A. if(s1>s2)S; B. if(strcmp (s1,s2))S; C. if(strcmp(s2,s1)>0) S; D. if(strcmp (s1,s2)>0)S; 13.设i,j,k均为int型变量,则执行完下面的for语句后,k的值为___ 。 for(i=0, j=10; j>=i; i++, j--) k=i+j; A. 10 B. 20 C. 8 D. 0 14.已知:int c[3][4];则对数组元素引用正确的是 A. c[1][4] B. c[1.5][0] C. c[1+0][0]

二级C语言试题(含答案)

二级C语言试题 一、判断题(2×8=16分) 1、printf()函数总是从新行的起始位置开始打印。( F ) 2、所有的变量在使用前都必须予以申明。(F) 3、在申明变量时必须给出变量的类型。(T) 4、C语言认为变量number和NuMbEr是相同的。( F) 5、打印三行输出的C语言程序必须用三条printf语句。(F) 6、求余运算符%只能用于两个整数操作数。(T) 7、switch选择结构中必须有default子句。(F) 8、如果x>y或ay&&a

C语言期末考试题(含答案)

《C 语言程序设计》期末试卷 一、单项选择题(10x2’=20’) 1、以下叙述正确的是() A )C 语言的源程序不必通过编译就可以直接运行。 B ) C 语言中的每条可执行语句最终都将被转换成二进制的机器指令。 C )C 语言源程序经编译形成的二进制代码可以直接运行。 D )C 语言中的函数不可以单独进行编译。 2、一个C 语言的源程序中() A )必须有一个主函数 B )可能有多个主函数 C )必须有除主函数外其它函数 D )可以没有主函数 3、以下不能定义为用户标识符的是() A )scanf B )Void C )_3com D )int 4、若以下选项中的变量已正确定义,则正确的赋值语句是() A )x1=26.8%3; B )1+2=x2; C )x3=0x12; D )x4=1+2=3; 5、设有定义:floata=2,b=4,h=3;以下C 语言表达式中与代数式h b a *)(2 1 的计算结果不.相符的是() A )(a+b)*h/2 B )(1/2)*(a+b)*h C )(a+b)*h*1/2 D )h/2*(a+b) 6、C 语言中用于结构化程序设计的3种基本结构是() A )顺序结构、选择结构、循环结构 B )if 、switch 、break C )for 、while 、do-while D )if 、for 、continue 7.在while (!x )语句中的!x 与下面条件表达式等价的是() A)x!=0B)x==1C)x!=1D)x==0

8、有以下程序: #include voidmain(){ inti=1,j=1,k=2; if((j++||k++)&&i++) printf(“%d,%d,%d\n”,i,j,k);} 执行后的输出结果是() A)1,1,2 B)2,2,1 C)2,2,2 D)2,2,3 9、有以下程序: #include voidmain(){ inti,s=0; for(i=1;i<10;i+=2) s+=i+1; printf(“%d\n”,s);} 程序执行后的输出结果是() A)自然数1~9的累加和B)自然数1~10的累加和 C)自然数1~9中奇数之和D)自然数1~10中偶数之和 10、有以下函数定义: voidfun(intn,doublex){……} 若以下选项中的变量都已经正确定义并赋值,则对函数fun的正确调用语句是()A)fun(inty,doublem); B)k=fun(10,12.5); C)fun(x,n);D)voidfun(n,x); 二、填空题(10x2’=20’) 11、C语言描述“x和y都大于或等于z”的表达式是:。 12、函数定义时涉及的基本要素是:、、。

浙江计算机二级考试(C语言)上机试题

二级考试(C语言)上机试题1.三个数比较大小。 #include void swap(______1______) //int *pa,int *pb { /*交换两个数的位置*/ int temp; temp = *pa; *pa = *pb; *pb = temp; } void main() { int a,b,c,temp; scanf("%d%d%d",&a,&b,&c); if(a>b) swap(&a,&b); if(b>c) swap(&b,&c); if(______2______) //a>b swap(&a,&b); printf("%d,%d,%d",a,b,c); } 2.表达式求和。 #include #include void main() { FILE *fp; float n=1,t=1,pi=0; int i; // 从以下开始答题 i=1; while(fabs(t)>=1e-6) { pi=pi+t; i=-i; n=n+2; t=i/n; } fp=fopen("Design1.dat","w"); fprintf(fp,"%.6f",4*pi); fclose(fp); } 运行结果:3.141594 3.字母后移循环输出。

#include void main() { char c; c=getchar(); if(______1______) // c>='a' && c<'v' c=c+5; else if (c>='v' && c<='z') ______2______ // c=c-21; putchar(c); } 4.求满足条件的数。 #include #include void main() { float y=1.05; int n=1; FILE *p; // 以下开始做答 while(!(pow(y,n)<1e6 && pow(y,n+1)>1e6)) n++; p=fopen("Design2.dat","w"); fprintf(p,"%d,%.0f",n,pow(1.05,n)); fclose(p); } 运行结果:283,992137 5.求满足条件的数。 #include void main() { int m=0,t=1,n; while( _____ 1 ________); // (scanf("%d",&n),n<=0) while(!(t<=n&&t*2>=n)){ _____ 2 _____ // t=t*2; m++; } printf("%d\n",m); } 6.求平面点间的最短距离。

全国计算机等级考试 历年真题2009年3月二级C语言笔试真题及答案

全国计算机等级考试历年真题2009年3月二级C语言笔试真题及答案 一、选择题(每题2分,共计70分) 1.(1)下列叙述中正确的是 A)栈是先进先出的线性表 B)队列是"先进后出"的线性表 C)循环队列是非线性结构 D)有序线性表即可以采用顺序存储结构,也可以采用链式存 储结构 A B C D 2.(2)支持子程序调用的数据结构是 A)栈 B)树 C)队列 D)二叉树 A B C D 3.(3)某二叉树有5个度为2的结点,则该二叉树中的叶子结点数是 A)10 B)8 C)6 D)4 A B C D 4.(4)下列排序方法中,最坏情况下比较次数最少的是 A)冒泡排序 B)简单选择排序 C)直接插入排序

D)堆排序 A B C D 5.(5)软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。下列 属于应用软件的是 A)编译程序 B)操作系统 C)教务管理系统 D)汇编程序 A B C D 6.(6)下面叙述中错误的是 A)软件测试的目的是发现错误并改正错误 B)对被调试程序进行"错误定位"是程序调试的必要步骤 C)程序调试也成为Debug D)软件测试应严格执行测试计划,排除测试的随意性 A B C D 7.(7)耦合性和内聚性是对模块独立性度量的两个标准。下列叙述中正确的是 A)提高耦合性降低内聚性有利于提高模块的独立性 B)降低耦合性提高内聚性有利于提高模块的独立性 C)耦合性是指一个模块内部各个元素间彼此结合的紧密程度 D)内聚性是指模块间互相连接的紧密程度 A B C D 8.(8)数据库应用系统中的核心问题是 A)数据库设计 B)数据库系统设计 C)数据库维护 D)数据库管理员培训

大学C语言考试题库(含标准答案)

单项选择 ================================================== 题号:1482 执行以下程序段后,输出结果和a的值是()。int a=10 。printf("%d",a++) 。 A、11 和10 B、11 和11 C、10 和11 D、10 和10 答案: C 题号:2100 已知字符'A' 的ASCⅡ代码值是65, 字符变量c1的值是'A',c2 的值是'D'. 执行语句printf("%d,%d",c1,c2-2) 。后, 输出结果是 A、65,66 B、A,B C、 65,68 D、A,68 答案: A 题号:5055 相同结构体类型的变量之间,可以()。 A、比较大小 B、地址相同 C、赋值 D、相加 答案: C 题号:3217 int a[10] 。合法的数组元素的最小下标值为()。 A、1 B、0 C、10 D、9 答案: B 题号:45 能正确表示逻辑关系:" a ≥10或a≤0 " 的C语言表达式是 A、a>=0 | a<=10 B、a>=10 or a<=0 C、a>=10 && a<=0 D、a>=10 || a<=0

D 题号:157 main() {int x=1,a=0,b=0 。 switch (x) { case 0: b++ 。 case 1: a++ 。 case 2: a++ 。b++。} printf("a=%d,b=%d",a,b) 。} 该程序的输出结果是( ) A、2,2 B、2,1 C、1,1 D、1,0 答案: B 题号:4784 设变量a是整型,f 是实型,i 是双精度型,则表达式10+'a'+i*f 值的 数据类型为()。 A、不确定 B、double C、int D、 float 答案: B 题号:1647 以下程序中,while 循环的循环次数是______ main() { int i=0 。 while(i<10) { if(i<1) continue 。 if(i==5) break 。 i++ 。 } } A、死循环,不能确定次数 B、6 C、4 D、1

浙江省计算机二级C语言历年试卷

浙江省计算机二级C语言历年试卷

一、程序填空 (1)找Armstrong(水仙花)数:371=3*3*3+7*7*7+1*1*1 b=i_x0010_0/10;

a*a*a+b*b*b+c*c*c = = i (2)输入1个整数后,输出该数的位数。(例:输入3214则输出4,输入-23156则输出5)。 n!=0 n=n/10 (3)求输入的整数各位数字之和,如输入234则输出9,输入-312则输出6。if (n<0) n=-n; s+=n_x0010_; (4)调用函数f,将一个整数首尾倒置。例如:若程序输入12345,则输出54321;若程序输入-34567,则输出-76543。 return -y ; m=m/10 ; (5)调用函数f,从字符串中删除所有的数字字符。 strcpy else

(6)调用find函数在输入的字符串中查找是否出现the这个单词。如果查到返回出现的次数,如果未找到返回0。 j=0; j<3; j++ j>=3

(7)输入的一个小写字母,将字母循环后移5个位置后输出。例如:a变成f,w 变成b。 c>='a'&&c<='u' c=(c-'a'+5)&+'a'; (8)将字符串s中所有的字符'c'删除。s[i] != '\0' j++; (9)对x=1,2,……,10,求 f(x)=x*x-5*x+sin(x)的最大值。max=f(1); if (f(x)>max) max=f(x); (10)输入三个整数,按由小到大的顺序输出这三个数。 int *pa, int *pb if ( a>b ) (11)调用函数f,去除数组中的负数,输入数组x[7],输出结果为:1 3 4 6

浙江省高校计算机等级考试大纲(二级 C语言程序设计大纲

二级C程序设计考试大纲 基本要求 1.掌握C语言的基本知识,包括C语言的功能和语法;2.基本具备C语言程序设计能力,能熟练地阅读、理解和编写简短的C程序; 3.掌握一种C语言的编译和编程环境,能熟练地调试程序;4.熟练掌握结构化程序设计的方法; 5.掌握程序设计中常用的基本算法。 考试范围 一、数据的定义 1.基本类型(整型,实型,字符型) (1)常量 各种表示形式的整数、实数和字符(串)常量,符号常量 的定义和使用,包括整数的十进制、八进制和十六进制 的表示形式、长整型常量的表示形式,实数的浮点表示 法和科学记数法,字符的转义序列,常用符号常量的含 义(如NULL、EOF等); (2)变量 变量的定义和初始化。

2.构造类型 (1)数组 一维和二维数组的定义和初始化,数组元素的引用,包括一维字符数组和字符串,二维字符数组和字符串数组。 (2)结构 结构类型的定义,结构变量的定义和初始化,结构变量成员的引用。 3.指针 (1)指针和地址的概念; (2)指针变量的定义和初始化; (3)通过指针引用指向实体。 4.构造类型和指针类型的混合定义及应用 (1)指针、数组和地址间的关系; (2)指针数组; (3)结构数组; (4)结构指针; (5)结构中含指针或数组; (6)指向指针的指针(即二级指针)。 5.空类型的定义和使用 6.变量的存储类别、作用域和生存期 (1)变量的存储类别,包括auto自动型、static静

态型、extern外部参照型; (2)全局变量和局部变量,包括自动局部变量和静态局 部变量、全局变量和静态全局变量、外部变量。 二、运算及流程控制 1.基本运算 运算符的功能,运算符的优先级、结合性和目数,隐式类型转换和强制类型转换。 2.表达式 各类表达式的组成规则和计算过程。 3.语句 (1)表达式语句、空语句、复合语句; (2)简单控制语句(break、continue、return); (3)选择控制语句(if、switch); (4)重复控制语句(for、while、do—while)。 三、程序结构和函数 1.程序结构 main函数与其他函数之间的关系,包括标准库函数和自定义函数。 2.函数的定义 (1)函数定义的ANSI C格式;

计算机二级C语言测试题及答案解析(一)

2016年计算机二级C语言测试题及答案解析(一)1.(A )是构成C语言程序的基本单位。 A、函数 B、过程 C、子程序 D、子例程 2.C语言程序从C 开始执行。 A、程序中第一条可执行语句 B、程序中第一个函数 C、程序中的main函数 D、包含文件中的第一个函数 3、以下说法中正确的是(C )。 A、C语言程序总是从第一个定义的函数开始执行 B、在C语言程序中,要调用的函数必须在main( )函数中定义 C、C语言程序总是从main( )函数开始执行 D、C语言程序中的main( )函数必须放在程序的开始部分 4.下列关于C语言的说法错误的是(B )。 A、C程序的工作过程是编辑、编译、连接、运行 B、C语言不区分大小写。 C、C程序的三种基本结构是顺序、选择、循环 D、C程序从main函数开始执行 5.下列正确的标识符是(C )。

B、a[i] C、a2_i D、int t 5~8题为相同类型题 考点:标识符的命名规则 只能由字母、数字、下划线构成 数字不能作为标识符的开头 关键字不能作为标识符 选项A中的“-”,选项B中“[”与“]”不满足(1);选项D中的int为关键字,不满足(3) 6.下列C语言用户标识符中合法的是(B )。 A、3ax B、x C、case D、-e2 E)union 选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的“-”不满足(1); 7.下列四组选项中,正确的C语言标识符是(C )。 A、%x B、a+b C、a123

选项A中的“%”,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2) 8、下列四组字符串中都可以用作C语言程序中的标识符的是(A)。 A、print _3d db8 aBc B、I\am one_half start$it 3pai C、str_1 Cpp pow while D、Pxq My->book line# His.age 选项B中的“\”,”$”,选项D中“>”,”#”,”.”,”-”不满足(1);选项C 中的while为关键字,不满足(3) 9.C语言中的简单数据类型包括(D )。 A、整型、实型、逻辑型 B、整型、实型、逻辑型、字符型 C、整型、字符型、逻辑型 D、整型、实型、字符型 10.在C语言程序中,表达式5%2的结果是C 。 A、2.5 B、2 C、1 D、3 %为求余运算符,该运算符只能对整型数据进行运算。且符号与被模数相同。5%2=1;5%

C语言试题及答案

第1章 C语言概述习题 1. 单项选择题 (1) C 语言是在 B 语言的基础上产生的。 A. A B. B C. D D. E (2) 在 C 语言中,每个语句必须以 D 结束。 A. 回车符 B. 冒号 C. 逗号 D. 分号 (3) 标识符和关键字间,要用 C 隔开。 A. 回车符 B. 冒号 C. 空格 D. 分号 (4) 用 C 语言编写的源文件经过编译,若没有产生编译错误,则系统将( B )。 A. 生成可执行目标文件 B. 生成目标文件 C. 输出运行结果 D.自动保存源文件 (5) 下列说法中正确的是( B )。 A. 由于 C 源程序是高级语言程序,因此一定要在 TC 软件中输入 B. 由 C 源程序是字符流组成,因此可以作为文本文件在任何文本编辑的软件中输入 C. 由于C 程序是高级语言程序,因此输入后即可执行 D. 由于 C 程序是高级语言程序,因此它由命令组成 (6) 下列说法中正确的是( A )。 A. C 语言程序由主函数和 0 个或多个函数组成 B. C 语言程序由主程序和子程序组成 C. C 语言程序由子程序组成 D. C 语言程序由过程组成 (7) 下列说法中错误的是( D )。 A. 主函数可以分为两个部分:主函数说明部分和主函数体 B. 主函数可以调用任何非主函数的其他函数 C. 任何非主函数可以调用其他任何非主函数 D. 程序可以从任何非主函数开始执行 2. 填空题 (1) C 语言只有 32 个关键字和 9 种控制语句。 (2) C 语言是一种“中级语言”,既具有高级语言的特点又具有低级语言的特点;既适合于开发系统软件又适合于编写应用程序。 (3) 每个源程序有且只有一个主函数,系统总是从该函数开始执行C语言程序。 (4) 在 C 语言程序中允许出现的字符集是 ASCII码字符集。 (5) C 语言的程序中有特殊含义的英语单词称为保留字。 (6) C 语言标识符的长度是前 8 位有效。 (7) C 语言中,标识符的定义规则是以字母或下划线为开头。 (8) C 语言程序的注释可以出现在程序中的任何地方,它总是以 /* 符号作为开始标记,以 */ 符号作为结束标记。 第2章数据类型运算符和表达式习题 1. 单项选择题 (1) 以下选项中,正确的 C 语言整型常量是 D 。 A. 32L B. 510000 C. -1.00 D. 567 (2) 以下选项中, D 是不正确的 C 语言字符型常量。

2008--2010浙江省二级C语言考试真题__史杨杨

2008年春浙江省高校 计算机等级考试试卷(二级C) 试题1(每小题3分,共12分) 【程序说明】 输入一个整数n(n>=2),输入菲波那契序列的前n项,每行输出6个数,菲波那序列:1,1,2,3,5,8,13,……,数列的前两个数都是1,从第三项开始,每个数是前两个数之和。 运行示例: Enter n:10 1 1 2 3 5 8 13 21 34 55 #include main() {int count,i,n,x1,x2,x; printf("Enter n:"); scanf("%d",&n); x1=x2=1; printf("%6d%6d",x1,x2); (1); for(i=1;i<=n-2;i++) { (2); printf("%6d",x); count++; if( (3))printf("\n"); x1=x2; (4); } } 【供选择的答案】 (1)A、count=2 B、count=0 C、count=1 D、count=-1 答案:A (2) A、x=x1-x2 B、x=x1+x2 C、x=x1 D、x=2 答案:B (3) A、count/6==0 B、count%6!=0 C、count%6==0 D、count/6!=0 答案:C (4) A、x=x1+x2 B、x2=x1 C、x=x2 D、x2=x 答案:D 试题2(每小题3分,共12分) 【程序说明】 输入2个正数m和n(1<=m

计算机二级c语言题库及答案

2016年计算机二级c语言题库及答案 一、选择题(每小题1分,共40小题,共40分) 1.设循环队列的存储空间为Q(1:35),初始状态为front=rear=35。现经过一系列入队与退队运算后,front=15,rear=15,则循环队列中的元素个数为( )。 或35 2.下列关于栈的叙述中,正确的是( )。 A.栈底元素一定是最后入栈的元素 B.栈操作遵循先进后出的原则 C.栈顶元素一定是最先入栈的元素 D.以上三种说法都不对 3.下列链表中,其逻辑结构属于非线性结构的是( )0、 A.双向链表 B.带链的栈 C.二叉链表 D.循环链表 4.在关系数据库中,用来表示实体间联系的是( )。 A.网状结构 B.树状结构 C.属性 D.二维表 5.公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员。则实体部门和职员间的联系是( )。 :m联系 :n联系 :1联系 :l联系

6.右两个关系R和S如下: 则由关系R得到关系S的操作是( )。 A.自然连接 B.并 C.选择 D.投影 7.数据字典(DD)所定义的对象都包含于( )。 A.软件结构图 B.方框图 C.数据流图(DFD图) D.程序流程图 8.软件需求规格说明书的作用不包括( )。 A.软件设计的依据 B.软件可行性研究的依据 C.软件验收的依据 D.用户与开发人员对软件要做什么的共同理解 9.下面属于黑盒测试方法的是( )。 A.边界值分析 B.路径覆盖 C.语句覆盖 D.逻辑覆盖 10.下面不属于软件设计阶段任务的是( )。 A.制订软件确认测试计划 B.数据库设计 C.软件总体设计 D.算法设计 11.以下叙述中正确的是( )。 A.在C语言程序中,main函数必须放在其他函数的最前面 B.每个后缀为C的C语言源程序都可以单独进行编译 C.在C语言程序中,只有main函数才可单独进行编译

C语言上机作业试题5套含答案

第一次上机作业(2014): 要求: ?独立完成,上机调试通过后上交 ?作业提交邮箱: ?邮件主题命名:班级学号姓名(第1次作业), 例如:电1301班2王鹏(第1次作业) ?以附件形式将每次作业的所有程序源程序压缩打包后提交,压缩文件命名格式同上。 ?程序必须采用缩进格式 1.大写字母转换成小写字母 从键盘输入一个大写英文字母,输出相应的小写字母。 例:输入G 输出g 2.求平方根 输入一个实数x,计算并输出其平方根(保留1 位小数)。 例:输入17 输出The square root of 17.0 is 4.1 3.温度转换 设计一个程序将华氏温度转换成摄氏温度c = 5/9(f-32) a)输入华氏温度(实型) b)输出的摄氏温度结果保留两位小数 例:Please input Fahrenheit temperature: 76.8 The corresponding Celsius temperature is 24.89 4. 计算旅途时间 输入二个整数time1 和time2,表示火车的出发时间和到达时间,计算并输出旅途时间。 (输入的有效的时间范围是0000 到2359,不需要考虑出发时间晚于到达时间的情况。) 例:输入712 1411 (出发时间是7:12,到达时间是14:11) 输出The train journey time is 6 hours 59 minutes. 5. 数字加密 输入一个四位数,将其加密后输出。方法是将该数每一位上的数字加9,然后除以10 取余,做为该位上的新数字,最后将第1 位和第3 位上的数字互换,第2 位和第4 位上的数字互换,组成加密后的新数。 例:输入1257 输出The encrypted number is 4601 思考题:你能否编程找出谁做的好事? 有四位同学中的一位做了好事,不留名,表扬信来了之后,校长问这四位是谁做的好事。 ?A说:不是我。 ?B说:是C。 ?C说:是D。 ?D说:他胡说。 已知三个人说的是真话,一个人说的是假话。现在要根据这些信息,找出做了好事的人。 第二次上机作业(2014): 要求: ?独立完成,程序必须采用缩进格式,上机调试通过后上交

相关文档
最新文档