二级C(1003)

二级C(1003)
二级C(1003)

绝密★启用前

2010年3月全国计算机等级考试二级笔试试卷

一、选择题((1)—(10)、(21)—(40)每题2分,(11)—(20)每题1分。共70分)

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

(1) 下列叙述中正确的是

A)对长度为n的有序链表进行查找,最坏情况下需要的比较次数为n

B)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n/2)

log n)

C)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(2

log n)

D) 对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n2

(2) 算法的时间复杂度是指

A)算法的执行时间B)算法所处理的数据量

C)算法程序中的语句或指令条数D)算法在执行过程中所需要的基本运算次数

(3) 软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。下面属于系统软件

的是

A)编辑软件B)操作系统C)教务管理系统D)浏览器

(4) 软件(程序)调试的任务是

A)诊断和改正程序中的错误B)尽可能多地发现程序中的错误

C)发现并改正程序中的所有错误D)确定程序中错误的性质

(5) 数据流程图(DFD图)是

A)软件概要设计的工具B)软件详细设计的工具

C)结构化方法的需求分析工具D)面向对象方法的需求分析工具

(6) 软件生命周期可分为定义阶段,开发阶段和维护阶段。详细设计属于

A)定义阶段B)开发阶段C)维护阶段D)上述三个阶段

(7) 数据库管理系统中负责数据模式定义的语言是

A)数据定义语言B)数据管理语言 C)数据操纵语言D)数据控制语言

(8) 在学生管理的关系数据库中,存取一个学生信息的数据单位是

A)文件B)数据库C)字段D)记录

(9) 数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库设计的

A)需求分析阶段B)逻辑设计阶段

C)概念设计阶段D)物理设计阶段

(10) 有两个关系R和T如下:

R T

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

选择B)投影C)交D)并

(11) 以下叙述正确的是

A)C语言程序是由过程和函数组成的

B)C语言函数可以嵌套调用,例如:fun(fun(x))

C)C语言函数不可以单独编译

D)C语言中除了main函数,其他函数不可以作为单独文件形式存在

(12) 以下关于C语言的叙述中正确的是

A)C语言中的注释不可以夹在变量名或关键字的中间

B)C语言中的变量可以再使用之前的任何位置进行定义

C)在C语言算术的书写中,运算符两侧的运算数类型必须一致

D)C语言的数值常量中夹带空格不影响常量值的正确表示

(13) 以下C语言用户标示符中,不合法的是

A)_1 B)AaBc C)a_b D)a--b

(14) 若有定义:double a=22;int i=0,k=18;则不符合C语言规定的赋值语句是

A)a=a++,i++ B)i=(a+k)<=(i+k) C)i=a%11 D)i=!a

(15)

#include

main()

{

char a,b,c,d;

scanf("%c%c",&a,&b);

c=getchar(); d=getchar();

printf("%c%c%c%c\n",a,b,c,d);

}

当执行程序时,按下列方式输入数据(从第一列开始,代表回车,注意:回车是一个字符)12

34

则输出结果是:

A、1234

B、12

C、12

D、12

3 34

6、以下关于C语言数据类型使用的叙述中错误的是:

A、若要准确无误的表示自然数,应使用整数类型。

B、若要保存带有多位小数的数据,应使用双精度类型。

C、若要处理如"人员信息"等含有不同类型的相关数据,应自定义结构体类型。

D、若只处理"真"和"假"两种逻辑值,应使用逻辑类型。

17、若a是数值类型,则逻辑表达式(a==1)||(a!=1)的值是:

A、1

B、0

C、2

D、不知道a的值,不能确定

18、以下选项中与if(a==1) a=b;else a++;语句功能不同的switch语句是:

A、switch(a)

B、switch(a==1)

{ case 1:a=b;break; { case 0 : a=b;break;

default : a++; case 1 : a++;

} }

C、switch(a)

D、switch(a==1)

{ default : a++;break; { case 1:a=b;break;

case 1:a=b; case 0: a++;

} }

19、有如下嵌套的if语句

if(a

if(a

else k=c;

else

if(b

else k=c;

以下选项中与上述if语句等价的语句是

k=(a

k=(a

k=(a

k=(a

(20)有以下程序

#include

main()

{ int i,j,m=1;

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

{ for(j=3;j>0;j--)

{ if(i*j>3) break;

m*=i*j;

}

}

printf("m=%d\n",m)

}

程序运行后的输出结果是

(A) m=6 (B)m=2 (C)m=4 (D)m=5

(21)有以下程序

#includes

main()

{ int a=1,b=2;

for(;a<8;a++) {b+=a; a+=2;}

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

}

程序运行后的输出结果是

(A)9,18 (B)8,11 (C)7,11 (D)10,14 (22)有以下程序,其中k的初值为八进制数

#include

main()

{int k=011;

printf("%d\n",k++);

}

程序运行后的输出结果是

(A)12 (B)11 (C)10 (D)9 (23)下列语句中,正确的是

A) char *s ; s="Olympic"; B) char s[7] ; s="Olympic";

C) char *s ; s={"Olympic"}; D) char s[7] ; s={"Olympic"};

(24)以下关于return语句的叙述中正确的是

A)一个自定义函数中必须有一条return语句

B) 一个自定义函数中可以根据不同情况设置多条return语句

C)定义成viod类型的函数中可以有带返回值的return语句

D)没有return语句的自定义函数在执行结束时不能返回到调用处(25)下列选项中,能够正确定义数组的语句是

