当前位置:文档之家› 2010年9月全国计算机等级考试二级C语言考试大纲、真题与答案

2010年9月全国计算机等级考试二级C语言考试大纲、真题与答案

2010年9月全国计算机等级考试二级C语言考试大纲、真题与答案
2010年9月全国计算机等级考试二级C语言考试大纲、真题与答案

全国计算机等级考试二级C语言考试大纲(新)

2010年必看

◆ 基本要求

1.熟悉 Visual C++ 6.0 集成开发环境。

2.掌握结构化程序设计的方法,具有良好的程序设计风格。

3.掌握程序设计中简单的数据结构和算法并能阅读简单的程序。

4.在 Visual C++ 6.0 集成环境下,能够编写简单的C程序,并具有基本的纠错和调试程序的能力

5.掌握算法的基本概念。

6.掌握基本数据结构及其操作。

7.掌握基本排序和查找算法。

8.掌握逐步求精的结构化程序设计方法。

9.掌握软件工程的基本方法,具有初步应用相关技术进行软件开发的能力。

10.掌握数据的基本知识,了解关系数据库的设计。

◆ 考试内容

一、C语言程序的结构

1.程序的构成,main函数和其他函数。

2.头文件,数据说明,函数的开始和结束标志以及程序中的注释。

3.源程序的书写格式。

4.C语言的风格。

二、数据类型及其运算

1.C的数据类型(基本类型,构造类型,指针类型,无值类型)及其定义方法。

2.C运算符的种类、运算优先级和结合性。

3.不同类型数据间的转换与运算。

4.C表达式类型(赋值表达式,算术表达式,关系表达式,逻辑表达式,条件表达式,逗号表达式)和求值规则。

三、基本语句

1.表达式语句,空语句,复合语句。

2.输入输出函数的调用,正确输入数据并正确设计输出格式。

四、选择结构程序设计

1.用if语句实现选择结构。

2.用switch语句实现多分支选择结构。

3.选择结构的嵌套。

五、循环结构程序设计

1.for循环结构。

2.while和do-while循环结构。

3.continue语句和break语句。

4.循环的嵌套

六、数组的定义和引用

1.一维数组和二维数组的定义、初始化和数组元素的引用。

2.字符串与字符数组。

七、函数

1.库函数的正确调用。

2.函数的定义方法。

3.函数的类型和返回值。

4.形式参数与实在参数,参数值传递。

5.函数的正确调用,嵌套调用,递归调用。

6.局部变量和全局变量。

7.变量的存储类别(自动,静态,寄存器,外部),变量的作用域和生存期。

八、编译预处理

1.宏定义和调用(不带参数的宏,带参数的宏)。

2.“文件包含”处理。

九、指针

1.地址与指针变量的概念,地址运算符与间址运算符。

2.一维、二维数组和字符串的地址以及指向变量、数组、字符串、函数、结构体的指针变量的定义。通过指针引用以上各类型数据。

3.用指针作函数参数。

4.返回地址值的函数。

5.指针数组,指向指针的指针。

十、结构体(即“结构”)与共同体(即“联合”)

1.用typedef说明一个新类型。

2.结构体和共用体类型数据的定义和成员的引用。

3.通过结构体构成链表,单向链表的建立,结点数据的输出、删除与插入。

十一、位运算

1.位运算符的含义和使用。

2.简单的位运算。

十二、文件操作

只要求缓冲文件系统(即高级磁盘I/O系统),对非标准缓冲文件系统(即低级磁盘I/O系统)不要求。

1.文件类型指针(FILE类型指针)。

2.文件的打开与关闭(fopen,fclose)。

3.文件的读写(fputc,fgetc,fputs,fgets,fread,fwrite,fprintf,fscanf函数的应用),文件的定位(rewind,fseek函数的应用)。

十三、基本数据结构与算法

1. 算法的基本概念;算法复杂度的概念和意义(时间复杂度与空间复杂度)。

2. 数据结构的定义;数据的逻辑结构与存储结构;数据结构的图形表示;线性结构与非线性结构的概念。

3. 线性表的定义;线性表的顺序存储结构及其插入与删除运算。

4. 栈和队列的定义;栈和队列的顺序存储结构及其基本运算。

5. 线性单链表、双向链表与循环链表的结构及其基本运算。

6. 树的基本概念;二叉树的定义及其存储结构;二叉树的前序、中序和后序遍历。

7. 顺序查找与二分法查找算法;基本排序算法(交换类排序,选择类排序,插入类排序)。

十四、程序设计基础

1. 程序设计方法与风格。

2. 结构化程序设计。

3. 面向对象的程序设计方法,对象,方法,属性及继承与多态性。

十五、软件工程基础

1. 软件工程基本概念,软件生命周戎概念,软件工具与软件开发环境。

2. 结构化分析方法,数据流图,数据字典,软件需求规格说明书。

3. 结构化设计方法,总体设计与详细设计。

4. 软件测试的方法,白盒测试与黑盒测试,测试用例设计,软件测试的实施,单元测试、集成测试和系统测试。

5. 程序的调试,静态调试与动态调试。

十六、数据库设计基础

1. 数据库的基本概念:数据库,数据库管理系统,数据库系统。

2. 数据模型,实体联系模型及E-R图,从E-R图导出关系数据模型。

3. 关系代数运算,包括集合运算及选择、投影、连接运算,数据库规范化理论。

4. 数据库设计方法和步骤:需求分析、概念设计、逻辑设计和物理设计的相关策略。

◆ 考试方式

1.笔试:90分钟,满分100分,其中含公共基础知识部分的30分。

2.上机:90分钟,满分100分

