导航:首页 > 程序命令 > c语言程序员笔试题

c语言程序员笔试题

发布时间:2022-12-22 00:42:54

㈠ 求上海杨讯计算机科技有限公司C语言程序员笔试题,谢谢!

兄弟,我是扬讯研发不项目经理,你别打听了,我知道你qq了,请遵守游戏规则,不要找了

㈡ 初级程序员考试内容

主要考试科目是两科:上午是综合知识,75道单选题;下午是应用技术,5道案例题,主要考流程图1题,C语言3题,C++和JAVA二选一,以填空题和选择题为主。

㈢ 求历届江苏省计算机等级考试二级C语言的试题及答案

1.那么简单 连我这12岁的小孩都过了 你还过不了?
2.又没叫你讲指针……建议你重新学
3.最后推荐:C语言集成开发与实验环境
里面都有
4.建议你去读下《提问的智慧》
PS:是全国统考

㈣ C语言二级考试编程一般考什么

上机考试,考试时长120分钟,满分100分。

题型及分值

单项选择题40分(含公共基础知识部分10分)、操作题60分(包括填空题、改错题及编程题)。

考试环境

Visual C++6. 0。

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

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

3. 源程序的书写格式。

4. C语言的风格。

二、数据类型及其运算

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

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

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

4. C表达式类型(赋值表达式,算术表达式,关系表达式,逻辑表达式,条件表达式,逗号表达式)和求值规则。二级各科考试的公共基础知识大纲及样题见高等教育出版社出版的《全国计算机等级考试二级教程——公共基础知识(2013年版)》的附录部分。

三、基本语句

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函数的应用)。

㈤ 公司笔试C语言一般考什么

我前个月就刚去一家公司面试,程序员的,一去就叫我做题目!
全是很基本的C语言知识,其中一题如下:
char ci[100];
void fun(char ch[100])
{
printf("%u\n",sizeof ch);
}
void main()
{
fun(ci);
printf("%u\n",sizeof ci );
char cTest[100];
char *cPoint=cTest;
printf("%u\n",sizeof cTest );
//有些地方记不太清楚
}
所以考的都是些很基本很深入的知识,像指针,数组,标准库函数等等的理解要深入。
学校在这方面一般是采取的较保守和避讳的态度,一讲到上了难度的,就一点即过。要想取得好的效果,必须在下面自己找点适合自己的资料好好研读!

㈥ c语言 题1:若有语句 char*line[5],则定义line是一个数组,每个数组元素是一个基类型为char的指针变量。

一、选择题((1)—(10)每题2分,(11)—(50)每题1分,共60分)
下列各题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)PDL(过程设计语言) B)PAD图 C)N-S图 D)DFD图
(7)下列叙述中正确的是
A)软件交付使用后还需要进行维护
B)软件一旦交付使用就不需要再进行维护
C)软件交付使用后其生命周期就结束
D)软件维护是指修复程序中被破坏的指令

(8)数据库设计的根本目标是要解决
A)数据共享问题 B)数据安全问题
C)大量数据存储问题 D)简化数据维护

(9)设有如下关系表:
R S T
A B C A B C A B C
1 1 2 3 1 3 1 1 2
2 2 3 2 2 3
3 1 3
则下列操作中正确的是
A)T=R∩S B)T=R∪S C)T=R×S D)T=R/S

(10)数据库系统的核心是
A)数据模型 B)数据库管理系统 C)数据库 D)数据库管理员

(11)以下叙述中错误的是
A)用户所定义的标识符允许使用关键字
B)用户所定义的标识符应尽量做到“见名知意”
C)用户所定义的标识符必须以字母或下划线开头
D)用户定义的标识符中,大、小写字母代表不同标识

(12)以下叙述中错误的是
A)C语句必须以分号结束
B)复合语句在语法上被看作一条语句
C)空语句出现在任何位置都不会影响程序运行
D)赋值表达式末尾加分号就构成赋值语句

(13)以下叙述中正确的是
A)调用printf函数时,必须要有输出项
B)使用putchar函数时,必须在之前包含头文件stdio.h
C)在C语言中,整数可以以十二进制、八进制或十六进制的形式输出
D)调用getchar函数读入字符时,可以从键盘上输入字符所对应的ASCII码
(14)以下关于函数的叙述中正确的是
A)每个函数都可以被其它函数调用(包括main函数)
B)每个函数都可以被单独编译
C)每个函数都可以单独运行
D)在一个函数内部可以定义另一个函数

(15)若有语句:char *line[5];,以下叙述中正确的是
A)定义line是一个数组,每个数组元素是一个基类型为char的指针变量
B)定义line是一个指针变量,该变量可以指向一个长度为5的字符型数组
C)定义line是一个指针数组,语句中的*号称为间址运算符
D)定义line是一个指向字符型函数的指针
(16)有以下程序段
typedef struct NODE
{ int num; struct NODE *next;
} OLD;
以下叙述中正确的是
A)以上的说明形式非法 B)NODE是一个结构体类型
C)OLD是一个结构体类型 D)OLD是一个结构体变量

(17)以下叙述中错误的是
A)C语言中对二进制文件的访问速度比文本文件快
B)C语言中,随机文件以二进制代码形式存储数据
C)语句 FILE fp; 定义了一个名为fp的文件指针
D)C语言中的文本文件以ASCII码形式存储数据

(18)当把以下四个表达式用作if语句的控制表达式时,有一个选项与其它三个选项含义不同,这个选项是
A)k%2 B)k%2==1 C)(k%2)!=0 D)!k%2==1

(19)以下不能正确计算代数式 值的C语言表达式是
A)1/3*sin(1/2)*sin(1/2) B)sin(0.5)*sin(0.5)/3
C)pow(sin(0.5),2)/3 D)1/3.0*pow(sin(1.0/2),2)

(20)以下能正确定义且赋初值的语句是
A)int n1=n2=10; B)char c=32;
C)float f=f+1.1; D)double x=12.3E2.5;

(21)以下程序的功能是:给r输入数据后计算半径为r的圆面积s。程序在编译时出错。
main()
/* Beginning */
{ int r; float s;
scanf("%d",&r);
s=*p*r*r; printf("s=%f\n",s);
}
出错的原因是
A)注释语句书写位置错误 B)存放圆半径的变量r不应该定义为整型
C)输出语句中格式描述符非法 D)计算圆面积的赋值语句中使用了非法变量

(22)设有定义:int k=1,m=2; float f=7;,则以下选项中错误的表达式是
A)k=k>=k B)-k++ C)k%int(f) D)k>=f>=m

(23)设有定义:int a=2,b=3,c=4;,则以下选项中值为0的表达式是
A)(!a==1)&&(!b==0) B)(a<B)&& !c||1
C)a && b D)a||(b+b)&&(c-a)

(24)有以下程序段
int k=0,a=1,b=2,c=3;
k=ac ? c:k;
执行该程序段后,k的值是
A)3 B)2 C)1 D)0

(25)设变量a、b、c、d和y都已正确定义并赋值。若有以下if语句
if (a<B)
if(c==d) y=0;
else y=1;
该语句所表示的含义是
A) B)
C) D)

(26)有以下程序段
int n,t=1,s=0;
scanf("%d",&n);
dowhile (t!=n);
为使此程序段不陷入死循环,从键盘输入的数据应该是
A)任意正奇数 B)任意负偶数 C)任意正偶数 D)任意负奇数

(27)设变量已正确定义,则以下能正确计算f = n!的程序段是
A) f=0; B) f=1;
for(i=1;i<=n;i++) f*=i; for(i=1;i<N;I++) f*="i;
C) f=1; D) f=1;
for(i=n;i>1;i++) f*=i; for(i=n;i>=2;i--) f*=i;

(28)设有定义:int n1=0,n2,*p=&n2,*q=&n1;,以下赋值语句中与n2=n1;语句等价的是
A)*p=*q; B)p=q; C)*p=&n1; D)p=*q;

(29)若有定义:int x=0, *p=&x;,则语句printf("%d\n",*p);的输出结果是
A)随机值 B)0 C)x的地址 D)p的地址