A)int num[0..2008]; B) int num[];

C) int N=2008; D) #define N 2008

int num[N]; int num[N]

(26)有以下程序

#include

void fun (char*c,int d)

{*c=*c+1;d=d+1;

printf("%c,%c,",*c,d);

}

main()

{char b=’a’,a=’A’;

fun(&b,a); printf("%c,%c\n",b,a);

}

程序运行后的输出结果是

A)b,B,b,A B)b,B,B,A C)a,B,B,a D)a,B,a,B

(27)若有定义int(*pt)[3];,则下列说法正确的是

A)定义了基类型为int的三个指针变量

B)定义了基类型为int的具有三个元素的指针数组pt。

C)定义了一个名为*pt、具有三个元素的整型数组

D)定义了一个名为pt的指针变量,它可以指向每行有三个整数元素的二维数组(28)设有定义double a[10],*s=a;,一下能够代表数组元素a[3]的是

A)(*s)[3] B)*(s+3) C)*s[3] D)*s+3

(29)有以下程序

#include

main()

{ int a[5]={1,2,3,4,5}, b[5]={0,2,1,3,0},is=0

for(i=0;i<5;i++) s=s+a[b[i]];

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

}

程序运行后的输出结果是

A) 6 B) 10 C) 11 D)15

30)有以下程序

#include

main()

{ int b[3] [3]={0,1,2,0,1,2,0,1,2},i,j,t=1;

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

For(j=i;j<=i;j++) t+=b[i][b[j][i]];

Printf("%d\n",t);

}

程序运行后的输出结果是

A)1 B)3 C)4 D)9

(31)若有以下定义和语句

char sl[10]= "abcd!", *s2="n123\\";

printf("%d %d\n", strlen(s1),strlen(s2));

则输出结果是

A) 5 5 B)10 5 C)10 7 D)5 8

(32)有以下程序

#include

#define N 8

void fun(int *x,int i)

{*x=*(x+i);}

main()

{ int a[N]={1,2,3,4,5,6,7,8},i;

fun(a,2);

for(i=0; i

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

printf("\n");

}

程序运行后的输出结果是

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

(33)有以下程序

#include

int f(int t [ ],int n);

main()

{int a[4]={1,2,3,4},s;

s=f{a,4}; printf("%d\n",s);

}

int f(int t[], int n)

{ if (n>0) return t[n-1]+f(t,n-1);

else return 0;

}

程序运行后的输出结果是

A)4 B)10 C)14 D)6

(34)有以下程序

#include

int fun()

{static int x=1;

x*=2; return x;

}

main()

{int I,s=1;

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

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

}

程序运行后的输出结果是

A)0 B)1 C)4 D)8

(35)以下程序

#include

#define SUB(a) (a)-(a)

main()

{int a=2,b=3,c=5,d;

d=SUB(a+b)*c;

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

}

程序运行后的结果是

A)0 B)-12 C)-20 D)10

(36)没有定义

struct complex

{ int real, unreal ;} datal={1,8},data2;

则以下赋值语句中的错误的是

A)data2=data1; B)data2=(2,6);

C)data2.real1=data1.real; D)data2.real=data1.unreal; (37)有以下程序

#include

#include

struct A

{int a; char b[10];double c;};

void f(struct A t);

main()

{struct A a={1001,"ZhangDa",1098.0};

f(a); pringt("%d,%s,%6.1f\n",a.a,a.b,a.c);

}

void f(struct A t)

{t.a=1002;strcpy(t.b,"ChangRong");t.c=1202.0;} 程序运行后的输出结果是

A)1001,ZhangDa,1098.0 B)1002,ChangRong,1202.0 C)1001,ChangRong,1098.0 D)1002,ZhangDa,1202.0

(38)有以下定义和语句

struct workers

{int num; char name[20];char c;

srruct

{int day;int month;intyear;} s;

};

struct workers w,*pw;

pw=&w

能给w中year成员赋1980的语句是

A)*pw.year=1980; B)w.year=1980;

C)pw->year=1980; D)w.s.year=1980;

(39)有以下程序

#include

main()

{int a=2,b=2,c=2;

printf("%d\n",a/b&c);

}

程序运行后的结果是

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

(40)以下程序

#include

main( )

{ FILE *fp;char str[10];

fp=fopen("myfile.dat","w");

fputs("abc",fp); fclose(fp);

fp=fopen("myfile.dat","a+");

rewind(fp,"gd",28);

rewind(fp);

fscanf(fp,"gs",str); puts(str);

fclose(fp);

}

程序运行后的输出结果是

A)abc B)28c C)abc28 D)因类型不一致而出错

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

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

(1)一个队列的初始状态为空,先将元素A,CB,C,D,E,F,5,4,3,2,1依次入队,然后再依次退队,则元素退队的顺序为___【1】__。

(2)设某循环列队的容量为50,如果头指针front=45(指向队头元素的前一位置),尾指针rear=10(指向队尾元素),则该循环队列中共有___【2】__个元素。

(3)设二叉数如下:

□A

□B□C

□D□F

□E□G□H

对该二叉树进行后序遍历的结果为【3】

(4)软件是【4】、数据和文档的集合。

(5)有一个学生选课的关系,其中学生的关系模式为:学生(学号,姓名,班级,年龄),课程的关系模式为:课程(课号,课程名,学时),其中两个关系模式的键分别是学好和课号,则关系模式选课可以定义为:选课(学号,【5】,成绩)。