3、上机操作包括:(1)填空。(2)改错。(3)编程。

公共基础部分可看历年真题

2010年9月全国计算机二级C语言笔试试题

一、选择题(每小题2分,共70分)

下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。请将正确选项填涂在答题卡相应位置上,答在试卷上不得分。

(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)记录长度

B)文件的大小

C)联系的复杂程度

D)数据之间的联系方式

(8)一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员、与实体计算机之间的联系是

A)一对一

B)一对多

C)多对多

D)多对一

(9)数据库设计中反映用户对数据要求的模式是

A)内模式

B)概念模式

C)外模式

D)设计模

(10)有三个关系R、S和T如下:

则由关系R和S得到关系T的操作是

A)自然连接

B)交

C)投影

D)并

(11)以下关于结构化程序设计的叙述中正确的是

A)一个结构化程序必须同时由顺序、分支、循环三种结构组成

B)结构化程序使用goto语句会很便捷

C)在C语言中,程序的模块化是利用函数实现的

D)由三种基本结构构成的程序只能解决小规模的问题

(12)以下关于简单程序设计的步骤和顺序的说法中正确的是

A)确定算法后,整理并写出文档,最后进行编码和上机调试

B)首先确定数据结构,然后确定算法,再编码,并上机调试,最后整理文档

C)先编码和上机调试,在编码过程中确定算法和数据结构,最后整理文档

D)先写好文档,再根据文档进行编码和上机调试,最后确定算法和数据结构

(13)以下叙述中错误的是

A) C程序在运行过程中所有计算都以二进制方式进行

B)C程序在运行过程中所有计算都以十进制方式进行

C)所有C程序都需要编译链接无误后才能运行

D)C程序中整型变量只能存放整数,实型变量只能存放浮点数

(14)有以下定义:int a; long b; double x,y;则以下选项中正确的表达式是

A)a%(int)(x-y)

B)a=x!=y;

C)(a*y)%b

D)y=x+y=x

(15)以下选项中能表示合法常量的是

A)整数:1,200

B)实数:1.5E2.0

C )字符斜杠:‘\’

D)字符串:"\007"

(16)表达式a+=a-=a=9的值是

A)9

B)_9

C)18

D)0

(17)若变量已正确定义,在if (W)printf(“%d\n,k”);中,以下不可替代W 的是

A)a<>b+c

B)ch=getchar()

C)a==b+c

D)a++

(18)有以下程序

#include

main()

{int a=1,b=0;

if(!a) b++;

else if(a==0)if(a)b+=2;

else b+=3;

printf(”%d\n”,b);

程序运行后的输出结果是

A)0

B)1

C)2

D)3

(19)若有定义语句int a, b;double x;则下列选项中没有错误的是

A)switch(x%2) B)switch((int)x/2.0

{case 0: a++; break; {case 0: a++; break;

case 1: b++; break; case 1: b++; break;

default : a++; b++; default : a++; b++;

} }

C)switch((int)x%2) D)switch((int)(x)%2)

{case 0: a++; break; {case 0.0: a++; break;

case 1: b++; break; case 1.0: b++; break;

default : a++; b++; default : a++; b++;

} }

(20)有以下程序

#include

main()

{int a=1,b=2;

while(a<6){b+=a;a+=2;b%二10;}

printf(”%d,%d\n”,a,b);

程序运行后的输出结果是

A)5,11

B)7,1

C)7,11

D)6,1

(21)有以下程序

#include<stdio.h>

main()

{int y=10;

while(y--);

printf(”Y=%d\n”,Y);

程序执行后的输出结果是

A)y=0

B)y= -1

C)y=1

D)while构成无限循环

(22)有以下程序

#include<stdio .h>

main()

{char s[」=”rstuv";

printf(”%c\n”,*s+2);

程序运行后的输出结果是

A)tuv

B)字符t的ASCII码值

C)t

D)出错

(23)有以下程序

#include<stdio.h>

#include<string.h>

main()

{char x[]=”STRING”;

x[0」=0;x[1]=’\0’;x[2」=’0’;

printf(”%d %d\n”,sizeof(x),strlen(x));}

程序运行后的输出结果是

A)6 1

B)7 0

C)6 3

D)7 1

(24)有以下程序

#include<stdio.h>

Int f(int x);

main()

{int n=1,m;

m=f(f(f(n)));printf(”%d\n”,m);

int f(int x)

{return x*2;}

程序运行后的输出结果是

A)1

B)2

C)4

D)8

(25)以下程序段完全正确的是

A)int *p; scanf("%d",&p);

B)int *p; scanf(“%d”,p);

C)int k, *p=&k; scanf("%d",p);

D)int k, *p:; *p= &k; scanf(“%d”,p);

(26)有定义语句:int *p[4];以下选项中与此语句等价的是

A)int p[4];

B)int **p;

C)int *(p「4」);

D)int (*p)「4」;

(27)下列定义数组的语句中,正确的是

A)int N=10; B)#define N 10

int x[N]; int x[N];

C)int x[0..10]; D)int x[];

(28)若要定义一个具有5个元素的整型数组,以下错误的定义语句是A)int a[5]=﹛0﹜;

B)int b[]={0,0,0,0,0};

C)int c[2+3];

D)int i=5,d[i];

(29)有以下程序

#include<stdio.h>

void f(int *p);

main()

{int a[5]={1,2,3,4,5},*r=a;

f(r);printf(”%d\n”;*r);

void f(int *p)

{p=p+3;printf(”%d,”,*p);}

程序运行后的输出结果是

A)1,4

B)4,4

C)3,1

D)4,1

(30)有以下程序(函数fun只对下标为偶数的元素进行操作)