(30)设函数fun的定义形式为
void fun(char ch, float x )
则以下对函数fun的调用语句中,正确的是
A)fun("abc",3.0); B)t=fun('D',16.5);
C)fun('65',2.8); D)fun(32,32);
(31)有以下程序
main()
, *p=&a[3], *q=p+2;
printf("%d\n", *p + *q);
}
程序运行后的输出结果是
A)16 B)10 C)8 D)6

(32)有以下程序
main()
, q[]="abc";
printf("%d %d\n", sizeof(p),sizeof(q));
};
程序运行后的输出结果是
A)4 4 B)3 3 C)3 4 D)4 3

(33)有以下程序
# define f(x) (x*x)
main()
{ int i1, i2;
i1=f(8)/f(4) ; i2=f(4+4)/f(2+2) ;
printf("%d, %d\n",i1,i2);
}
程序运行后的输出结果是
A)64, 28 B)4, 4 C)4, 3 D)64, 64

(34)有以下程序
main()
{ char a1='M', a2='m';
printf("%c\n", (a1, a2) ); }
以下叙述中正确的是
A)程序输出大写字母M B)程序输出小写字母m
C)格式说明符不足,编译出错 D)程序运行时产生出错信息

(35)有以下程序
#include
main()
{ char c1='1',c2='2';
c1=getchar(); c2=getchar(); putchar(c1); putchar(c2);
}
当运行时输入:a<回车> 后,以下叙述正确的是
A)变量c1被赋予字符a,c2被赋予回车符
B)程序将等待用户输入第2个字符
C)变量c1被赋予字符a,c2中仍是原有字符2
D)变量c1被赋予字符a,c2中将无确定值

(36)有以下程序
main()
{ int k=5,n=0;
while(k>0)
{ switch(k)
{ default : break;
case 1 : n+=k;
case 2 :
case 3 : n+=k;
}
k--;
}
printf("%d\n",n);
}
程序运行后的输出结果是
A)0 B)4 C)6 D)7

(37)有以下程序
main()
, y=0, x, *p;
p=&a[1];
for(x= 1; x<3; x++) y += p[x];
printf("%d\n",y);
}
程序运行后的输出结果是
A)10 B)11 C)14 D)15
(38)有以下程序
void sort(int a[], int n)
{ int i, j ,t;
for (i=0; i<N-1; i++)
for (j=i+1; j<N; j++)
if (a<A[J])
}
main()
, i;
sort(aa+2, 5);
for (i=0; i<10; i++) printf("%d,",aa);
printf("\n");
}
程序运行后的输出结果是
A)1,2,3,4,5,6,7,8,9,10, B)1,2,7,6,3,4,5,8,9,10,
C)1,2,7,6,5,4,3,8,9,10, D)1,2,9,8,7,6,5,4,3,10,

(39)有以下程序
void sum(int a[])

main()
;
sum(&a[2]);
printf("%d\n", a[2]);
}
程序运行后的输出结果是
A)6 B)7 C)5 D)8

(40)有以下程序
void swap1(int c0[], int c1[])
{ int t ;
t=c0[0]; c0[0]=c1[0]; c1[0]=t;
}
void swap2(int *c0, int *c1)
{ int t;
t=*c0; *c0=*c1; *c1=t;
}
main()
, b[2]=;
swap1(a, a+1); swap2(&b[0], &b[1]);
printf("%d %d %d %d\n",a[0],a[1],b[0],b[1]);
}
程序运行后的输出结果是
A)3 5 5 3 B)5 3 3 5 C)3 5 3 5 D)5 3 5 3

(41)有以下程序
#include
main()
, q[10]=;
printf("%d %d\n", strlen(p), strlen(q));
}
以下叙述中正确的是
A)在给p和q数组置初值时,系统会自动添加字符串结束符,故输出的长度都为3
B)由于p数组中没有字符串结束符,长度不能确定;但q数组中字符串长度为3
C)由于q数组中没有字符串结束符,长度不能确定;但p数组中字符串长度为3
D)由于p和q数组中都没有字符串结束符,故长度都不能确定

(42)有以下程序,其中函数f的功能是将多个字符串按字典顺序排序
#include
void f(char *p[], int n)
{ char *t; int i,j;
for(i=0; i<N-1; i++)
for(j=i+1; j<N; j++)
if(strcmp(p,p[j])>0)
}
main()
;
f(p, 5);
printf("%d\n", strlen(p[1]));
}
程序运行后的输出结果是
A)2 B)3 C)6 D)4

(43)有以下程序
# include
void f(char *s, char *t)
{ char k;
k=*s; *s=*t; *t=k;
s++; t--;
if (*s) f(s, t);
}
main()
{ char str[10]="abcdefg", *p ;
p=str+strlen(str)/2+1;
f(p, p-2);
printf("%s\n",str);
}
程序运行后的输出结果是
A)abcdefg B)gfedcba C)gbcdefa D)abedcfg
(44)有以下程序
float f1(float n)

float f2(float n)

main()
{ float (*p1)(float),(*p2)(float),(*t)(float), y1, y2;
p1=f1; p2=f2;
y1=p2( p1(2.0) );
t = p1; p1=p2; p2 = t;
y2=p2( p1(2.0) );
printf("%3.0f, %3.0f\n",y1,y2);
}
程序运行后的输出结果是
A)8, 16 B)8, 8 C)16, 16 D)4, 8
(45)有以下程序
int a=2;
int f(int n)
{ static int a=3;
int t=0;
if(n%2)
else
return t+a++;
}
main()
{ int s=a, i;
for( i=0; i<3; i++) s+=f(i);
printf("%d\n", s);
}
程序运行后的输出结果是
A)26 B)28 C)29 D)24

(46)有以下程序
# include
struct STU
{ int num;
float TotalScore; };
void f(struct STU p)
,};
p.num = s[1].num; p.TotalScore = s[1].TotalScore;
}
main()
,};
f(s[0]);
printf("%d %3.0f\n", s[0].num, s[0].TotalScore);
}
程序运行后的输出结果是
A)20045 537 B)20044 550 C)20042 580 D)20041 703

(47)有以下程序
# include
struct STU
{ char name[10];
int num; };
void f(char *name, int num)
,};
num = s[0].num;
strcpy(name, s[0].name);
}
main()
,},*p;
p=&s[1]; f(p->name, p->num);
printf("%s %d\n", p->name, p->num);
}
程序运行后的输出结果是
A)SunDan 20042 B)SunDan 20044
C)LiSiGuo 20042 D)YangSan 20041

(48)有以下程序
struct STU
;
void f(struct STU *p)
,}, *q=s;
++p ; ++q; *p=*q;
}
main()
,};
f(s);
printf("%s %d %3.0f\n", s[1].name, s[1].num, s[1].TotalScore);
}
程序运行后的输出结果是
A)SunDan 20044 550 B)Penghua 20045 537
C)LiSiGuo 20042 580 D)SunDan 20041 703
(49)以下程序的功能是进行位运算
main()
{ unsigned char a, b;
a=7^3; b= ~4 & 3;
printf("%d %d\n",a,b);
}
程序运行后的输出结果是
A)4 3 B)7 3 C)7 0 D)4 0

(50)有以下程序
#include
main()
{ FILE *fp; int i, k, n;
fp=fopen("data.dat", "w+");
for(i=1; i<6; i++)
{ fprintf(fp,"%d ",i);
if(i%3==0) fprintf(fp,"\n");
}
rewind(fp);
fscanf(fp, "%d%d", &k, &n); printf("%d %d\n", k, n);
fclose(fp);
}
程序运行后的输出结果是
A)0 0 B)123 45 C)1 4 D)1 2

二、填空题(每空2分,共40分)
请将每一个空的正确答案写在答题卡至序号的横线上,答在试卷上不得分。

(1)数据管理技术发展过程经过人工管理、文件系统和数据库系统三个阶段,其中数据独立性最高的阶段是 。

(2)算法复杂度主要包括时间复杂度和 复杂度。

(3)在进行模块测试时,要为每个被测试的模块另外设计两类模块:驱动模块和承接模块(桩模块)。其中 的作用是将测试数据传送给被测试的模块,并显示被测试模块所产生的结果。

(4)一棵二叉树第六层(根结点为第一层)的结点数最多为 个。

(5)数据结构分为逻辑结构和存储结构,循环队列属于 结构。

(6)以下程序运行后的输出结果是 。
main()
{ int x=0210; printf("%X\n",x);
}