(6)设x为int型变量,请写出一个关系表达式【6】,用以判断x同时为3和7的倍数时,关系表达式的值为真。

(7)有以下程序

#include < stdio.h >

main()

{ int a=1,b=2,c=3,d=0;

if (a==1)

if (b!=2)

if(c!=3) d=1;

else d=2;

else if(c!=3) d=3;

else d=4;

else d=5;

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

}

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

(8)有以下程序

#include < stdio.h >

main()

{ int m,n;

scanf("%d%d",&m,&n);

while (m!=n)

{ while(m>n) m=m-n;

while(m

}

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

}

程序运行后,当输入14 63<回车>时,输出结果是【8】(9)有以下程序

#include

main ()

{ int I,j,a[][3]={1,2,3,4,5,6,7,8,9};

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

for(j=I;j<3;j++) printtf("%d",a[i][j]);

printf("\n");

}

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

(10) 有以下程序

#include

main()

{

int []={1,2,3,4,5,6},*k[3],i=0;

while(i<3)

{

k[i]=&a[2*i];

printf("%d",*k[i]);

i++;

}

}

程序运行后的输出结果是__________

(11) 有以下程序

#include

main()

{

int a[3][3]={{1,2,3},{4,5,6},{7,8,9}};

int b[3]={0},i;

for(i=0;i<3;i++) b[i]=a[i][2]+a[2][i];

for(i=0;i<3;i++) printf("%d",b[i]);

printf("\n");

}

程序运行后的结果是____________

(12) 有以下程序

#include

#include

void fun(char*str)

{

char temp; int n,i;

n=strlen(str);

temp=str[n-1];

for(i=n-1;i>0;i--) str[i]=str[i-1];

str[0]=temp;

}

main()

{

char s[50];

scanf("%s",s); fun(s); printf("%s\n",s);

}

程序运行后输入:abcdef<回车>,则输出结果是____________

13、以下程序的功能是:将值为三位正整数的变量x中的数值按照个位、十位、百位的顺序拆分并输出。请填空。

#include

main()

{

int x=256;

printf("%d-%d-%d\n", ,x/10%10,x/100);

}

14、以下程序用以删除字符串中的所有的空格,请填空。

#include

main()

{

char s[100]={"our .tercher teach c language!"};int i,j;

for( i=j=0;s[i]!=‘\0’;i++)

if(s[i]!=‘’) { s[j]=s[i];j++; }

s[j]= ;

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

}

(15)以下程序功能是:借助指针变量找出数组元素中的最大值及其元素的下标值。请填空。#include

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=_______________;

printf("index=%d\n",s-a);

}

一、选择题:

01~05 ADBAC 06~10 BADCA

11~15 BADCC 16~20 DABCA 21~25 DDABD 26~30 ADBCC

31~35 ACBCC 36~37 BADAC

二、填空题:

1、A、B、C、D、E、F、5、4、3、

2、1

2、15

3、EDBGHFCA

4、程序

5、课号

6、x%3==0&&x%7==0

7、4 8、7 9、123569

10、135

11、101418

12、fabcde

13、x%10

14、‘\0'或者填写0

15、p

2017全国计算机等级考试二级C语言知识点超全整(打印版)

全国计算机等级考试

目录 第一部分公共基础知识 第1章算法与数据结构 (1) 考点1 算法 (1) 考点2 数据结构 (1) 考点3 线性表及其顺序存储结构 (1) 考点4 栈和队列 (1) 考点5 线性链表 (2) 考点6 树与二叉树 (2) 考点7 查找技术 (3) 考点8 排序技术 (3) 第2章程序设计基础 (4) 考点1 程序设计方法与风格 (4) 考点2 结构化程序设计 (5) 考点3 面向对象的程序设计 (5) 第3章软件工程基础 (5) 考点1 软件工程基本概念 (5) 考点2 软件分析方法 (6) 考点3 结构化设计方法 (7) 考点4 软件测试 (8) 考点5 程序的调试 (9) 第4章数据库设计基础 (9) 考点1 数据库系统的基本概念 (9) 考点2 数据库系统的基本概念 (10) 考点3 关系代数 (12) 考点4 数据库设计与管理 (12) 第二部分二级C 语言 第1章程序设计基本概念 (14) 考点1 程序设计 (14) 考点2C程序的结构和格式 (14) 考点3 常量和变量 (14) 考点4 算术表达式 (15) 考点5 赋值表达式 (16) 考点6 自加、自减和逗号运算 (16) 第2章顺序结构 (17) 考点1 字符型常量与变量 (17) 考点2putchar与getchar 函数 (17) 考点3printf函数 (17) 考点4scanf函数 (18) 考点5 位运算的含义和应用 (18) 第3章选择结构 (19) 考点1 关系运算符和关系表达式 (19) 考点2 逻辑运算符和逻辑表达式 (19) 考点3 if语句及其构成的选择结构 (19) 考点4switch语句与break语句 (20) 第4章循环结构 (20) 考点1while循环结构 (20) 考点2do-while循环结构 (21) 考点3for循环结构 (21) 考点4 嵌套循环语句 (21) 第5 章函数 (21) 考点1 库函数 (21) 考点2 函数的调用 (22) 考点3 参数传递 (22) 考点4 函数的递归调用 (23) 考点5 局部、全局变量和存储分类 (23) 第6章地址与指针 (23) 考点1 变量的地址和指针 (23) 考点2 指针变量的操作 (24) 考点3 函数之间地址的传递 (24) 第7 章数组 (24) 考点1 一维数组的定义及元素的引用.. 24 考点2 函数对一维数组及元素的引用.. 25 考点3 二维数组的定义 (25) 考点4 二维数组和指针 (25) 考点5 二维数组名和指针数组作为实参 (26) 第8 章字符串 (26) 考点1 用一维字符数组存放字符串 (26) 考点2 使指针指向字符串 (26) 考点3 字符串的输入和输出 (26) 考点4 字符串数组 (27) 考点5 用于字符串处理的函数 (27) 第9章编译预处理和动态存储分配 (27) 考点1 编译预处理 (27) 考点2 宏替换 (27) 考点3 文件包含处理 (28) 考点4 动态存储分配 (28) 第10 章结构体、共用体和用户定义类型28 考点1 结构体 (28) 考点2 共用体 (29) 考点3 用户定义类型 (29) 第11 章文件 (29) 考点1 文件指针 (29) 考点2 文件的读写 (30)