# include<stdio.h>

void fun(int*a;int n)

{int i、j、k、t;

for (i=0;i<n一1;1+=2)

{k=i;‘

for(j=i;ja〔k])k=j;

t=a〔i];a〔i]=a[k];a〔k]=t;

main()

{int aa「10」={1、2、3、4、5、6、7},i;

fun(aa、7);

for(i=0,i<7; i++)printf(”%d,”,aa[i]));

printf(”\n”);

程序运行后的输出结果是

A)7,2,5,4,3,6,1

B)1,6,3,4,5,2,7

C)7,6,5,4,3,2,1

D)1,7,3,5,6;2,1

(31)下列选项中,能够满足“若字符串s1等于字符串s2,则执行ST"要求的是A)if(strcmp(s2,s1)==0)ST;

B)if(sl==s2)ST;

C)if(strcpy(s l ,s2)==1)ST;

D)if(sl-s2==0)ST;

(32)以下不能将s所指字符串正确复制到t所指存储空间的是

A)while(*t=*s){t++;s++;}

B)for(i=0;t[i]=s[i];i++);

C)do{*t++=*s++;}while(*s);

D)for(i=0,j=0;t[i++]=s[j++];);

(33)有以下程序( strcat函数用以连接两个字符串)

#include<stdio.h>

#include<string .h>

main()

{char a[20]=”ABCD\OEFG\0”,b[]=”IJK”;

strcat(a,b);printf(”%s\n”,a);

程序运行后的输出结果是

A)ABCDE\OFG\OIJK

B)ABCDIJK

C)IJK

D)EFGIJK

(34)有以下程序,程序中库函数islower (ch)用以判断ch中的字母是否为小写字母

#include<stdio.h>

#include<ctype.h>

void fun(char*p)

{int i=0;

while (p[i])

{if(p[i]==’ ’&& islower(p「i-1」))p[i-1]=p[i-1]-‘a’+‘A’;

i++;

main()

{char s1[100]=”ab cd EFG!”;

fun(s1); printf(”%s\n”,s1);

程序运行后的输出结果是

A)ab cd EFG!

B)Ab Cd EFg!

C)aB cD EFG!

D)ab cd EFg!

(35)有以下程序

#include<stdio.h>

void fun(int x)

{if(x/2>1)fun(x/2);

printf(”%d”,x);

main()

{fun(7);printf(”\n”);}

程序运行后的输出结果是

A)1 3 7

B)7 3 1

C)7 3

D)3 7

(36)有以下程序

#include<stdio.h>

int fun()

{static int x=1;

x+=1;return x;

main()

{int i;s=1;

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

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

程序运行后的输出结果是

A)11

B)21

C)6

D)120

(37)有以下程序

#inctude<stdio.h>

#include<stdlib.h>

Main()

{int *a,*b,*c;

a=b=c=(int*)malloc(sizeof(int));

*a=1;*b=2,*c=3;

a=b;

printf(“%d,%d,%d\n”,*a,*b,*c);}

程序运行后的输出结果是

A)3,3,3 B)2,2,3 C)1,2,3 D)1,1,3

(38)有以下程序

#include<stdio.h>

main()

{int s,t,A=10;double B=6;

s=sizeof(A);t=sizeof(B);

printf(“%d,%d\n”,s,t);

在VC6平台上编译运行,程序运行后的输出结果是

A)2,4 B)4,4 C)4,8 D)10,6

(39)若有以下语句

Typedef struct S

{int g; char h;}T;

以下叙述中正确的是

A)可用S定义结构体变量

B)可用T定义结构体变量

C)S是struct类型的变量

D)T是struct S类型的变量

(40)有以下程序

#include<stdio.h>

main()

{short c=124;

c=c_______;

printf(“%d\n”、C);

若要使程序的运行结果为248,应在下划线处填入的是

A)>>2 B)|248 C)&0248 D)<

二、填空题(每空2分,共30分)

请将每空的正确答案写在答题卡【1】至【15】序号的横线上,答在试卷上不得分。

(1)一个栈的初始状态为空。首先将元素5,4,3,2,1依次入栈,然后退栈一次,再将元素 A,B,C,D依次入栈,之后将所有元素全部退栈,则所有元素退栈(包括中间退栈的元素)的顺序为【1】

(2)在长度为n的线性表中,寻找最大项至少需要比较【2】次。

(3)一棵二叉树有10个度为1的结点,7个度为2的结点,则该二叉树共有【3】个结点。

(4)仅由顺序、选择(分支)和重复(循环)结构构成的程序是【4】程序。

(5)数据库设计的四个阶段是:需求分析,概念设计,逻辑设计【5】。

(6)以下程序运行后的输出结果是【6】。

#include<stdio.h>

main()