(7)以下程序运行后的输出结果是 。
main()
{ int a=1,b=2,c=3;
if(c=a) printf("%d\n",c);
else printf("%d\n",b);
}

(8)已有定义:double *p;,请写出完整的语句,利用malloc函数使p指向一个双精度型 的动态存储单元 。

(9)以下程序运行后的输出结果是 。
main()
{ char c; int n=100;
float f=10; double x;
x=f*=n/=(c=50);
printf("%d %f\n",n,x);
}

(10)以下程序的功能是计算:s=1+12+123+1234+12345。请填空。
main()
{ int t=0,s=0,i;
for( i=1; i<=5; i++)

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

(11)已知字母A的ASCII码为65。以下程序运行后的输出结果是 。
main()
{ char a, b;
a='A'+'5'-'3'; b=a+'6'-'2' ;
printf("%d %c\n", a, b);
}
(12)有以下程序
int sub(int n)
main()
{ int x,y;
scanf("%d",&x);
y=sub(sub(sub(x)));
printf("%d\n",y);
}
若运行时输入:1234<回车>,程序的输出结果是 。
(13)以下函数sstrcat()的功能是实现字符串的连接,即将t所指字符串复制到s所指字符串的尾部。例如:s所指字符串为abcd,t所指字符串为efgh,函数调用后s所指字符串为abcdefgh。请填空。
# include
void sstrcat(char *s, char *t)
{ int n;
n= strlen(s);
while (*(s+n)= )
}

(14)以下程序运行后的输出结果是 。
#include
char *ss(char *s)
{ char *p, t;
p=s+1; t=*s;
while(*p)
*(p-1)=t;
return s;
}
main()
{ char *p, str[10]="abcdefgh";
p = ss(str) ;
printf("%s\n",p);
}

(15)以下程序运行后的输出结果是 。
int f(int a[], int n)
{ if (n >= 1) return f(a, n-1)+a[n-1];
else return 0;
}
main()
, s;
s=f(aa, 5); printf("%d\n", s);
}

(16)以下程序运行后的输出结果是 。
struct NODE
{ int num; struct NODE *next;
} ;
main()
,,}, *p, *q, *r;
int sum=0;
s[0].next=s+1; s[1].next=s+2; s[2].next=s;
p=s; q=p->next; r=q->next;
sum+=q->next->num; sum+=r->next->next->num;
printf("%d\n", sum);
}

(17)以下程序的功能是输出如下形式的方阵:
13 14 15 16
9 10 11 12
5 6 7 8
1 2 3 4
请填空。
main()
{ int i,j,x;
for(j=4; j ; j--)
{ for(i=1; i<=4; i++)
{ x=(j-1)*4 + ;
printf("M",x);
}
printf("\n");
}
}

(18)以下函数rotate的功能是:将a所指N行N列的二维数组中的最后一行放到b所指二维数组的第0列中,把a所指二维数组中的第0行放到b所指二维数组的最后一列中,b所指二维数组中其他数据不变。
# define N 4
void rotate(int a[][N], int b[][N])
{ int i, j;
for (i=0; i<N; i++)

}
2005年9月全国计算机等级考试二级C笔试答案
2005年下半年C语言笔试参考答案
一、题答案
(1)—(10) CACDC DAABB
(11)—(20)ACBBA CCDAB
(21)—(30)DCABC DDABD
(31)—(40)BCCAA DCCAA
(41)—(50)BCBAC DABAD
二、填空题
(1) 数据库系统
(2) 空间
(3) 驱动模块
(4) 32
(5) 存储结构
(6) 88
(7) 1
(8) p=(double * ) malloc (sizeof(double))
(9) 2 20
(10) t*10
(11) 67 G
(12) 10
(13) *t
(14) bcdefgha
(15) 15
(16) 5
(17) >0
(18) 6
(19) a[0]
(20) b[0]

㈦ 一道简单C语言指针问题编程题!麻烦高手帮我改的简单容易理解,英文单词别很多还难!麻烦了

因为某种原因,本人共考过2次笔试,3次上机。其中笔试在70左右,3次上机均为满分,
看着大批的同学在为三级发愁不知道如何准备和应考。我想我应该把经验和学习的方法写下
来,这些方法保证你能过三级。但是不保证你能获得高分并学到知识,所以请各位计算机系
与爱好电脑的高手或自认为是高手的同志们就此打住。OK!

以网络技术为例(其他三门的方法相似),我把方法总结为:细看书,做笔记,多复习。
第一阶段:看网络技术教材,详细地做笔记(20天).
第一边看书你要看得特别仔细,把所有你认为重要的地方全抄到笔记本上,包括重要的
表格和插图。第一次看不懂的地方可以跳过去等过两天再回头看一遍。每天看新的知识之前
都将前两天看的再复习一遍,强化记忆。
我把全书的重要程度划分了一下:第一,七,八章 了解(看看做做笔记就行了);
第二,四章 理解(看懂主要的知识点);第三,五,六章 掌握(看懂所有的知识点);
其中又以以下章节为重点:2.2 进程 2.3 存储管理 2.4 文件管理 2.5 设备管理
(我当时这一节的题都挂了) 3.5 双绞线 VS 同轴电缆 3.6 OSI VS TCP/IP 4.3 以太网
4.5 组网技术 4.8 网络互连 5.3 IP协议 6.4 加密技术 其中有些内容必须理解并掌握,
要是不理解,背也要背下来。如:OSI协议和TCP/IP协议的各层的名字,各种传输介质和各种
以太网的参数等。
另外所有教材上没有的内容不用看,因为考试出的题没有一道是书本之外的。
===> 要点一:坚持就是胜利,每天坚持看2个小时,至少能看15页。
===> 要点二:该抄就抄,好记性不如坏笔头。
===> 要点三:注意课后作业题,那可能就是原题。
这一阶段完成后,应该能够理解大部分的知识点。还要能够很快的在书中找到某个知识
点的位置。
第二阶段:复习重点章节(5天)
这一次复习的重点在那些需要理解和掌握的内容上,如果你看懂了,合上书想一遍,看
不懂就多看两遍,有些重点一定要记住。而且要把笔记本大声地读上两遍,达到更加熟练。
===> 要点一:看懂不一定会记住,一定要在脑海中形成印象,合上书能写下来。
===> 要点二:名词术语要注意。
===> 要点三:缩略语。凡是在书上出现过两遍的,一定要记下中英文解释。
例如:CDMA/CD,MFLOPS等。
第三阶段:复习不重要的章节和作题(5天)
有人也许要问,既然不重要还复习它干什么。错!出题人不能用重点凑成一百分要适当的
加点其他内容。于是只有在这些不重要的章节里面出了,这些题大概占20分左右。得分的方法
是将所有不太重要的章节再看一遍,越是你认为不可能出的,越要把它抄下来,记一记。而且
要特别注意数字,如ATM的传输速率,单模光纤所使用的光的波长等。(上次最呕吐的的一道
题是,信号从发送站经过卫星到接收站的传输延迟的典型值是多少?我按照同步地球卫星到地
球的距离,光的传输速度,算到百毫秒的量级,但是算不出具体的值,于是猜了一个250ms。
答案居然是540ms。晕倒~!)
还有就是模拟题的问题,我认为现在市面上的模拟题都太差了,考的全没有,不考的全有
了,说实话还不如我出的呢。所以题不用多做,只要把书看好就行,最后几天可以做几套,熟
悉一下题型,掌握一下时间就够了,多做全是浪费。
以上方法我一个同学上次照着我说的做了,结果笔试考分比我还高。所以不管你聪明不聪
明,只要你照我说的做了,一定能通过。
一句话:要是不过你拿我是问。