2013省二级C 选择题(含部分答案)2013-5-24

第一份 1、以下叙述错误的是(B)。 A、C源程序必须包含一个main()函数。 B、语句必须在一行内写完。 C、以一对“/*”和“*/”为定界符括起来的文字为注释部分。 D、所有语句都必须以分号“;”结束。 2、整型常量三种表示形式中不含(D)。 A、十进制 B、八进制 C、十六进制 D、二进制 3、以下表达式中,(B)无法正确表示右图所示的代数式:(a+b)(a-c)/3a (a <> 0) A、(a+b)/a*(a-c)/3 B、(a+b)*(a-c)/3*a C、(a+b)*(a-c)/(3*a) D、(a+b)/(3*a)*(a-c) 4、运算符(C)不能用于非整型数据运算。 A、/ B、+ C、% D、* 5、(A)可产生(0,0.9)之间的随机数。 A、rand()%10/10.0 B、srand()%10/10.0 C、srand()*10%10 D、rand()%10/10 6、能正确表示2t>2 C、t>2 || t<10 D、t>2 && t<10 7、定义:int a=1,b=2,c ; 语句c=1.0/b*4; 执行后,变量 c的值为(2)。 8、以下程序段的运行结果是(C)。 int x=10,y; if(x>20) y=9; else if(x>10) y=6; else if(x>5) y=3; else y=1; printf(“%d\n”,y); A、9 B、6 C、3 D、1 9、以下程序段的运行后sum的值为(D。 int i,j ,sum=0; for(i=1; i<=3;i++) I=1 J=I=1 SUM=2 J=2 SUM=2+1+2=5 J=3 SUM=5+1+3=9 for(j=i; j<=3; j++) I=2 J=2 SUM=9+2+2=13 J=3 SUM=13+2+3=18 sum=sum+i+j; I=3 J=3 SUM=18+3+3=24 J=4 I=4 A、18 B、12 C、20 D、24 10、(B)语句能正确定义a为整型数组。 A、int a[n] ,n=10; B、int a[10]; C、int n=10,a[n]; D、int a(10) 11、以下程序段的运行结果是(C)。 int a[ ][4]={1,2,3,4,5,6,7,8,9,10,11,12}; printf(“%d\n”,a[0][0]-a[2][3]);

计算机c语言二级考试复习资料

第一章C语言概述 一、选择题: 1、一个C程序的执行是从( A )。 A本程序的main函数开始,到main函数结束 B本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C本程序的main函数开始,到本程序文件的最后一个函数结束 D本程序文件的第一个函数开始,到本程序main函数结束 2、在 C 语言中,每个语句必须以( D )结束。 A. 回车符 B. 冒号 C. 逗号 D. 分号 3、C 语言规定:在一个源程序中,main函数的位置( C )。 A. 必须在最开始 B. 必须在系统调用的库函数的后面 C. 可以任意 D. 必须在最后 4、一个C 语言程序是由( B )。 A. 一个主程序和若干子程序组成 B. 函数组成 C. 若干过程组成 D. 若干子程序组成 5、下列说法中错误的是( D )。

A. 主函数可以分为两个部分:主函数说明部分和主函数体 B. 主函数可以调用任何非主函数的其他函数 C. 任何非主函数可以调用其他任何非主函数 D. 程序可以从任何非主函数开始执行 6、用 C 语言编写的源文件经过编译,若没有产生编译错误,则系统将( C )。 A. 生成可执行目标文件 B. 生成目标文件 C. 输出运行结果 D. 自动保存源文件 二、填空题: 1、C 语言只有 32 个关键字和 9 种控制语句。 2、每个源程序有且只有一个 main 函数,系统总是从该函数开始执行C语言程序。 3、C 语言程序的注释可以出现在程序中的任何地方,它总是以 \* 符号作为开始标记,以 */ 符号作为结束标记。 4、C 语言中,输入操作是由库函数 scanf 完成的,输出操作是由库函 数 printf 完成的。 5、系统默认的C 语言源程序文件的扩展名是 .c ,经过编译后生成的目标文件的扩展名是 .obj ,经过连接后生成的可执行文件的扩展名是 .exe 。 6、C 语言的标识符只能由字母、数字和下划线三种字符组成。 第三章数据类型、运算符和表达式

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

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

{ int a; float b; a=4; b=9.5; printf("a=%d,b=%4.2f\n",a,b); } 程序运行结果:a=4,b=9.50 A. a=%d,b=%f\n B. a=%d,b=%f C. a=4,b=9.50 D. a=4,b=9.5 5. 若有以下说明语句: char s=’\\\092’; 则下面哪一项是正确的. A. 使s的值包含2个字符 B. 说明语句不合法 C. 使s的值包含6个字符 D. 使s的值包含4个字符 6.若k,g均为int型变量,则以下语句的输出为哪一项? int k,g; k=017; g=111; printf("%d,",k); printf("%x\n",g);

二级C语言100道经典选择题与答案

【1.1】以下不正确的C语言标识符是。 A) B) 1_2 C) 1 D) 【1.2】以下是正确的C语言标识符是。 A) B) _123 C) D) \n 【1.3】下列四组字符串中都可以用作C语言程序标识符的一组是。 A) B) i\C) D) _3d> ??? $ ??? 3 【1.4】下面各选项组中,均是C语言关键字的组是。 A) ,, B) ,, C) ,, D) ,, 【1.5】下列不属于C语言关键字的是。 A) B) C) D) 【1.6】C语言程序从()函数开始执行,所以这个函数要写在。 A) 程序文件的开始 B) 程序文件的最后 C) 它所调用的函数的前面 D) 程序文件的任何位置 【1.7】下列关于C语言的叙述错误的是 A) 大写字母和小写字母的意义相同 B) 不同类型的变量可以在一个表达式中