{int a=200,b=010;

printf(”%d%d\n”,a,b);

(7)有以下程序

#include<stdio.h>

main()

{int x,Y;

scanf(”%2d%ld”,&x,&y);printf(”%d\n”,x+y);

程序运行时输入:1234567程序的运行结果是【7】。

(8)在C语言中,当表达式值为0时表示逻辑值“假”,当表达式值为【8】时表示逻辑值“真”。

(9)有以下程序

#include<stdio.h>

main()

{int i,n[]={0,0,0,0,0};

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

{n[i]=n[i-1]*3+1; printf(”%d ",n[i]);}

}

程序运行后的输出结果是【9】。

(10)以下fun函数的功能是:找出具有N个元素的一维数组中的最小值,并作为函数值返回。请填空。(设N已定义)

int fun(int x[N])

{int i,k=0;

for(i=0;i

if(x[i]

return x[k];

}

(11)有以下程序

#include<stdio.h>

int*f(int *p,int*q);

main()

{int m=1,n=2,*r=&m;

r=f(r,&n);printf(”%d\n”,*r);

int*f(int *p,int*q)

{return(*p>*q)?p:q;}

程序运行后的输出结果是【11】

(12)以下fun函数的功能是在N行M列的整形二维数组中,选出一个最大值作为函数值返回,请填空。(设M,. N已定义)

int fun(int a[N][M))

{int i,j,row=0,col=0;

for(i=0;i

for(j=0;j

if(a[i][j]>a[row][col]){row=i;col=j;}

return(【12】):

}

(13)有以下程序

#include<stdio.h>

main()

{int n[2],i,j;

for(i=0;i<2;i++)n[i]=0;

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

for(j=0;j<2;j++)n[j]=n[i]A+1;

printf(”%d\n”,n[1]);

程序运行后的输出结果是【13】

(14)以下程序的功能是:借助指针变量找出数组元素中最大值所在的位置并输出该最大值。请在输出语句中填写代表最大值的输出项。

#include<stdio.h>

main()

{int a〔10],*p,*s;

for(p=a;p-a<10;p++)scanf(”%d”,p);

for(p=a,s=a;p-a<10;p++)if(*p>*s)S=P;

printf("max=%d\n”,【14】);

(15)以下程序打开新文件f.txt,并调用字符输出函数将a数组中的字符写入其中,请填空。

#include<stdio.h>

main()

{【15】*fp;

char a[5]={’1’,’2’,’3’,’4’,’5’},i;

fp=fopen(”f .txt”,”w”);

for(i=0;i<5;i++)fputc(a[i],fp);

fclose(fp);

答案:

一、选择题

(1) B (2) C (3) D (4) A (5) A (6) D (7) D (8) C (9) C (10) A (11) C (12) D (13) B (14) A (15) C (16) D (17) A (18) A (19) C (20) B (21) B (22) C (23) B (24) D (25) C (26) C (27) B (28) D (29) D (30) A (30) A (32) C (33) B (34) C (35) D

(36) B (37) A (38) C (39) B (40) D

二、填空题

1: 1DCAB2345

2: n-1

3: 25

4: 结构化

5: 物理设计

6: 2008

7: 15

8: 非0

9: 1 4 13 40

10: i

11: 2

12: a[row][col]

13: 3

14: *s

15: FILE

历年二级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,程序运行后的输出结果是

2018计算机二级C语言考试真题汇总

模拟卷 1 1[ 填空题] 下列给定程序中,函数 fun 的功能是:在形参 S 所指字符串中寻找与参数 C相同的字符,并在其后插入一个与之相同的字符,若找不到相同的字符则不做任何处理。 例如,若 s 所指字符串为“ baacda”, c 中的字符为 a,执行后 S 所指字符串为“ baaaacdaa ”。 请在程序的下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。 注意:部分源程序给出如下。 不得增行或删行,也不得更改程序的结构! 试题程序:

参考解析: 【参考答案】 【解题思路】 填空 1:for语句循环条件是判断是否到达字符串结尾,即当前字符是否为‘\0 ’。 填空 2:while语句用以确定字符串的长度,所以变量n 赋初值为 0。 填空 3:题目要求如果找到与参数 c 相同的字符,就在后面插入一个相同的字符,且找到后应该给 数组元素赋值,本题目给出参数为 c。 二、程序修改题 2[ 简答题] 下列给定程序中函数 fun 的功能是:逐个比较 p、q 所指两个字符串对应位置上的字符,并把 ASCII 值大或相等的字符依次存放到 c 所指的数组中,形成一个新的字符串。 例如,若主函数中 a 字符串为“aBCDeFgH”,b 字符串为 "Abcd" ,则 c 中的字符串应为“aBcdeFgH”。 请改正程序中的错误,使它能得出正确的结果。

注意:部分源程序在文件MODl1.C中,不得增行或删行,也不得更改程序的结构! 参考解析: 【参考答案】(1)int k=0; (2)while(*p||*q) 【考点分析】 本题考查:变量初始化,需根据题意确定变量含义,然后对其进行初始化操作;while循环语句。 【解题思路】 (1) 变量 k 存放数组 e 的下标,因此应初始化为0。 (2)while循环语句的循环条件是判断两个字符串是否到达结尾。 三.程序设计题 3[ 简答题]

全国计算机等级考试二级C语言真题

2009年3月二级C语言笔试真题((1)—(10)每小题2分,(11)—(50)每题1分,共60分) 下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。 (1)下列叙述中正确的是 A)栈是“先进先出”的线性表 B)队列是“先进先出”的线性表 C)循环队列是非线性结构 D)有序性表既可以采用顺序存储结构,也可以采用链式存储结构 (2)支持子程序调用的数据结构是 A)栈B)树C)队列D)二叉树 (3)某二叉树有5个度为2的结点,则该二叉树中的叶子结点数是 A)10B)8C)6D)4 (4)下列排序方法中,最坏情况下比较次数最少的是 A)冒泡排序 B)简单选择排序 C)直接插入排序 D)堆排序 (5)软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软件的是 A)编译软件 B)操作系统 C)教务管理系统 D)汇编程序 (6)下面叙述中错误的是 A)软件测试的目的是发现错误并改正错误 B)对被调试的程序进行“错误定位”是程序调试的必要步骤 C)程序调试通常也称为Debug D)软件测试应严格执行测试计划,排除测试的随意性 (7)耦合性和内聚性是对模块独立性度量的两个标准。下列叙述中正确的是 A)提高耦合性降低内聚性有利于提高模块的独立性 B)降低耦合性提高内聚性有利于提高模块的独立性