上机部分现在只有一到c语言编程题,非常简单。但我认为最重要的是能够编译程序和调试
程序,也就是说,一道题你能在纸上写下来还不够,一定要能够在机器上运行出结果才行,因为
编译系统及机器的不同,有的对的程序也可能产生大量的错误。只要你能把错误找出来就差不多
能过了。
因此我把方法总结为:多思考,多上机,捉虫子。(以谭浩强的《c语言设计》第二版为例)
第一阶段:看书,做笔记。(15天)
有人说那本书那么厚,15天能看完吗?错!谁说让你们看完了,你要是只是想过三级。只用
看前140页就足够了。也就是,第一章,了解,第二,三章理解,第五,六,七章掌握,第八,
第十章随便看一下就行了。因为c上机只要求你填一个函数,所以函数那一章不用看太仔细,只
要知道函数是干什么用的,它们之间是如何调用的就行了。至于指针,所有的考题全都能用数组
做出来,用指针只不过是简单一点,容易出错一点而已,我是强烈建议不用指针。第九章和第十
一章以后一概不用看。
===> 要点一:勤记,把所有重要的东西都记在笔记本上。如转义字符的定义等。
===> 要点二:每天上机调试两个程序(可以是例题或作业题)
===> 要点三:坚持,再坚持。
第二阶段:做课后作业题并上机调试。(10天)
现在书你已看完,练习题也可能做出了一些。现在就是要把前几章特别是五六七三章的课后
题一定要自己思考一下,做出来后再上机调试,是在做不出来,就看看答案,看懂后,再在机器
上调试一下也行。
重要例题:例 4.10 4.12 5.4 5.5 5.6 5.7 5.8 6.6 6.8 6.10 7.2 7.2 7.8 7.9
重要习题:4.5 4.9 5.5 5.7 5.8 6.1~6.10 7.1~7.14
===> 要点一:做题时使用N-S流程图。
===> 要点二:每道题不管多么简单,一定要调试直到正确为止。如习题2.4(2)我有几个同
学都是能编出来,但是怎么都运行不正确。
===> 要点三:每天上机作五道题以上,最好在TC2.0环境下。
第三阶段:继续调试重要程序,看一本书(5天)
继续调试程序直到熟练,然后看一本书,书名我先不说,可能许多同学都知道。但我不赞成
看这本书,而且我劝你到最后几天再看,挑出一部分典型的题看一下,自己做做,看是否正确,
熟悉一下题型,不要完全依赖那本书。那样可能因为一点小错误你找不出来就挂了。我们班的女
生们第一次因为这个原因挂的可不是少数。
还是那句话:要是你上机不过找我是问。

········回顾过去的大学生活,计算机等级考试最令人难忘。笔者斗胆在这里卖弄一下过去两年(准确的说是一年半)里通过全国计算机等级考试二到四级的经历,以自己的感受泡制一份全国计算机等级考试全攻略,希望对后来的朋友们尤其是刚刚迈入大学校门的师弟师妹们有所帮助。

考证路上,有两点需要特别注意。一是一次只能报考一个等级(包括笔试和上机)的考试。一个级别中有不同类别,考生只能选择其中一类。另外,考试单科合格者,成绩只保留到下一个考试周期。所以不想找麻烦的话就要认真准备,争取一次OK,否则会对信心造成打击。

一级考试

对于一级考试,其实没什么好说的,大部分人不必报考这一级别,既浪费金钱又浪费生命。因而笔者强烈建议不要考这一级别。如果你不得不参加这一级别考试的话,笔者在表示同情之余建议你在熟悉常用软件之余研究一下WPS,在以后的全国计算机等级考试(一级)中 ,WPS将成为一门单独的考试科目。

二级考试

二级考试是大部分人都必须参加的。二级考试的内容包括基础知识和程序设计两大部分。 基础知识主要包括电脑基本知识,DOS基本知识和基本操作,WINDOWS的基本概念与操作。关于这部分知识有点水准的辅导书就会有详细的介绍,只要把书好好看看就没什么问题。DOS中的文件、目录、路径的概念及使用是必考部分,要留意。(相关阅读:如何应付新大纲二级考试的公共基础知识)

二级考试的重中之重是程序部分。要对语言的基础知识熟练掌握,尤其要留意基础概念和基本方法(选择法、冒泡法等),要能看懂书上给的程序。一般来说,如果能独立做出大部分课后题就一切OK了。对语言的工夫应该下在平时,多想,多练,多上机。自己考虑作一些小程序会有很大帮助的(别人崇敬的目光就会让你觉得很有价值)。二级DOS类考试的上机考试包括三个部分的内容,即DOS操作题,程序修改题和程序编制题。如果你的C语言有一定水准的话,较难的部分就是程序修改题了,毕竟了解陌生人的思路是一件比较难的事。因此平时要多读一些程序,自己编程时注意要尽量符合规范,否则很容易吃亏。当然多上机练习是取得好成绩的不二法门。关于辅导书大连理工出版社和南开出版社的都相当不错。

三级考试

三级是一个比较麻烦的等级。它共有四个类别,可以大致分两种。 三级PC上机是考汇编程序,其他三个类别考C程序。如果不是对自己特别有信心的话一般不要报考PC技术。毕竟学习汇编语言也是不小的负担 ,而且对报考四级没什么帮助(四级不考汇编!)。对于其他三种主要看自己的兴趣了。相对来说数据库要难一点(对数学系的除外)。三级的四个类别各有侧重,比较麻烦的是对于四级来说都太片面了,所以帮助不大。因此基础比较好的,直考四级也是可以考虑的。(相关阅读:通过计算机等级考试三级网络的经验)

笔试部分是三级的难点,所要记忆的内容比二级增加很多。要注意对基本理论和基础概念的掌握,有利于知识网络的形成,减少记忆负担。

由于三级刚刚改革不久,各个出版社出版的辅导书都很难贴近考试。这种情况下多看书就成了最好的选择。从近两次考试的情况看,出题也很接近课本(尤其是网络技术,有部分教材原话)。三级上机考试难度比二级提高并不大,较复杂的部分如文件读写,函数调用等通常题目已给出,因而所考的依然是比较基本和典型的算法。

四级考试

四级是最后一级,也是知识最复杂的一级。报考四级是需要一点信心和勇气的,你报考四级后身边几乎不可避免的出现一片质疑声(当我报四级时老师竟然告诉我本校从来没人通过),这时候一定要相信自己。(相关阅读:帮你全面了解全国计算级等级考试-四级)

四级通过的人数的确是非常少(相对三级),但要看到四级报考人数也是最少的。四级知识量是巨大的(看看那厚厚的教材就知道了),难点主要是离散数学和计算机英语。对于离散数学,如果有机会旁听一下计算机专业的核心课程《离散数学》会很有帮助的。要记住一定要作一定数量的习题!仅仅通过识记是无法提高水平的。

计算机英语没有想象中的困难,常用的单词只有几百个,只要把近5、6年的试题中英语题过一遍就差不多了。手头最好有一本专业词典,大部分单词在文曲星上查不到 。相对来说英语题比较简单,只要单词认识就OK了。

笔试中比较新鲜的是论述题。建议买一本历年试题及参考答案(每年国家考试中心都出版),仔细研究一下,掌握答题方法。比较幸运的是论述题通常有四道,可以选择自己最有把握的。由于四级考试已经举行多年,各出版社出的辅导书都比较扣题。笔者强烈推荐大连理工出版社出版的《全国计算机等级考试题典(四级)》。这本书贴近考试,解答详尽,对顺利过级会有很大帮助!一定要做历年试题(5年以内),确实是有一定复现率的!

四级上机考试和三级差不多,只有一道编程题,注意别紧张,一定要存盘,否则会变为0分。当时跟我一个考场的同学就有人因为慌乱忘记存盘,造成下午的考试没有通过。(相关阅读:全国计算机四级考试经验谈)

结束语:最后,不管面对任何考试都需要对自己要信心,相信即使只有一个人通过,那个人也一定是自己!这时你就成功一半了。预祝每一位考生能够在9月的考试中取得理想的成绩!

计算机考试备忘录

首先是报考时间问题。虽说大学有四年,但是如果你要考研究生的话(大部分人都会考的),从大三下学期就该开始准备了,所以留给等级考试的时间其实只有两年半而已(四次机会)。因此,如果你是大一的新生,应该考虑报考明年四月的考试。因为全国计算机等级考试是面对非专业人士的,所以难度并不太高(当然也不很容易,否则听我唠叨什么)。如果你的学校没有一级必考之类的变态规定话,就应该坚决跳过一级从二级开考(时间宝贵,不应该为没意义的事浪费半年时光)。平心而论,二级知识非常基础,只要认真准备(你有整整一个寒假的时间准备)过关是很容易的(即使你的计算机基础很差)。