C) 在赋值表达式中等号(=)左边的变量和右边的值可以是不同类型 D) 同一个运算符号在不同的场合可以有不同的含义 【1.8】在C语言中,错误的类型的常数是。 A) 32768 B) 0 C) 037 D) 0 【1.9】执行语句 (""1);屏幕显示。 A) -1 B) 1 C) D) 【1.10】已知 32768;执行语句("");屏幕显示。 A) -1 B) -32768 C) 1 D) 32768 【1.11】已知 65539;执行语句("");屏幕显示。 A) 65539 B) -3 C) 3 D) 程序不能执行 【1.12】在C语言中,整数-8在内存中的存储形式是。 A) 1111 1111 1111 1000 B) 1000 0000 0000 1000 C) 0000 0000 0000 1000 D) 1111 1111 1111 0111 【1.13】C语言中字符型()数据在内存中的存储形式是。 A) 原码 B) 补码 C) 反码 D) 码

计算机二级考试C语言练习题及答案

一、选择题 1). 下列叙述中正确的是( )。 A.调用printf( )函数时,必须要有输出项 B.使用putchar( )函数时,必须在之前包含头文件stdio.h C.在C语言中,整数可以以二进制、八进制或十六进制的形式输出 D.调节getchar( )函数读入字符时,可以从键盘上输入字符所对应的ASCII码 正确答案:B 答案解析:选项A,若printf函数没有输出项,且格式字符串中不含格式信息,则输出的是格式字符串本身,若格式字符串含有格式信息,运行时则出现错误提示;选项C,在C 语言中,整数可以十进制、八进制或十六进制的形式输出;选项D,getchar函数是从标准输入设备读取一个字符。 2). 以下结构体类型说明和变量定义中正确的是( ) A.typedef struct { int n; char c; } REC; REC t1,t2; B.struct REC ; { int n; char c; }; REC t1,t2; C.typedef struct REC; { int n=0; char c=′A′; } t1,t2; D.struct { int n; char c; } REC; REC t1,t2; 正确答案:A 答案解析:定义结构体类型的一般形式为:struct 结构体名 {成员列表};struct 结构体名后不能加″;″号,所以选项B、C)错误,选项D中定义无名称的结构体类型同时定义结构体变量形式应为struct t1,t2;选项A为用户自定义类型,其为正确的定义形式。 3). 若实体A和B是一对多的联系,实体B和C是一对一的联系,则实体A和C的联系是( ) A.一对一 B.一对多 C.多对一 D.多对多 正确答案:B 答案解析:由于B和C有一一对应的联系,而A和B只间有一对多的联系,则通过关系之间的传递,则A和C之间也是一对多的联系。 4). 关于C语言的变量,以下叙述中错误的是( ) A.所谓变量是指在程序运行过程中其值可以被改变的量 B.变量所占的存储单元地址可以随时改变 C.程序中用到的所有变量都必须先定义后才能使用 D.由三条下划线构成的符号名是合法的变量名 正确答案:B

全国计算机等级考试二级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试题含解析