C)耦合性是指一个模块内部各个元素间彼此结合的紧密程度D)内聚性是指模块间互相连接的紧密程度 (8)数据库应用系统中的核心问题是 A)数据库设计 B)数据库系统设计 C)数据库维护 D)数据库管理员培训 (9)有两个关系R,S如下: 由关系R通过运算得到关系S,则所使用的运算为 A)选择B)投影C)插入D)连接 (10)将E-R图转换为关系模式时,实体和联系都可以表示为A)属性B)键C)关系D)域 (11)以下选项中合法的标识符是 A)1-1B)1—1C)-11D)1-- (12)若函数中有定义语句:intk;,则 A)系统将自动给k赋初值0 B)这时k中值无定义 C)系统将自动给k赋初值-1 D)这时k中无任何值 (13)以下选项中,能用作数据常量的是 A)o115B)0118C))115L (14)设有定义:intx=2;,以下表达式中,值不为6的是A)x*=x+1 B)x++,2*x C)x*=(1+x)

计算机二级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语言二级考点(完整版) 第一章…… C语言基础知识 第二章……顺序结构 第三章……选择结构 第四章. ……循环结构 第五章……函数 第六章……指针 第七章……数组与指针 第八章……数组与函数 第九章……字符串 第十章……结构体与共用体 第十一章……文件 第一章C语言基础知识 考点1. C语言程序的结构认识 本节通过一个简单的c程序例子,介绍c语言的基本构成、格式、以及良好的书写风格,使读者对c语言有个初步认识。 例1 计算两个整数之和的c程序: #include main() { int a,b,sum; /*定义变量a,b,sum为整型变量*/ a=20; /*把整数20赋值给整型变量a*/ b=15; /*把整数15赋值给整型变量b*/ sum=a+b; /*把两个数之和赋值给整型变量sum*/ printf("a=%d,b=%d,sum=%d\n",a,b,sum); /*把计算结果输出到显示屏上*/ } 重点说明: 1、任何一个c语言程序都必须包括以下格式: main() { } 这是c语言的基本结构,任何一个程序都必须包含这个机构。括号内可以不写任何内容,那么该程序将不执行任何结果。 2、main()----在c语言中称之为“主函数”,一个c程序有且仅有一个main函数,任何一个c程序总是从main函数开始执行,main函数后面的一对圆括号不能省略。 3、被大括号{ }括起来的内容称为main函数的函数体,这部分内容就是计算机要执行的内容。 4、在{ }里面每一句话后面都有一个分号(;),在c语言中,我们把以一个分号结尾的一句话叫做一个c语言的语句,分号是语句结束的标志。 5、printf(“a=%d,b=%d,sum=%d\n”,a,b,sum); ----通过执行这条c语言系统提供给我们直接使用的屏幕输出函数,用户即可看到运行结果,本程序运行后,将在显示器上显示如下结果: a=20,b=15,sum=35 6、#include 注意:(1)以#号开头(2)不以分号结尾

二级C语言考试大纲+笔试冲刺资料

C 语言最重要的知识点复习资料 笔试注意事项 1、笔试满分100分,共两大题,选择70分40小题,填空30分15小题。C语言占70分,公共基础占30分。选择题的前10题和填空题的前5题考公共基础知识,其他考知识。C语言笔试时间为2011年3月26日上午9:00-10:30。 2、选择用铅笔涂答题卡,填空用黑色签字笔在答题上写。 3、考前准备好身份证、准考证、2B铅笔、橡皮、黑色签字笔、手表等。 第一章C语言基本知识 【考点1】C程序 C语言程序结构有三种: 顺序结构, 循环结构(三个循环结构), 选择结构(if 和switch) 【考点2】main函数 每个 C 语言程序中main 函数是有且只有一个。读程序都要从main()入口, 然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择)。 【考点3】存储形式 计算机的数据在电脑中是以二进制的形式保存。最低的存储单元是bit(位),位是由为0 或者1构成。byte 是指字节, 一个字节= 八个位。数据存放的位置就是它的地址。 【考点4】注释 是对程序的说明,可出现在程序中任意合适的地方,注释从“/*”开始到最近一个“*/”结束,其间任何内容都不会被计算机执行,注释不可以嵌套。 【考点5】书写格式 每条语句的后面必须有一个分号,分号是语句的一部分。一行内可写多条语句,一个语句可写在多行上。 【考点6】标识符 合法的用户标识符考查: 合法的要求是由字母,数字,下划线组成。有其它元素就错了。 并且第一个必须为字母或则是下划线。第一个为数字就错了。 C语言标识符分如下3类 (1)关键字。它们在程序中有固定的含义,不能另作他用。如int、for、switch等。 (2)预定义标识符。预先定义并具有特定含义的标识符。如define、include等。 (3)用户标识符。用户根据需要定义的标识符,符合命名规则且不与关键字相同。 关键字不可以作为用户标识符号。main define scanf printf 都不是关键字。迷惑你的地方If 是可以做为用户标识符。因为If 中的第一个字母大写了,所以不是关键字。 【考点7】实型数据 实型数据的合法形式:小数形式和指数形式。掌握判定指数形式合法性。