虽然三级证书一样可以拿到学位证,并且越级考试也是被许可的,但笔者不提倡直接报考三级(即使你的计算机基础很好)。直接过三级虽然是一件很酷的事,但这要担相当的风险,一旦失误(这是很可能的事,毕竟三级是有一定难度的),你就不得不与刚通过二级的同学一起考试。除非你的神经有下水管道那么粗,不然会有很大压力,而且对信心的打击不容忽视。如果你对自己的计算机水平很有自信的话,二级证书到手后跳过三级直考四级倒是可以考虑的,那样风险和效率比较均衡。

另一个比较重要的问题是计算机语言的选择问题。笔者强烈推荐学习C语言。C语言不但本身逻辑清楚,实用性强而且扩展性很强,方便以后学习C++,C#等语言。如果你有狮子一样的雄心,更应该选择C语言,要注意到四级和高级程序员考试都要求C语言!
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@计算机三级考试马上就要到了,然而很多朋友对计算机上机考试却仍旧十分茫然,

参加这次考试的人有很大一部分是上次机试没有通过的朋友,甚至还有一些考了两次机试都没有通过的……

这其中不乏一些C语言学的很不错的高手,大部分人到现在都不明白为什么自己亲手编的程序却是0分……

究竟是什么原因呢?不就是那100道题目吗?翻来覆去的看也没有发现自己的程序有什么错误啊,看资料,用模拟盘模拟也是满分啊,可为什么正式考试就是0分呢?

于是很多人甚至把通过上机考试当成一件*运气的事了,甚至有的朋友对上机考试感到十分恐惧
然而这其中真正的原因……
大家不妨和我一起看一下考试中心命题组的正确答案~
顺便提醒一下大家在考试的时候要注意的问题,希望对大家有所帮助。

第一条:审题要仔细!正式考试的时候会遇到很多面熟的题目,这些题目有的似乎和
平常资料中看到的一样,然而,千万不要见到面熟的题目而沾沾自喜,因为有很多的
“陷阱”会使你审题的时候就出错~!
我们看一道所有人都做过的的 “数字题目” 。
考试中心命题组第23题:
已知在文件in.dat中存有N个实数,(N<200),函数readdat()是读取这N个实数并存入数组xx中。
请编制函数CalValue(),其功能要求:
1、求出这N个实数的整数部分平均值aver;
2、分别求出这N个实数中其整数部分值小于平均值ever的数的整数部分值之和sumint与小数部分之和sumdec
最后调用函数WriteDat()把所求的结果输出到文件OUT8.dat中。
这一题看起来很眼熟,然而你仔细看~!
1、aver是整数部分的平均值~!不是普通的哦!
2、整数部分值小于平均值ever的数的整数部分值之和sumint与小数部分之和sumdec!!
呼~,原来这么复杂~!稍不留心就错了~,结果就想当然的……0分
考试中心命题组第4题
函数ReadDat()实现从文件ENG.IN中读取一篇英文文章存入到字符
串数组xx中;请编制函数ComWord()分别计算出10个不区分大小写
的英文单词的首字母(b,c,f,s,n,r,u,e,o,p)的频数并依次存入
整型数组yy[0]至yy[9]中,最后调用函数WriteDat( )把结果yy
输出到文件PS1.OUT中。
这题也很眼熟,然而你仔细看~!
英文单词的首字母,呵呵,不是平常的字母的个数,是作为单词的首字母的个数啊,晕~
上面两道题目并没有在其他资料上见过,考试的时候也不一定会出,
这里仅仅是给大家提个醒儿,正式考试一定要仔细审题,严格按照题目的要求去做,
不要受以前做过的题目的影响。

第二条:一定要考虑除零、溢出、类型转换、精度等细节问题~!!
虽然我们在平时学C语言的时候老师都提醒过,可是真正到了编程序的时候,
却没有几个人会考虑。这些细节问题似乎并不直接影响题目的输出结果,
然而,因为溢出和类型转换错误而造成考试得不到满分的可是大有人在啊!
我们看下面一道最害人的题目~!!,很多朋友考了这道题目都没有过。
下面来看看你为什么是0分~!
考试中心命题组64题:
请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,
仍存入数组xx的对应的位置上,最后调用函数WriteDat()把结果xx输出到文件PS8.DAT中。
替代关系:f(p)=p*11 mod 256 (p是数组中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),
如果原字符小于等于32或大于130,则该字符不变,否则将f(p)所对应的字符进行替代。
这道题目所有的人都做过,但几乎就没有人做对,包括南开无忧在内~!
原因就在于这一句!
无忧:int f; f=(xx[i][k]*11)%256;
南开:char *pf; *pf=*pf*11%256;
表面看来,好象两个都对,
请你在TC下运行一下下面的代码,看一下结果你就知道了是怎么回事了……:
main()
{
char nk='E',*nkp,wuyou='E';
int wy;
nkp=&nk;
*nkp=*nkp*11%256;
wy=wuyou*11%256;
printf("%c %c %c %c\n",nk,*nkp,wuyou,wy);
printf("%d %d %d %d\n",nk,*nkp,wuyou,wy);
}
看到结果了么?是不是很吃惊啊?
≈ ≈ E ≈
-9 -9 69 247
大家看到了,南开的结果是负数,连原来的变量nk都变成了负数,这显然错了。
无忧的聪明一点,知道int比char大,定义了个int,对了。
南开错误原因就是在TC2.0中char型变量只有一个字节,根本容纳不下'E'*11,
所以产生了溢出,上次考这道题目没过的同学是不是有所启发呢?
这里给出考试中心命题组的答案:
void encryptChar(){
int i,k,ch;
for(i=0;i<maxline;i++)
for(k=0;k<strlen(xx[i]);k++){
ch=xx[i][k];
ch=(ch*11)%256;
if(!(ch<=32||ch>=130))xx[i][k]=ch;
}
}
似乎一个例子不能说明什么,那就把上面的数字题目的答案给大家看看:
考试中心命题组23题答案:
int i;
long val;
float dec;
for(i=0;i<N;i++){
val=(long)xx[i];
aver+=xx[i]-val;
}
aver/=(double)N;
for(i=0;i<N;i++){
val=(long)xx[i];
dec=xx[i]-val;
if(dec>aver){
sumint+=val;
sumdec+=(xx[i]-val);
}
}
看到了吧,首先,val的定义,不是我们习惯的int,而是能容纳更大数的 long ,
这样在求和的时候就不会溢出,无忧和南开的答案没有吧~
再看,算aver平均值的细节,不是我们平常习惯的aver/=N,更不是无忧的1.0* sum/N,
而是aver/=(double)N,所以大家在考试的时候要时刻注意你的变量类型,特别是在一些求平均值的题目中,千万要注意,用sum/n的时候,sum的类型一定不要用整形。

第三条:不要使用快捷键!!很多人在使用TC的时候习惯于用F9,CTRL+F9或者其他的热键,
首先F9只是编译了,并没有运行程序,考试一定要运行一下你的程序才会有输出文件,
否则一定是0分。
热键在考试的时候是很危险的,因为UCDOS的热键和TC的冲突,CTRL+F9变成了全角半角转换,
如果不小心按了,会导致你的程序有中文字符,编译的时候出错,而且很难查找排除错误~!
所以建议大家在考试的时候使用ALT+红色字母 来调出菜单进行编译调试等步骤,建议步骤为:
写完代码后用ALT+F,S存盘,然后ALT+C,M编译,然后ALT+R,R运行,这样就万无一失了。

第四条:不要加载任何输入法
上机考试用的DOS环境内存十分有限,如果你加载了任何一个输入法,都有可能造成编译程序的时候出现out of memory 内存不足的情况,到那时就麻烦了。
程序只要写的对就可以,不要画蛇添足的加注释,没有人看的~!
第五条:不要提前交卷!考场一般使用NOVELL网络,有的时候存在网络状况不好而连接失败等问题,
这时,如果你已经提前交卷的话就不太好了。另外也可以防止别人有意无意的改动你的程序。
第六条:考试时候的一些技巧。
1、进入TC以后如果想查看题干要求,不用退出TC,直接用F12就可以显示出来。
2、用F12显示题目之后可以通过CTRL+BACKSPACE把题目定在屏幕上。
3、编译运行之后,可以通过type out.dat或edit out.dat或tc out.dat查看输出文件。
(千万不要改动!不然影响考试结果。如果不小心改动,再重新编译运行一次你的程序就可以了)
4、如果考试的时候不小心改动了代码的主函数或其他部分,可以进入考生目录下的warn隐藏目录,
把里边的备份文件复制到考生目录。步骤:
在考生目录下输入cd warn
输入 *.c ..输入cd ..
就可以了
5、如果调试的时候不小心死循环了,可以通过CTRL+C或CTRL+BREAK来终止,如果连按多次都没反应,
不要慌,立即找监考老师说明情况,可以重新启动机器继续答原题,你的程序还在,时间也是继续刚才的。
所以这也提醒大家,运行程序之前一定要先存盘。