2003年上海市高等学校计算机等级考试试卷 二级 (C 程序设计) (120分钟) 试题一(28分,每小题4分) (1) 设有变量说明: int a=5, b=4, c=3, r1, r2; 请写出执行下列语句後r1和r2的值。 r1=a>b>c; r2=ac; (2) 试写出下列算式的C 语言表达式。 y x a 20 3 1log 75sin (3) 执行下列语句後,i, j, k 的值是多少? for(i=k=0, j=6; i void main() { int *a[10], b, c; a[0]=&b; *a[0]=5; c=(*a[0])++; printf(“%d %d\n ”, b, c); } (5) 设有如下程序: #include void main() { int clock; float f; char cpu[20]; scanf(“%4d%f%s ”, &clock, &f, cpu); printf(“%d %.0f %s\n ”, clock, f, cpu); } 假设输入数据流为200015.0 P4 is GOOD!,请写出执行该程序後的输出结果。

(6)下列程序的输出结果是什么? #include main() { int c1=0, c2=0, c3=0, c4=0; char *p=”12395632123378”; while(*p) { switch(*p) { case ‘1’: c1++; break; case ‘2’: c2++; case ‘3’: c3++; break; default: c4++; } p++; } printf(“c1=%d c2=%d c3=%d c4=%d\n”, c1, c2, c3, c4); } (7)执行下列程序後,s的值为多少? #define sq(X) X*X void main() { int s=15, a=2, b=1; printf(“s=%d\n”, sq(a+b)/sq(a+b)); } 试题二(12分,每小题6分) 阅读下列程序,写输出结果。 (1)#define N 6 void main() { int i, j, a[N]; for(i=1; i1; j--) a[j]+=a[j-1]; for(j=1; j<=i; j++) printf(“%4d”, a[j]); printf(“\n”); } }

全国计算机等级考试二级C语言真题库之选择题(11)

全国计算机等级考试等级考试真题库之选择题(11) 1.下列叙述中正确的是 A) 一个算法的空间复杂度大,则其时间复杂度也必定大 B) 一个算法的空间复杂度大,则其时间复杂度必定小 C) 一个算法的时间复杂度大,则其空间复杂度必定小 D) 算法的时间复杂度与空间复杂度没有直接关系 参考答案:D 【解析】算法的空间复杂度是指算法在执行过程中所需要的内存空间,算法的时间复杂度,是指执行算法所需要的计算工作量,两者之间并没有直接关系,答案为D。 2.下列叙述中正确的是 A) 循环队列中的元素个数随队头指针与队尾指针的变化而动态变化 B) 循环队列中的元素个数随队头指针的变化而动态变化 C) 循环队列中的元素个数随队尾指针的变化而动态变化 D) 以上说法都不对 参考答案:A 【解析】在循环队列中,用队尾指针rear指向队列中的队尾元素,用排头指针front指向排头元素的前一个位置。因此,从排头指针front指向的后一个位置直到队尾指针rear指向的位置之间所有的元素均为队列中的元素。所以循环队列中的元素个数与队头指针和队尾指针的变化而变化,A正确。 3.一棵二叉树中共有80个叶子结点与70个度为1的结点,则该二叉树中的总结点数为 A) 219

C) 230 D) 231 参考答案:B 【解析】二叉树中,度为0的节点数等于度为2的节点数加1,即n2=n0-1,叶子节点即度为0,则n2=79,总结点数为n0+n1+n2=80+70+79=229,答案为B。 4.对长度为10的线性表进行冒泡排序,最坏情况下需要比较的次数为 A) 9 B) 10 C) 45 D) 90 参考答案:C 【解析】冒泡法是在扫描过程中逐次比较相邻两个元素的大小,最坏的情况是每次比较都要将相邻的两个元素互换,需要互换的次数为9+8+7+6+5+4+3+2+1=45,选C。 5.构成计算机软件的是 A) 源代码 B) 程序和数据 C) 程序和文档 D) 程序、数据及相关文档 参考答案:D 【解析】软件指的是计算机系统中与硬件相互依赖的另一部分,包括程序、数据和有关的文

计算机二级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.关系代数运算,包括集合运算及选择、投影、连接运算,数据库规范化理论。

2019年上海市高等学校计算机等级考试试卷二级C语言程序设计10页word

2019年上海市高等学校计算机等级考试试卷 二级 C语言程序设计 (本试卷考试时间 120 分钟) 一、单选题 ( 本大题 15 道小题,每小题 1 分,共 15 分),从下面题目给出的A、B、C、 D四个可供选择的答案中选择一个正确答案。 1. 以下C程序中预处理命令写法正确的是: 答案: D A. #include (stdio.h) B. #include [stdio.h] C. #include {stdio.h} D. #include 2. 设有变量定义语句char a; 则下面的赋值语句中 ( ) 是正确的。 答案: A A. a='&'; B. a="&"; C. a=' ' '; D. a='16' ; 3. 设有char ch; 与语句“ch=getchar();”等价的语句是:答案: D A. printf("%c",ch); B. printf("%c",&ch); C. scanf("%c",ch); D. scanf("%c",&ch); 4. int a=2, b=5;则表达式21%9/(float)a+4/b*b的运算结果为( )。 答案: C A. 2 B. 1 C. 1.5 D. 0 5. 能正确表示逻辑关系"a>=10 或 a<=0"的C语言表达式是( )。 答案: C A. a>=10 or a<=0 B. a<=0|a>=10 C. a<=0||a>=10 D. a>=10 && a<=0 6. 设有int n=60;写出下列语句的运行结果 switch (n/10) case 6: printf("@");break; case 5: printf("#"); default: printf("$"); 答案: D A. @#$ B. #$

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

程序流程图中带有箭头的线段表示的是()。 A) 图元关系 B) 数据流 C) 控制流 D) 调用关系 参考答案:C 【解析】在数据流图中,用标有名字的箭头表示数据流。在程序流程图中,用标有名字的箭头表示控制流。所以选择C)。 结构化程序设计的基本原则不包括()。 A) 多态性 B) 自顶向下 C) 模块化 D) 逐步求精 参考答案:A 【解析】结构化程序设计的思想包括:自顶向下、逐步求精、模块化、限制使用goto语句,所以选择A)。 软件设计中模块划分应遵循的准则是()。 A) 低内聚低耦合 B) 高内聚低耦合 C) 低内聚高耦合 D) 高内聚高耦合 参考答案:B 【解析】软件设计中模块划分应遵循的准则是高内聚低偶合、模块大小规模适当、模块的依赖关系适当等。模块的划分应遵循一定的要求,以保证模块划分合理,并进一步保证以此为依据开发出的软件系统可靠性强,易于理解和维护。模块之间的耦合应尽可能的低,模块的内聚度应尽可能的高。 在软件开发中,需求分析阶段产生的主要文档是()。 A) 可行性分析报告 B) 软件需求规格说明书 C) 概要设计说明书 D) 集成测试计划 参考答案:B 【解析】A)错误,可行性分析阶段产生可行性分析报告。C)错误,概要设计说明书是总体设计阶段产生的文档。D)错误,集成测试计划是在概要设计阶段编写的文档。B)正确,需求规格说明书是后续工作如设计、编码等需要的重要参考文档。 算法的有穷性是指()。 A) 算法程序的运行时间是有限的 B) 算法程序所处理的数据量是有限的 C) 算法程序的长度是有限的 D) 算法只能被有限的用户使用