二级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语言知识点 总体上必须清楚的: 1)程序结构是三种: 顺序结构、选择结构(分支结构)、循环结构。 2)读程序都要从main()入口, 然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择),有且只有一个main函数。 3)计算机的数据在电脑中保存是以二进制的形式. 数据存放的位置就是他的地址. 4)bit是位是指为0 或者1。byte 是指字节, 一个字节= 八个位. 概念常考到的: 1、编译预处理不是C语言的一部分,不占运行时间,不要加分号。C语言编译的程序称为源程序,它以ASCII数值存放在文本文件中。 2、define PI 3.1415926; 这个写法是错误的,一定不能出现分号。 3、每个C语言程序中main函数是有且只有一个。 4、在函数中不可以再定义函数。 5、算法:可以没有输入,但是一定要有输出。 6、break可用于循环结构和switch语句。 7、逗号运算符的级别最低,赋值的级别倒数第二。 第一章C语言的基础知识 第一节、对C语言的基础认识 1、C语言编写的程序称为源程序,又称为编译单位。 2、C语言书写格式是自由的,每行可以写多个语句,可以写多行。 3、一个C语言程序有且只有一个main函数,是程序运行的起点。 第二节、熟悉vc++ 1、VC是软件,用来运行写的C语言程序。 2、每个C语言程序写完后,都是先编译,后链接,最后运行。(.c---à.obj---à.exe)这个过程中注意.c和.obj文件时无法运行的,只有.exe文件才可以运行。(常考!) 第三节、标识符 1、标识符(必考内容): 合法的要求是由字母,数字,下划线组成。有其它元素就错了。 并且第一个必须为字母或则是下划线。第一个为数字就错了 2、标识符分为关键字、预定义标识符、用户标识符。

新版计算机二级C语言测试题及答案解析

计算机二级C语言测试题及答案解析计算机二级C语言测试题及答案解析 C语言的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,下面给大家整理了计算机二级C语言测试题及答案,欢迎阅读! 计算机二级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 )。 A、-a1 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 D、123 选项A中的“%” ,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2)

计算机二级C语言考试内容

计算机二级 公共基础知识 基本要求 1.掌握算法的基本概念。 2.掌握基本数据结构及其操作。 3.掌握基本排序和查找算法。 4.掌握逐步求精的结构化程序设计方法。 5.掌握软件工程的基本方法,具有初步应用相关技术进行软件开发的能力。 6.掌握数据库的基本知识,了解关系数据库的设计。 考试内容 一、基本数据结构与算法 1.算法的基本概念;算法复杂度的概念和意义(时间复杂度与空间复杂度)。 2.数据结构的定义;数据的逻辑结构与存储结构;数据结构的图形表示;线性结构与非线性结构的概念。 3.线性表的定义;线性表的顺序存储结构及其插入与删除运算。 4.栈和队列的定义;栈和队列的顺序存储结构及其基本运算。 5.线性单链表、双向链表与循环链表的结构及其基本运算。 6.树的基本概念;二叉树的定义及其存储结构;二叉树的前序、中序和后序遍历。

7.顺序查找与二分法查找算法;基本排序算法(交换类排序,选择类排序,插入类排序)。 二、程序设计基础 1.程序设计方法与风格 2.结构化程序设计。 3.面向对象的程序设计方法,对象,方法,属性及继承与多态性。 三、软件工程基础 1.软件工程基本概念,软件生命周期概念,软件工具与软件开发环境。 2.结构化分析方法,数据流图,数据字典,软件需求规格说明书。 3.结构化设计方法,总体设计与详细设计。 4.软件测试的方法,白盒测试与黑盒测试,测试用例设计,软件测试的实施,单元测试、集成测试和系统测试。 5.程序的调试,静态调试与动态调试。 四、数据库设计基础 1.数据库的基本概念:数据库,数据库管理系统,数据库系统。 2.数据模型,实体联系模型及E―R图,从E―R图导出关系数据模型。 3.关系代数运算,包括集合运算及选择、投影、连接运算,数据库规范化理论。

全国计算机等级考试 历年真题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语言知识点总结

计算机二年级考试C语言 知识点总结 Newly compiled on November 23, 2020

计算机二级考试C语言知识点总结 (完全针对考试大纲) 概述 总体上必须清楚的: 1)程序结构是三种: 顺序结构 , 循环结构(三个循环结构), 选择结构(if 和 switch) 2)读程序都要从main()入口, 然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择)。 3)计算机的数据在电脑中保存是以二进制的形式. 数据存放的位置就是他的地址. 4)bit是位是指为0 或者1。 byte 是指字节, 一个字节 = 八个位. 5)一定要记住二进制如何划成十进制。 概念常考到的: 1)、编译预处理不是C语言的一部分,不再运行时间。C语言编译的程序称为源程序,它以ASCII数值存放在文本文件中。 2)、每个C语言程序中main函数是有且只有一个。 3)、在函数中不可以再定义函数。 4)、算法的是一定要有输出的,他可以没有输入。 5)、break可用于循环结构和switch语句。 6)、逗号运算符的级别最低。 第一章 1)合法的用户标识符考查: 合法的要求是由字母,数字,下划线组成。有其它元素就错了。

并且第一个必须为字母或则是下划线。第一个为数字就错了。 关键字不可以作为用户标识符号。main define scanf printf 都不是关键字。迷惑你的地方If是可以做为用户标识符。因为If中的第一个字母大写了,所以不是关键字。 2)实型数据的合法形式: 就是合法的,且数据是×10-1。 考试口诀:e前e后必有数,e后必为整数。. 3)字符数据的合法形式:: '1' 是字符占一个字节,"1"是字符串占两个字节(含有一个结束符号)。 '0' 的ASCII数值表示为48,'a' 的ASCII数值是97,'A'的ASCII数值是65。 4)整型一般是两个字节, 字符型是一个字节,双精度一般是4个字节:考试时候一般会说,在16位编译系统,或者是32位系统。碰到这种情况,不要去管,一样做题。掌握整型一般是两个字节, 字符型是一个字节,双精度一般是4个字节就可以了。 5)转义字符的考查: 在程序中 int a = 0x6d,是把一个十六进制的数给变量a 注意这里的0x必须存在。 在程序中 int a = 06d, 是一个八进制的形式。 在转义字符中,’\x6d’才是合法的,0不能写,并且x是小写。 ‘\141’是合法的。 ‘\108’是非法的,因为不可以出现8。 转义字符意义 ASCII码值(十进制) \a 响铃(BEL) 007 \b 退格(BS) 008