㈧ 求2011年九月以及以前的计算机二级考试C语言试题及答案、以及考试内容分析和解题技巧。记住只要C的。

(1)下面叙述正确的是________。
A)算法的执行效率与数据的存储结构无关
B)算法的空间复杂度是指算法程序中指令(或语句)的条数
C)算法的有穷性是指算法必须能在执行有限个步骤之后终止
D)算法的时间复杂度是指执行算法程序所需要的时间
(1)C
知识点:算法的基本概念;算法复杂度的概念和意义(时间复杂度与空间复杂度)
评 析:算法的设计可以避开具体的计算机程序设计语言,但算法的实现必须借助程序设计语言中提供的数据类型及其算法。数据结构和算法是计算机科学的两个重要支柱。它们是一个不可分割的整体。算法在运行过程中需辅助存储空间的大小称为算法的空间复杂度。算法的有穷性是指一个算法必须在执行有限的步骤以后结束。算法的时间复杂度是指执行算法所需要的计算工作量,即算法执行过程中所需要的基本运算次数。
(2)以下数据结构属于非线性数据结构的是________。
A)队列 B)线性表 C)二叉树 D)栈
(2)C
知识点:栈和队列的定义;栈和队列的顺序存储结构及其基本运算
评 析:线性表、栈和队列等数据结构所表达和处理的数据以线性结构为组织形式。栈是一种特殊的线性表,这种线性表只能在固定的一端进行插入和删除操作,允许插入和删除的一端称为栈顶,另一端称为栈底。一个新元素只能从栈顶一端进入,删除时,只能删除栈顶的元素,即刚刚被插入的元素。所以栈又称后进先出表(Last In First Out)。队列可看作是插入在一端进行,删除在另一端进行的线性表,允许插入的一端称为队尾,允许删除的一端称为队头。在队列中,只能删除队头元素,队列的最后一个元素一定是最新入队的元素。因此队列又称先进先出表(First In First Out)。二叉树的数据结构是树型结构,结构中数据元素之间存在着一对多的关系,因此它是一种非线性数据结构。
(3)在一棵二叉树上第8层的结点数最多是________。
A)8 B)16 C)128 D)256
(3)C
知识点:二叉树的定义及其存储结构
评 析:根据二叉树的性质:二叉树第i(I>1)层上至多有2i-1个结点。得到第8层的结点数最多是128。
(4)下面描述中,不符合结构化程序设计风格的是________。
A)使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑
B)自顶向下
C)注重提高程序的执行效率
D)限制使用goto语句
(4)C
知识点:结构化程序设计
评 析:结构化程序设计方法的四条原则是:1.自顶向下:2.逐步求精;3.模块化;4.限制使用goto语句。“自顶向下”是说,程序设计时,应先考虑总体,后考虑细节,先考虑全局目标,后考虑局部目标;“逐步求精’’是说,对复杂问题,应设计一些子目标作过渡,逐步细节化;“模块化”是说,一个复杂问题肯定是由若干稍简单的问题构成,解决这个复杂问题的程序,也应对应若干稍简单的问题,分解成若干稍小的部分。
(5)下面概念中,不属于面向对象方法的是________。
A)对象、消息 B)继承、多态 C)类、封装 D)过程调用
(5)D
知识点:面向对象的程序设计方法、对象、方法、属性及继承与多态性
评 析:面向对象方法是一种运用对象、类、封装、继承、多态和消息等概念来构造、测试、重构软件的方法。面向对象方法从对象出发,发展出对象、类、消息、继承等概念。
(6)在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是________。
A)可行性分析 B)需求分析 C)详细设计 D)程序编码
(6)B
知识点:结构化设计方法
评 析:软件开发阶段包括需求分析、总体设计、详细设计、编码和测试五个阶段。其中需求分析阶段常用的工具是数据流程图和数据字典。
(7)软件生命周期中所花费用最多的阶段是________。
A)详细设计 B)软件编码 C)软件测试 D)软件维护
(7)D
知识点:软件工程基本概念,软件生命周期概念,软件工具与软件开发环境
评 析:软件生命周期分为软件定义、软件开发及软件运行维护3个阶段。本题中详细设计、软件编码和软件测试都属于软件开发阶段;维护是软件生命周期的最后一个阶段,也是持续时间最长,花费代价最大的一个阶段,软件工程学的一个目的就是提高软件的可维护性,降低维护的代价。
(8)数据库系统的核心是________。
A)数据模型 B)DBMS C)软件工具 D)数据库
(8)B
知识点:数据库的基本概念:数据库,数据库管理系统,数据库系统
评 析:数据库管理系统DBMS是数据库系统的核心。DBMS是负责数据库的建立、使用和维护的软件。DBMS建立在操作系统之上,实施对数据库的统一管理和控制。用户使用的各种数据库命令以及应用程序的执行,最终都必须通过DBMS。另外,DBMS还承担着数据库的安全保护工作,按照DBA所规定的要求,保证数据库的完整性和安全性。
(9)下列叙述中正确的是________。
A)数据处理是将信息转化为数据的过程
B)数据库设计是指设计数据库管理系统
C)如果一个关系中的属性或属性组并非该关系的关键字,但它是另一个关系的关键
字,则称其为本关系的外关键字
D)关系中的每列称为元组,一个元组就是一个字段
(9)C
知识点:数据模型,实体联系模型及E-R图,从E-R图导出关系数据模型
评 析:数据处理是指将数据转换成信息的过程,故选项A叙述错误;设计数据库的目的实质上是设计出满足实际应用需求的实际关系模型,故选项B叙述错误;关系中的行称为元组,对应存储文件中的记录,关系中的列称为属性。对应存储文件中的字段,故D选项叙述错误。
(10)下列模式中,_______是用户模式。
A)内模式 B)外模式 C)概念模式 D)逻辑模式
(10)B
知识点:数据库的基本概念:数据库,数据库管理系统,数据库系统
评 析:数据库管理系统的三级模式结构由外模式、模式和内模式组成。外模式,或称子模式,或称用户模式,是指数据库用户所看到的数据结构,是用户看到的数据视图。模式,或称逻辑模式,是数据库中对全体数据的逻辑结构和特性的描述,是所有用户所见到的数据视图的总和。外模式是模式的一部分。内模式,或称存储模式,或称物理模式,是指数据在数据库系统内的存储介质上的表示。即对数据的物理结构和存取方式的描述。
36)算法的时间复杂度是指_______。
A)执行算法程序所需要的时间
B)算法程序的长度
C)算法执行过程中所需要的基本运算次数
D)算法程序中的指令条数
(36)C
知识点:算法复杂度的概念和意义(时问复杂度与空间复杂度)
评析:所谓算法的时间复杂度,是指执行算法所需要的计算工作量。为了能够比较客观地反映出一个算法的效率,在度量一个算法的工作量时,不仅应该与所使用的计算机、程序设计语言以及程序编制者无关,而且还应该与算法实现过程中的许多细节无关。为此,可以用算法在执行过程中所需基本运算的执行次数来度量算法的工作量。
(37)下列叙述中正确的是_______。
A)线性表是线性结构 B)栈与队列是非线性结构
C)线性链表是非线性结构 D)二叉树是线性结构
(37)A
知识点:线性结构与非线性结构的概念
评析:根据数据结构中各数据元素之间相关联关系的复杂程度,一般将数据结构分为两大类型:线性结构与非线性结构。如果一个非空的数据结构满足下列两个条件: (1)有且只有一个根结点; (2)每一个结点最多有一个前件,也最多有一个后件。则称该数据结构为线性结构,又称线性表。所以线性表、栈与队列、线性链表都是线性结构,而二叉树是非线性结构。
(38)下面关于完全二叉树的叙述中,错误的是_______。
A)除了最后一层外,每一层上的结点数均达到最大值
B)可能缺少若干个左右叶子结点
C)完全二叉树一般不是满二叉树
D)具有结点的完全二叉树的深度为[log2n]+l
(38)B
知识点:二叉树的定义及其存储结构
评析:这里考察完全二又树与满二叉树的定义及二叉树的性质。满二叉树指除最后一层外每一层上所有结点都有两个子结点的二叉树。完全二叉树指除最后一层外,每一层上的结点数均达到最大值,在最后一层上只缺少右边的若干子结点(叶子结点)的二叉树。因此选项A是正确的,而选项B是错误的。由定义可知,满二叉树肯定是完全二又树,而完全二又树一般不是满二叉树,因此选项c是正确的叙述。选项D即二又树性质(5),也是正确的。
(39)结构化程序设计主要强调的是_______。
A)程序的规模 B)程序的易读性
C)程序的执行效率 D)程序的可移植性
(39)B
知识点:结构化程序设计
评析:结构化程序设计主要强调的足结构化程序清晰易读,可理解性好,程序员能够进行逐步求精、程序证明和测试.以保证程序的正确性。
(40)在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是_______。
A)概要设计 B)详细设计 C)可行性分析 D)需求分析
(40)D
知识点:软件工程基本概念,软件生命周期概念,软件工具与软件开发环境
评析:通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期。也就是说,软件产品从考虑其概念开始,到该软件产品不能使用为止的整个时期都属于软件生命周期。软件生命周期的主要活动阶段为:
① 可行性研究和计划制定。确定待开发软件系统的开发目标和总的要求,给出它的功能、性能、可靠性以及接口等方面的可行方案,制定完成开发任务的实施计划。
②需求分析。对待开发软件提出的需求进行分析并给出详细定义,即准确地确定软件系统的功能。编写软件规格说明书及初步的用户手册,提交评审。
③软件设计。系统设计人员和程序设计人员应该在反复理解软件需求的基础上,给出软件的结构、模块的划分、功能的分配以及处理流程。
④软件实现。把软件设计转换成计算机可以接受的程序代码。即完成源程序的编码,编写用户手册、操作手册等面向用户的文档,编写单元测试计划。
⑤软件测试。在设计测试用例的基础上,检验软件的各个组成部分。编写测试分析报告。
⑥运行和维护。将已交付的软件投入运行,并存运行使用中不断地维护,根据新提出的需求进行必要而且可能的扩充和删改。
(41)数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是_______。
A)控制流 B)加工 C)数据存储 D)源和潭
(41)A
知识点:结构化分析方法,数据流图,数据字典,软件需求规格说明书
评析:数据流图从数据传递和加工的角度,来刻画数据流从输入到输出的移动变换过程。数据流图中的主要图形元素有:加工(转换)、数据流、存储文件(数据源)、源和潭。
(42)软件需求分析一般应确定的是用户对软件的_______。
A)功能需求 B)非功能需求 C)性能需求 D)功能需求和非功能需求
(42)D
知识点:结构化设计方法
评析:软件需求分析中需要构造一个完全的系统逻辑模型,理解用户提出的每一功能与性能要求,是用户明确自己的任务。因此,需求分析应确定用户对软件的功能需求和非功能需求。
(43)下述关于数据库系统的叙述中正确的是_______。
A)数据库系统减少了数据冗余
B)数据库系统避免了一切冗余
C)数据库系统中数据的一致性是指数据类型的一致
D)数据库系统比文件系统能管理更多的数据
(43)A
知识点:数据库的基本概念:数据库,数据库管理系统,数据库系统
评析:由于数据的集成性使得数据可为多个应JH=j所共享,特别是在网络发达的今天,数据库与网络的结合扩大了数据关系的应用范围。数据的共享自身义可极大地减少数据冗余性,不仅减少了不必要的存储空间,更为重要的是可以避免数据的不一致性。所谓数据的一致性是指在系统中同一数据的不同出现应保持相同的值,而数据的不一致性指的是同一个数据在系统的不同拷贝处有不同的值。
(44)关系表中的每一横行称为一个_______。
A)元组 B)字段 C)属性 D)码
(44)A
知识点:数据库的基本概念:数据库.数据库管理系统,数据库系统
评析:在关系数据库中,关系模型采用二维表来表示,简称“表”。二维表是由表框架及表元组组成。在表框架中,按行可以存放数据,每行数据称为元组。
(45)数据库设计包括两个方面的设计内容,它们是_______。
A)概念设计和逻辑设计 B)模式设计和内模式设计
C)内模式设计和物理设计 D)结构特性设计和行为特性设计
(45)A
知识点:数据库设计方法和步骤:需求分析、概念设计、逻辑设计和物理设计的相关策略
评析:数据库设计可分为概念设计与逻辑设计。数据库概念设计的目的是分析数据问内存语义关联,在此基础上建立一个数据的抽象模型。数据库逻辑设计的主要工作是将E-R图转换为指定的RDBMS中的关系模型。
(61)字符(char)型数据在微机内存中的存储形式是________。
A)反码 B)补码
C)EBCDIC码 D)ASCII码
(61)D
知识点:字符数据在内存中的存储形式
评析:将一个字符常量放到一个字符变量中,实际上并不是把该字符本身放到内存单元中去,而是将该字符的ASCII码值放到存储单元中。
71)算法的空间复杂度是指_______。
A)算法程序的长度 B)算法程序中的指令条数
C)算法程序所占的存储空间 D)算法执行过程中所需要的存储空间
(71)D
知识点:算法的复杂度
评析:一个算法的空间复杂度,一般是指执行这个算法所需的内存空间。
一个算法所占用的存储空间包括算法程序所占的空间、输入的初始数据所占的存储空间以及算法执行过程中所需要的额外空间。
(72)下列关于栈的叙述中正确的是_______。
A)在栈中只能插入数据 B)在栈中只能删除数据
C)栈是先进先出的线性表 D)栈是先进后出的线性表
(72)D
知识点:栈的输入输出操作
评析:栈是限定在一端进行插入与删除的线性表。
栈是按照“先进后出”的或“后进先出”的原则组织数据的,因此,栈也被称为“先进后出”表或“后进先出”表。
(73)在深度为5的满二叉树中,叶子结点的个数为_______。
A)32 B)31 C)16 D)15
(73)C
知识点:二叉树的概念
评析:所谓满二叉树是指除最后一层外,每层上的所有结点都有两个子结点。也就是说,在满二又树中,每一层上的结点数都达到最大值,即在满二叉树的第K层上有2k-1个结点,且深度为m的满二叉树有2m个结点。
在满二叉树中,最后一层的结点个数就是叶子结点的个数,本题中深度为5,故叶子结点数为25-1=24==16。
(74)对建立良好的程序设计风格,下面描述正确的是_______。
A)程序应简单、清晰、可读性好 B)符号名的命名要符合语法
C)充分考虑程序的执行效率 D)程序的注释可有可无
(74)A
知识点:程序设计风格
评析:要形成良好的程序设计风格,主要应注重和考虑下述一些因素:符号名的命名应具有一定的实际含义,以便于对程序功能的理解;正确的注释能够帮助读者理解程序;程序编写应优先考虑清晰性,除非对效率有特殊要求,程序编写要做到清晰第一,效率第二。
(75)下面对对象概念描述错误的是_______。
A)任何对象都必须有继承性 B)对象是属性和方法的封装体
C)对象问的通讯靠消息传递 D)操作是对象的动态性属性
(75)A
知识点:对象的概念
评析:对象是由数据和容许的操作组成的封装体,与客观实体有直接的对应关系。对象之间通过传递消息互相联系,以模拟现实世界中不同事物彼此之间的联系。
(76)下面不属于软件工程的3个要素的是_______。
A)工具 B)过程 C)方法 D)环境
(76)D
知识点:软件:[程的要素
评析:软件工程包括3个要素,即方法、工具和过程。
(77)程序流程图(PFD)中的箭头代表的是_______。
A)数据流 B)控制流 C)调用关系 D)组成关系
(77)B
知识点:软件设计工具
评析:程序流程图(PFD)是一种传统的、应用广泛的软件过程设计表示工具,通常也称为程序框图,其箭头代表的是控制流。
(78)在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。其中数据独立性最高的阶段是_______。
A)数据库系统 B)文件系统 C)人工管理 D)数据项管理
(78)A
知识点:数据管理技术的发展
评析:在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。其中数据独立性最高的阶段是数据库系统。