【解析】算法原则上能够精确地运行,而且人们用笔和纸做有限次运算后即可完成。有穷性是指算法程序的运行时间是有限的。 对长度为n的线性表排序,在最坏情况下,比较次数不是n(n-1)/2的排序方法是()。 A) 快速排序 B) 冒泡排序 C) 直接插入排序 D) 堆排序 参考答案:D 【解析】除了堆排序算法的比较次数是,其他的都是n(n-1)/2。 下列关于栈的叙述正确的是()。 A) 栈按"先进先出"组织数据 B) 栈按"先进后出"组织数据 C) 只能在栈底插入数据 D) 不能删除数据 参考答案:B 【解析】栈是按"先进后出"的原则组织数据的,数据的插入和删除都在栈顶进行操作。 在数据库设计中,将E-R图转换成关系数据模型的过程属于()。 A) 需求分析阶段 B) 概念设计阶段 C) 逻辑设计阶段 D) 物理设计阶段 参考答案:C 【解析】E-R图转换成关系模型数据则是把图形分析出来的联系反映到数据库中,即设计出表,所以属于逻辑设计阶段。 有三个关系R、S和T如下: 由关系R和S通过运算得到关系T,则所使用的运算为()。 A) 并 B) 自然连接 C) 笛卡尔积 D) 交

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

五、考试内容和要求

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

全国计算机二级考试C语言(最全复习资料)

二级公共基础知识作为必考内容出现,出题形式为选择题前10道,占考试总分的10%。 考试其它比重: 1、C语言程序的结构占总分1% 2、数据类型及其运算占总分4% 3、选择结构程序设计占比分的3% 4、循环结构占比分的5% 5、数组的定义和引用占比分的5% 6、函数占比分的5% 7、编译预处理占比分1% 8、指针占比分的5% 9、结构体占比分的3% 10、位运算占比分的2% 11、文件操作占比分的2% 考试方式 上机考试,时长120分钟 单选题40分(含公共基础10分),操作题60分(包括程序填空题、程序修改题、程序设计题) 第一部分 C语言知识复习资料 第一章C语言基本知识(90分) 【考点1】C程序 用C语言编写的程序称为C语言源程序,源程序文件的后缀名为“.c”。源程序经编译后生成后缀名为“.obj”的目标文件,再把目标文件与各种库函数连接起来,生成“.exe”可执行文件。C语言有三种基本结构:顺序结构、选择结构、循环结构。

【考点2】main函数 又称主函数,是C程序的入口。main后面跟一对小括号和一对花括号,花括号括起来的部分称为main 函数的函数体。一个C程序从main函数开始执行,到main函数体执行完结束,而不论main函数在整个程序中的位置如何。每一个程序有且仅有一个main函数,其他函数都是为main函数服务的。 【考点3】存储形式 计算机在电脑中保存数据是采用二进制形式,由0或1构成的二进制称为位(bit),八个位构成一个字节(Byte),1个Byte=8个bit。二进制、八进制、十六进制转化为十进制采用乘法,十进制转化为二进制、八进制、十六进制采用除法。数据的存放位置就是它的地址。 【考点4】注释 是对程序的说明,可出现在程序中任意合适的地方,注释从“/*”开始到最近一个“*/”结束,其间任何内容都不会被计算机执行,注释不可以嵌套。 【考点5】书写格式 每条语句的后面必须有一个分号,分号是语句的一部分。一行内可写多条语句,一个语句可写在多行上。 【考点6】标识符 是标识名字的有效字符序列,可以理解为C程序中的单词。 标识符的命名规则是: (1)标识符只能由字母、数字和下划线组成,字母区分大小写。 (2)标识符的第一个字符必须是字母或下划线,不能为数字。 C语言标识符分如下3类 (1)关键字。它们在程序中有固定的含义,不能另作他用。如int、for、switch等。 (2)预定义标识符。预先定义并具有特定含义的标识符。如define、include等。 (3)用户标识符。用户根据需要定义的标识符,符合命名规则且不与关键字相同。 【考点7】常量与变量 常量是指在程序运行过程中,其值不能改变的量。常量分为整型常量、实型常量、字符常量、字符串常量、符号常量5种。在程序运行过程中其值可以改变的量称为变量。C语言中没有字符串变量。存放字符串使用字符数组。 【考点8】整型数据 整型常量有十进制、八进制、十六进制三种表示形式,没有二进制形式。八进制整型常量加前导数字0,十六进制常量加前导0X,八进制常量中不会出现8。 整型变量可分为基本整型(int)、短整型(short)、长整型(long)、和无符号整型(unsigned)。一个基本整型占4个字节。其它类型的整型占用字节数和取值范围详见教材第9页。 【考点9】实型数据 实型数据有两种表示形式:小数形式和指数形式。掌握判定指数形式合法性。 口诀:E前E后必有数,E后必须为整数。 实型变量分为单精度型(float)和双精度型(double),单精度型占四个字节。 【考点10】算术运算 算术运算符一共有+、—、*、/、%这五个。求余运算要求运算对象只能为整型,除法运算符两边运算对象都为整型时,运算结果也为整型即舍掉小数部分。 【考点11】强制类型转换 将一个运算对象转换成指定类型,格式为(类型名)表达式,注意小括号位置。 【考点12】赋值 赋值运算符为“=”,不同于关系等于“= =”。赋值表达式格式为:变量名=表达式,赋值运算符左边必须为变量,赋值运算是把赋值运算符右边表达式的值赋给左边变量。