历年全国计算机二级C语言试题库完整

. . . . 参考 50道C 语言知识题 1.以下叙述中正确的是 A)用C 程序实现的算法必须要有输入和输出操作 B)用C 程序实现的算法可以没有输出但必须要有输入 C)用C 程序实现的算法可以没有输入但必须要有输出 D)用C 程序实现的算法可以既没有输入也没有输出 2.下列可用于C 语言用户标识符的一组是 A)void,define,WORDB)a3_3,_123,Car C)For,-abc,IFCaseD)2a,DO,sizeof 3.以下选项中可作为C 语言合法常量的是 A)-80B)-080C)-8e1.0D)-80.0e 4.若有语句:char*line[5];,以下叙述中正确的是 A)定义line 是一个数组,每个数组元素是一个基类型为char 为指针变量 B)定义line 是一个指针变量,该变量可以指向一个长度为5的字符型数组 C)定义line 是一个指针数组,语句中的*号称为间址运算符 D)定义line 是一个指向字符型函数的指针 5.以下定义语句中正确的是 A)inta=b=0;B)charA=65+1,b=′b′; 6.有以下程序段 charch;intk; ch=′a′; k=12; printf("%c,%d,",ch,ch,k);printf("k=%d\n",k); 已知字符a 的ASCII 码值为97,则执行上述程序段后输出结果是 A)因变量类型与格式描述符的类型不匹配输出无定值 B)输出项与格式描述符个数不符,输出为零值或不定值 C)a,97,12k=12 D)a,97,k=12 7.有以下程序 main() {inti,s=1; for(i=1;i<50;i++) if(!(i%5)&&!(i%3))s+=i; printf("%d\n",s);} 程序的输出结果是 A)409B)277C)1D)91 8.当变量c 的值不为2、4、6时,值也为"真"的表达式是 A)(c==2)||(c==4)||(c==6) B)(c>=2&&c<=6)||(c!=3)||(c!=5) C)(c>=2&&c<=6)&&!(c%2) D)(c>=2&&c<=6)&&(c%2!=1) 9.若变量已正确定义,有以下程序段

计算机二级C语言的考试大纲

计算机二级C语言的考试大纲 公共基础知识 基本要求 1. 掌握算法的基本概念。 2. 掌握基本数据结构及其操作。 3. 掌握基本排序和查找算法。 4. 掌握逐步求精的结构化程序设计方法。 5. 掌握软件工程的基本方法,具有初步应用相关技术进行软件开发的能力。 6. 掌握数据的基本知识,了解关系数据库的设计。 考试内容 一、基本数据结构与算法 1. 算法的基本概念;算法复杂度的概念和意义(时间复杂度与空间复杂度)。 2. 数据结构的定义;数据的逻辑结构与存储结构;数据结构的图形表示;线性结构与非线性结构的概念。 3. 线性表的定义;线性表的顺序存储结构及其插入与删除运算。 4. 栈和队列的定义;栈和队列的顺序存储结构及其基本运算。 5. 线性单链表、双向链表与循环链表的结构及其基本运算。 6. 树的基本概念;二叉树的定义及其存储结构;二叉树的前序、中序和后序遍历。(前序、中序和后序遍历有考到,每年都有) 7. 顺序查找与二分法查找算法;基本排序算法(交换类排序,选择类排序,插入类排序)。 二、程序设计基础 1. 程序设计方法与风格。 2. 结构化程序设计。 3. 面向对象的程序设计方法,对象,方法,属性及继承与多态性。 三、软件工程基础 1. 软件工程基本概念,软件生命周戎概念,软件工具与软件开发环境。 2. 结构化分析方法,数据流图,数据字典,软件需求规格说明书。 3. 结构化设计方法,总体设计与详细设计。 4. 软件测试的方法,白盒测试与黑盒测试,测试用例设计,软件测试的实施,单元测试、集成测试和系统测试。 5. 程序的调试,静态调试与动态调试。 四、数据库设计基础 1. 数据库的基本概念:数据库,数据库管理系统,数据库系统。 2. 数据模型,实体联系模型及E-R图,从E-R图导出关系数据模型。 3. 关系代数运算,包括集合运算及选择、投影、连接运算,数据库规范化理论。 4. 数据库设计方法和步骤:需求分析、概念设计、逻辑设计和物理设计的相关策略。 考试方式 1、公共基础的考试方式为笔试,与C语言(VisualBASIC、Visual FoxPro、Java、Access、Visual C++)的笔试部分合为一张试卷。公共基础部分占全卷的30分。 2、公共基础知识有10道选择题和5道填空题。 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%

2020年全国计算机二级C语言考试必考重点知识总结

2020年全国计算机二级C语言考试必考重 点知识总结 C语言知识点总结 (1) 一、常量 (3) 二、标识符 (4) 三、变量 (4) 四、表达式 (5) 五、输入输出函数 (8) 六、C语言的语句 (9) 七、C程序的基本结构 (10) 八、选择结构语句 (10) ?if(表达式) 语句1 else 语句2 (10) ?条件运算符表达式1? 表达式2 : 表达式3 (11) ?switch语句 (11) 九、循环结构 (12) ?for循环语句 (12) ?while循环语句do while循环语句 (13) 十、数组 (13) 十一、字符串函数 15 十二、函数