㈨ C语言笔试或面试一般会问到什么问题

既然是面试,一定要提前准备,最好准备一套自我介绍,包括对IT行业的看法之类,面试官经常会问这些问题。

由于c语言是程序员工作语种的其中1个,所以对于程序员这个工种,还是有一些具体的注意事项:

第一、基础很重要,不要生疏了。

不管应聘什么开发岗位,基础永远是最重要的。IT业不停地在炒作新概念,昨天是SOA,今天是云计算。我们永远不知道明天流行什么,但是只要有踏实的基础,辅以较好的学习能力,要跟上步伐也不会太难。所以绝大多数公司都会特别看重应聘人员的基础能力,比如编程语言本身的特性、基本的算法和数据结构、进程间通信等等,毕竟这些具体技术问题有客观的答案,而且在各具体行业都是相通的。
工作三年以上的人,往往都习惯了“拷贝+修改”式的工作,用不到的基础知识基本上都忘掉了,一到应聘的时候就难免眼高手低,总是抓不住机会。
而事实上,技术基础即便是遗忘了,也是可以很快捡起来的。如果求职者确实忘了很多基础知识,那么参加面试的前夜,花点时间把大学里的课本再翻出来看看吧。似乎很土的方法,但确实是有效的。

第二、要关注技术前沿。