上海市高等学校计算机等级考试试卷二级C语言程序设计A卷

2012年上海市高等学校计算机等级考试试卷 二级 C语言程序设计( A 卷) (本试卷考试时间 120 分钟) 一、单选题 ( 本大题 10 道小题,每小题 1 分,共 10 分),从下面题目给出的A、B、 C、D四个可供选择的答案中选择一个正确答案。 1.在一个C 语言源程序中,main()函数的位置_________。答案:C A.必须在最前面 B.必须在其它函数之前 C.可以在任意位置 D.必须在最后面 2. 设有变量定义:int a[ ]={5, 6, 1, 3, 7}, c, i; 当执行完语句: for(i=c=0; i<5; i++) { if(a[i]%3 = =0) continue; c++; } 之后,c的值是_____。 答案:C A.1 B.2 C.3 D.4 3.以下程序运行结果为_______ #define PII 3 #define S(x) PII*x*x main() { int a=1, b=2, c;

c = a+b; printf("%d\n",S(c)); } 答案:B A.9 B.27 C.7 D.10 4.若有变量定义:int a[4], *p=a; 则以下对数组a的元素不正确的引用是_____。答案:D A.*a B.*(p+1) C.p[1] D.a[4] 5.设有变量定义:int d[50], *p=&d[0]; 下面表达式中________的计算结果为int类型的数值(非地址)。答案:D A.p+=1 B.p++ C.&d[2] D.p-d 6.为了判断两个字符串s1和s2是否相等,应当使用_____。答案:D A.if (s1==s2 ) B.if (s1 = s2 )

全国计算机等级考试二级C语言真题库之选择题(07)

全国计算机等级考试二级C语言真题库之选择题(07)

全国计算机等级考试等级考试真题库之选择题(07) 1.下列叙述中正确的是()。 A) 循环队列是队列的一种链式存储结构 B) 循环队列是队列的一种顺序存储结构 C) 循环队列是非线性结构 D) 循环队列是一种逻辑结构 参考答案:B 【解析】在实际应用中,队列的顺序存储结构一般采用循环队列的形式。 2.下列关于线性链表的叙述中,正确的是()。 A) 各数据结点的存储空间可以不连续,但它们的存储顺序与逻辑顺序必须一致 B) 各数据结点的存储顺序与逻辑顺序可以不一致,但它们的存储空间必须连续 C) 进行插入与删除时,不需要移动表中的元素 D) 以上说法均不正确 参考答案:C 【解析】一般来说,在线性表的链式存储结构中,各数据结点的存储序号是不连续的,并且各结点在存储空间中的位置关系与逻辑关系也不

一致。线性链表中数据的插入和删除都不需要移动表中的元素,只需改变结点的指针域即可。 3.一棵二叉树共有25个结点,其中5个是叶子结点,则度为1的结点数为() A) 16 B) 10 C) 6 D) 4 参考答案:A 【解析】根据二叉树的性质3:在任意一棵二叉树中,度为0的叶子结点总是比度为2的结点多一个,所以本题中度为2的结点是5-1=4个,所以度为1的结点的个数是25-5-4=16个。 4.在下列模式中,能够给出数据库物理存储结构与物理存取方法的是()。 A) 外模式 B) 内模式 C) 概念模式 D) 逻辑模式 参考答案:B

【解析】数据库系统的三级模式是概念模式、外模式和内模式。概念模式是数据库系统中全局数据逻辑结构的描述,是全体用户公共数据视图。外模式也称子模式或用户模式,它是用户的数据视图,给出了每个用户的局部数据描述。内模式又称物理模式,它给出了数据库物理存储结构与物理存取方法,所以选择B)。 5.在满足实体完整性约束的条件下()。 A) 一个关系中应该有一个或多个候选关键字 B) 一个关系中只能有一个候选关键字 C) 一个关系中必须有多关键字个候选 D) 一个关系中可以没有候选关键字 参考答案:A 【解析】实体完整性约束要求关系的主键中属性值不能为空值,所以选择A)。 6.有三个关系R、S和T如下: 则由关系R和S得到关系T的操作是( )。

计算机二级C语言要求

基本要求 1. 熟悉Visual C++ 6. 0 集成开发环境。 2. 掌握结构化程序设计的方法,具有良好的程序设计风格。 3. 掌握程序设计中简单的数据结构和算法并能阅读简单的程序。 4. 在Visual C++ 6. 0 集成环境下,能够编写简单的C 程序,并具有基本的纠错和调试程序的能力。 考试内容 一、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. 地址与指针变量的概念,地址运算符与间址运算符。

相关文档
最新文档