16 十三、指针 18 十四、宏定义 20 十五、结构体,共用体,枚举类型 21 十六、Turbo C的使用错误!未定义书签。

一、常量 ?数字常量 i.普通数字:1,35,2.7 ii.指数形式:2.45e-2等价于2.45*10-2注意e大小写皆可,e 前面的数字不能省,就算是1也不能省,后面的数字一定要 是整数 iii.长整型,单精度浮点型:3235L,32.5F 分别表示3235是长整型数据,32.5是单精度浮点型左,若不写上L,F则表示 3235是整型,32.5是双精度浮点型,L,F大小写皆可 ?字符常量 i.普通字符常量:用单引号把一个字符括起来,如’A’,’@’ ii.转义字符常量:一对单引号括起来并以“\”开头的字符序列,如’\n’(回车)、’\123’(8进制123对应的字符), ’\x23’(16进制 23对应的字符) ?字符串常量 用一对双引号把一个字符序列括起来,如“ABCef”,系统存 放字符串常量,每个字符分配一个字节,各字符所占字节紧邻,并且字符串末尾会给再开一个字节里面放一个’\0’做为结束标 志。 ?符号常量 定义格式#define 符号常量名符号常量值,如#define N 20 则定义了符号常量N,其值为20,注意符号常量名和符号常

全国计算机等级考试二级C语言真题2013年3月

全国计算机等级考试二级C语言真题2013年3月 (总分40, 做题时间90分钟) 一、选择题 1. 程序流程图中带有箭头的线段表示的是______。 A 图元关系 B 数据流 C 控制流 D 调用关系 答案:C [解析] 在数据流图中,用标有名字的箭头表示数据流。在程序流程图中,用标有名字的箭头表示控制流。所以选择C。 2. 结构化程序设计的基本原则不包括______。 A 多态性 B 自顶向下 C 模块化 D 逐步求精 答案:A [解析] 结构化程序设计的思想包括:自顶向下、逐步求精、模块化、限制使用goto语句,所以选择A。 3. 软件设计中模块划分应遵循的准则是______。 A 低内聚低耦合 B 高内聚低耦合

C 低内聚高耦合 D 高内聚高耦合 答案:B [解析] 软件设计中模块划分应遵循的准则是高内聚低偶合、模块大小规模适当、模块的依赖关系适当等。模块的划分应遵循一定的要求,以保证模块划分合理,并进一步保证以此为依据开发出的软件系统可靠性强,易于理解和维护。模块之间的耦合应尽可能的低,模块的内聚度应尽可能的高。 4. 在软件开发中,需求分析阶段产生的主要文档是______。 A 可行性分析报告 B 软件需求规格说明书 C 概要设计说明书 D 集成测试计划 答案:B [解析] A错误,可行性分析阶段产生可行性分析报告。C错误,概要设计说明书是总体设计阶段产生的文档。D错误,集成测试计划是在概要设计阶段编写的文档。B正确,需求规格说明书是后续工作如设计、编码等需要的重要参考文档。 5. 算法的有穷性是指______。 A 算法程序的运行时间是有限的 B 算法程序所处理的数据量是有限的 C 算法程序的长度是有限的 D 算法只能被有限的用户使用

上海市高等学校计算机等级考试(二级)考试大纲

上海市高等学校计算机等级考试(二级)《C程序设计》考试大纲 (2010年修订) 一、考试性质 上海市高等学校计算机等级考试是上海市教育委员会组织的全市高校统一的教学考试,是检测和评价高校计算机应用基础知识教学水平和教学质量的重要依据之一。该项考试旨在规范和加强上海高校非计算机专业的计算机教学工作,提高非计算机专业学生的计算机应用能力。考试对象主要是上海高等学校非计算机专业学生,考试每年举行一次,当年的十月下旬、十一月上旬的星期六或星期日。凡考试成绩达到合格者或优秀者,由上海市教育委员会颁发相应的证书。 本考试由上海市教育委员会统一领导,聘请有关专家组成考试委员会,委托上海市教育考试院组织实施。 二、考试目标 C语言是当前常用的一种简洁、高效、功能丰富的程序设计语言,是理工科大学生学习计算机编程能力、理解计算机解决问题的方法的重要工具。学生通过该课程的学习,应能了解、掌握C语言的语法和使用它进行编程的方法,并能上机调试运行解决简单实际问题。 《C程序设计》的考试目标是测试考生掌握C语言知识的程度和综合运用语言知识进行程序设计的能力。 三、考试细则 考试采用基于网络环境的无纸化上机考试系统。考试时间为120分钟。试卷总分为100分。 试题由四部分组成:单选题、程序调试题、程序填空题和综合编程题。试卷从局域网的服务器下载、考试结果上传到服务器,若不按照要求上传到服务器,则考试无效。考试阅卷采用机器和人工相结合的网上阅卷方式。 四、试卷参考样式

五、考试内容和要求

六、几点说明 (一)建议学时数 48-64学时,其中16-32学时为实验课 (二)建议考试对象 理、工、农、医专业类非计算机专业本科生 (三)建议计算机配置 计算机硬件基本要求: 中央处理器Pentium III 550MGHz以上 内存 128MB以上 硬盘 20GB以上 计算机软件基本要求: 操作系统Windows 2000及以上 编程环境中文Microsoft Visual C++ 6.0 (四)考试环境 安装并使用“上海市高校计算机等级考试通用平台”进行考试。

计算机二级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函数才可单独进行编译

相关主题
文本预览
相关文档 最新文档