不管做任何工作,如果只顾着低头做事,而不晓得抬头看天。那么不管做多久,自身的水平总是停留在毕业时的水平;如果基础又忘记了太多,那还不如毕业生。
关注技术前沿,并不是要求跟进每一个新技术,而只需关注目前主流媒体经常宣传的一些新技术、新思想。关注这些技术前沿的动向,并能与自己从事的工作联系起来作一些深入思考,那么这是向面试官宣扬求职者的学习能力的一种好办法。

第三、小公司比较看重知识的广度,大公司更看重知识的深度。

如果求职业想去一些小公司工作,那么由于他们人少,分工没那么细,所以用人单位大多喜欢知识面广的应聘者——求职者会听到更多的“怎么做”。对于应聘这样的公司,求职者可以着重培养知识的广度,比如做网站后台开发,最好也能js、css、apache、mysql都懂一些,能独自搭建一套完整的网站,这样去很多小公司难度都不太大。但是由于个人的精力总是有限的,所以要注意不要铺得太开,重点还是在后台开发本身。
而大公司由于分工比较明细,所以往往更喜欢考量重点知识面的深度——求职者会听到更多的“为什么”。所以平常解决问题时,不要光搜索一把解决了就完了,还需要仔细研究各种问题的来龙去脉,并能分析总结,将这些收获系统化、理论化。
当然,广度和深度的需求不是绝对的,一个优秀的开发人员应该对至少一到两个专业领域有着深入的了解,并熟悉其他相关领域,也就是所谓的一专多能。

第四、良好的简历设计可以为你的应聘加分。

社会应聘的简历往往比校园应聘的简历写得随意,因为有工作经验的人往往认为面试官会更看重他的工作经验,而不是简历格式。其实不然。
大多数简历只会出现在面试官面前10秒到1分钟不等。这个短短的时间内,如何让求职者脱颖而出?这个方面有很多的攻略,我只说重点建议,不解释原因。
一是简历要突出优势,而不是描述经历。比如出身名校、就职过名企、参与过着名项目、拿过大奖,这些比较客观的优势要重点突出。如果求职者没有UI的功底,那么简单地放大加粗也可以达到效果。当然有些公司只接受文本型简历,那就设法加一些特殊符号吧。
二是技术简历减少模糊化的语句,最好能数字化。例如项目代码量,维护的数据量,网站的访问量,请求平均耗时等等。
三是简历要能结合应聘岗位做一些匹配的修改。撇开招聘网站通用的简历不谈,如果求职者明确对一个特定公司的特定岗位投出简历,那么求职者有必要把跟对应岗位无关的内容弱化,并强化跟其业务相关的内容。如果实在行业差别太大,那么表达几句对其行业的见解和兴趣也是可以的。

第五、要有积极的沟通意识。

优秀的面试官会激励应聘者讲他原先工作的内容,并从而评估出应聘者的能力水平。但隔行如隔山,绝大多数面试官会慢慢将问题引向自己熟悉的领域——这往往又是应聘者不太熟悉的领域。这就要求应聘者能积极分析面试官的兴趣点,并将自己相近的特长表现出来。
如果跟面试官有了意见冲突,也尽量不要再同一个问题上纠缠。那也许是故意制造的陷阱——看看求职者的团队意识。应聘者需要明白的是,在面试场合中不要妄图“战胜”面试官,即便是碰上一个期望“战胜”应聘者的面试官。

第六、要有良好的表达能力。

没有哪个面试官喜欢啰啰嗦嗦说了半天还是没说到点子上的应聘者,所以要尽量简明扼要地回答问题,除非面试官确实表现出对具体细节的兴趣。 回答问题时注意面试官的情绪变化,一旦他表现出任何想打断的意愿,立即一句话结束这个话题。有些比较复杂的问题,可以先思考十到二十秒钟,因为一旦开口就没有思考的时间,话多的人不容易收住话题。
跟学校考试不一样,大多数主观性问题并不要求应聘者一二三四说得滴水不漏,能说到大部分关键点就是可以的了。另外注意,各种技术术语不要搞混了。搞不清楚的理论概念,不如不说。免得面试官听到个术语就拉出来穷追猛打,把自己问挂。

第七、自信。

大多数做技术的,平时都信心满满,一到应聘的时候却总觉得自己不懂的东西还太多。回答问题时声音太小,或者畏畏缩缩用很多“可能”“也许”“大概”。这个不一定影响求职者的录用,但是不自信的表现无疑会影响在跟HR谈薪水时候的议价能力。所以,无论如何,应聘的时候表现得轻松镇定一些,还是很有好处的。
当然,自信和自大之间往往只有一线之差。千万小心,不要过度地表现自信搞成了自大,因为HR往往对这一点非常敏感。如果求职者只是要谨慎地表现自信的话,只要回答问题时面带微笑就够了。
最后需要特别提醒的是,以上种种其实只不过是应聘时的技巧和注意点而已。职业规划需要有长远的眼光和坚持不懈的学习。台上一分钟,台下十年功。真正的实力还是要在平时工作和学习中进行积累。

㈩ 程序员考试都考哪些内容

程序员要考 计算机基础,操作系统,数据库,多媒体,网络基础,程序设计基础,软件工程基础,数据结构与算法,标准化和知识产权,安全基础知识,C语言,以及从VB、C++、JAVA三种语言选一种。
考试形式分为上午考试和下午考试(各75分,150分钟,一共150分,300分钟)
上午考试内容:计算机基础,操作系统,数据库,多媒体,网络基础,程序设计基础,软件工程基础,数据结构与算法,标准化和知识产权,安全基础知识,计算机英语(其中硬件基础,网络基础,程序设计基础,软件工程占的比重更大)。
下午考试内容:C语言,数组,数据结构及常用算法,以及从VB、C++、JAVA三种语言选一种。(二维数组,数据结构中的堆栈及排序等考得比较多。)

阅读全文

与c语言程序员笔试题相关的资料

热点内容
keil5一编译axf就缺失了 浏览:506
现代电机控制技术pdf 浏览:449
手机系统加密形同虚设是真的吗 浏览:739
电视怎么连接播放app 浏览:680
pdf怎么转换成word工具 浏览:865
c语言程序员成长 浏览:887
火影忍者手游助手app怎么下 浏览:832
1997年四川空气压缩机厂 浏览:161
思科配置保存命令是什么 浏览:11
python培训知乎 浏览:755
作业文件夹怎么收藏 浏览:529
安卓系统如何授权悬浮窗 浏览:977
压缩包加密可以用汉语吗 浏览:948
ip池源码 浏览:490
缓解压力大放松一下的地方 浏览:928
工厂哪里用压缩空气 浏览:328
centos如何安装php 浏览:110
丹凤服务器是什么 浏览:148
分析html5源码 浏览:994
资治通鉴中华书局pdf 浏览:212