
卖家暂未授权典枢平台对该文件进行数据验证,您可以向卖家
申请验证报告
。 数据描述
目录
Content
Chapter_1
Chapter_1
怎样学习C语言
很多人对学习C语言感到无从下手,经常问我同一个问题:究竟怎样学习C语言?我是一个教师,已经开发了很多年的程序,和很多刚刚起步的人一样,学习的第一个计算机语言就是C语言。经过这些年的开发,我深深的体会到C语言对于一个程序设计人员多么的重要,如果不懂C语言,你想写底层程序这几乎听起来很可笑,不懂C语言,你想写出优秀高效的程序,这简直就是天方夜谭。为什么C语言如此重要呢?
第一:C语言语法结构很简洁精妙,写出的程序也很高效,很便于描述算法,大多数的程序员愿意使用C语言去描述算法本身,所以,如果你想在程序设计方面有所建树,就必须去学它。
第二:C语言能够让你深入系统底层,你知道的操作系统,哪一个不是C语言写的?所有的windows,Unix,Linux,Mac,os/2,没有一个里外的,如果你不懂C语言,怎么可能深入到这些操作系统当中去呢?更不要说你去写它们的内核程序了。
第三:很多新型的语言都是衍生自C语言,C++,Java,C#,J#,perl...哪个不是呢?掌握了C语言,可以说你就掌握了很多门语言,经过简单的学习,你就可以用这些新型的语言去开发了,这个再一次验证了C语言是程序设计的重要基础。还有啊,多说一点:即使现在招聘程序员,考试都是考C语言,你想加入it行业,那么就一定要掌握好C语言。
那么究竟怎样学习C语言呢?
1:工欲善其事,必先利其器
这里介绍几个学习C语言必备的东东:
一个开发环境,例如turbo?C?2.0,这个曾经占据了DOS时代开发程序的大半个江山。但是现在windows时代,用turbo?C有感觉不方面,编辑程序起来很吃力,并且拖放,更没有函数变量自动感应功能,查询参考资料也不方便。建议使用Visual C++,这个东西虽然比较大块头,但是一旦安装好了,用起来很方便。
一本学习教程,现在C语言教材多如牛毛,但推荐大家使用《C语言程序设计》谭浩强主编 第二版 清华大学出版社,此书编写的很适合初学者,并且内容也很精到。
除此以外,现在有很多辅助学习的软件,毕竟现在是Window时代了,学习软件多如牛毛,不象我们当初学习,只有读书做题这么老套。我向大家推荐一个“集成学习环境(C语言)”,里边的知识点总结和例程讲解都非常好,还有题库测试环境,据说有好几千题,甚至还有一个windows下的trubo?C,初学者甚至不用装其它的编译器,就可以练习编程了,非常适合初学者。还有一个“C语言学习系统”软件,不过感觉只是一个题库系统,如果你觉得题做的不够,不妨也可以试试。
2:葵花宝典
学习计算机语言最好的方法是什么?答曰:读程序。
没错,读程序是学习C语言入门最快,也是最好的方法。如同我,现在学习新的J#,C#等其他语言,不再是抱着书本逐行啃,而是学习它们的例程。当然,对于没有学过任何计算机语言的初学者,最好还是先阅读教程,学习完每一章,都要认真体会这一章的所有概念,然后不放过这一章中提到的所有例程,然后仔细研读程序,直到每一行都理解了,然后找几个编程题目,最好是和例程类似的或一样的,自己试图写出这段已经读懂的程序,不要以为例程你已经读懂了,你就可以写出和它一样的程序,绝对不一定,不相信你就试一试吧,如果写不出来,也不要着急,回过头来再继续研究例程,想想自己为什么写不出来,然后再去写这段程序,反反复复,直到你手到擒来为止,祝贺你,你快入门了。
3:登峰造极
写程序的最高境界其实就是掌握各种解决问题的手段(数据结构)和解决问题的方法(算法)。?
是不是写出底层程序就是程序设计高手呢?非也,写底层程序,无非是掌握了硬件的结构,况且硬件和硬件还不一样,要给一个芯片写驱动程序,无非就是掌握这块芯片的各种寄存器及其组合,然后写值读值,仅此而已。这不过是熟悉一些io函数罢了。
那么怎样才算精通程序设计呢?怎样才能精通程序设计呢?举个例子:你面前有10个人,找出一个叫“张三”的人,你该怎么办?第一种方法:直接对这10个人问:“谁叫张三”。第2种方法:你挨个去问“你是不是张三?”,直到问到的这个人就是张三。第三种方法:你去挨个问一个人“你认不认识张三,指给我看”。不要小看这个问题,你说当然会选第一种方法,没错恭喜你答对了,因为这个方法最快,效率最高,但是在程序设计中找到解决问题的最优方法和你用的手段却是考验一个程序员程序设计水平的重要标志,而且是不容易达到的。刚才这个问题类似于数据结构和算法中的:Map数据结构,穷举查找和折半查找。所以掌握好数据结构和一些常用算法,是登峰造极的必然之路。
C语言考试复习五要点
一、了解试卷,胸中有数
综观近几年全国计算机等级二级基础部分和C语言程序设计的题目,笔试中大多数考题是与大纲要求的基本内容一致的,难度不高,但内容十分广泛,应牢固掌握。所以,全面复习非常重要。
二、深刻理解,强化概念
对于计算机的基础知识和体系,应注意理解,切忌死记硬背。例如,可以把计算机硬件系统的结构图与实物对照着去理解:控制器和运算器常常集成在一起,称为CPU;存储器分为两种:内存和外存,只有内存才能与CPU直接打交道;所有这些部件又由总线将其联结为一体,这种计算机又称为总线式计算机;又如,计算机之所以称为电脑,就是因为计算机的硬件结构、处理问题的方式和人的大脑结构以及处理问题的方式基本一致。采用对照、总结、联想的方法来复习这些内容,比死记硬背效果要好得多。
三、归纳整理,适当记忆
另一部分需要记忆的知识是计算机基础知识、基本概念。这些内容看似不起眼,但如果不适当加以记忆,考试时因此失分十分可惜。如:1946年至今,计算机发展已经历了四个时代,这四个时代是如何划分的?一个计算机系统都由哪几部分组成?各部分关系怎样?我们可以在理解的基础上归纳整理,适当记忆。需要适当记忆的内容对初学者来说还有许多,如在C语言中有几类不同类型的数据,各类数据在机器内部是如何存储的?C语言中的运算符都有哪些?运算的优先级别、结合方向怎样等。
四、注重实践,融会贯通
计算机是一门理论性、实践性都很强的学科,对二级考试的参加者来说,基础理论方面要求不是特别深入,卷面中的题目大多数都可以上机实践。因此,注重实践,更显得重要。考生应在对基本知识理解的同时注意多上机实践,通过实践,将所学知识融会贯通。
五、多做练习,查漏补缺
在认真地学完考试指定用书后,你可能已雄心勃勃,充满信心。但千万别高兴过早。再找一些题集,认真地测试一下,一则可以看看你究竟学习得如何,二则可以查漏补缺,将还没有掌握的内容补起来,以备正式考试时万无一失。即使在平时,也应这样。多做练习,多加思考,在解题中下功夫,是学好计算机的关键。我国著名数学家华罗庚说过:“学数学不做练习,好比入宝山而空返。”学习计算机也是同样的道理。
C语言学习要领
1、计算机语言挺枯燥的,如何提起兴趣
答:首先要明确学习的目标,没有明确的学习目标就没有学习动力。给自己定一个目标,比如这次一定通过计算机等级考试,或者这个月学习完做个东西出来等等。其次,确定了目标之后,要认真去做,多上机操作实践,遇到不懂的要多跟教师和其他学员交流,千万不能放弃。当自己编的一段小程序运行通过,或攻下一道难题,自己就会获得一种成就感,可能还会很兴奋,也就渐渐有了兴趣。最后,要把所学的知识运用到实际问题当中,这样既可以巩固所学的知识,不至于完学了就忘,还可以根据实际需要拓展知识面。这样良性循环,兴趣也会越来越浓。
2、有学员来信问到:我的电脑里安装的TURBO?C(970K)不能正常的编译,现象是:在编译过程中,提示没有错误也没有警告,按任意键返回,可是在电脑上不能生成"OBJ"文件,有时提示:Unable to open input file’cos.obj’,我的朋友从他们学校的PC上拷贝回来的程序也出现这个问题?!在他们学校却很正常,这是怎么回事?这个问题一直在困扰我,使我的学习不能进行下去!请帮我解决。谢谢!
答:这需要重新设置options--directories中的include目录和lib目录,设为你C的安装目录就可以了。记住要保存哟!
3、#include
main()
{int m=7,n=4;
float a=38.4,b=6.4,x;
x=m/2+n*a/b+1/2;
printf("%f\n",x);
}
这个程序的结果是27.000000
为什么我一直算的是28.000000呢?请指教
答:main()
{
int m=7,n=4;
float a=38.4,b=6.4,x;
x=m/2+n*a/b+1/2;
printf("%f\n",x);
}
m/2==3;因为m是整形所以结果为整形不是3.5而是3
同样1/2不是0.5而是0。
要改的话,x=(float)m/2+n*a/b+1.0/2.0;
结果为28.0000
4、有些人说我的程序很难让人看懂,请问如何将程序写得规范、简洁明了
答:这是编程中重要的一点,要养成良好的编程习惯。请看一个例题:程序很简单,是用TURBO C编一个时钟程序。具体如下:
/****************************************************
Module:clock.c
just a test of my programming ability
*****************************************************/
#include"math.h"
#include"dos.h"
#include"stdio.h"
#include"graphics.h"
main()
{
char s[30];
int gdriver,gmode;
int cosh,sinh,cosm,sinm,coss,sins;
struct ;time t;
char keydown=0;
int x=300,y=160,r=40;
clrscr();
gdriver=9; gmode=1;
initgraph(&gdriver,&gmode,"a:\\");/*需要说明的是,第三个参数a:\\是egavga.bgi这个文件的路径*/
/* install the graphic device.the third parameter is the path of the driver*/
setbkcolor(0);
setcolor(WHITE);
while(1)
{
circle(x,y,r);/*paintthecircle*/
line(x,y+r-10,x,y+r-12);
line(x+r-4,y,x+r,y);
line(x-r,y,x-r+4,y);
line(x,y-r+10,x,y-r+10+2); /* draw the fout scales */
gettime(&t);
sprintf(s,"The current time is %2d:%02d:%02d\n",t.ti_hour,t.ti_min,t.ti_sec,t);
outtextxy(0,0,s); /* out put the current time */
outtextxy(0,10,"This clock is written by lijun"); /*?show the auther */
coss=(int)((r-10)*cos(t.ti_sec*3.14f/30-3.14f/2)+x);
sins=(int)((r-10)*sin(t.ti_sec*3.14f/30-3.14f/2)+y);
cosm=(int)((r-19)*cos(t.ti_min*3.14f/30-3.14f/2)+x);
sinm=(int)((r-19)*sin(t.ti_min*3.14f/30-3.14f/2)+y);
cosh=(int)((r-28)*cos((t.ti_hour+(float)(t.ti_min)/60)*3.14f/6-3.14f/2)+x);
sinh=(int)((r-28)*sin((t.ti_hour+(float)(t.ti_min)/60)*3.14f/6-3.14f/2)+y);
/* calculate the position of the three points */
setcolor(14);
line(x,y,coss,sins);
setcolor(13);
line(x,y,cosm,sinm);
setcolor(10);
line(x,y,cosh,sinh);
setcolor(15);
/* draw the points */
sleep(1);
clrscr();&nb
sp;
keydown=kbhit();/* check whether key down */
if(keydown)
{
closegraph();/* close graphic device */
exit(0);
}
}
}
全国计算机等级考试二级C语言程序设计要求
(1999年09考次以后新大纲)
(一)C语言的结构
1。程序的构成,main函数和其他函数。
2。头文件、数据说明、函数的开始和结束标志。
3。源程序的书写格式。
4。C语言的风格。
(二)数据类型及其运算
1。C的数据类型(基本类型、构造类型、指针类型、空类型)及其定义方法。
2。C运算符的种类、运算优先级和结合性。
3。不同类型数据间的转换与运算。
4。C表达式类型(赋值表达、算术表达式、关系表达式、逻辑表达式、条件表达式、逗号表达式)和求值规则。
(三)基本语句
1。表达式语句,空语句,复合语句。
2。数据的输入与输出,输入输出函数的调用。
3。复合语句。
4。goto语句和语句标号的使用。
(四)选择结构程序设计
1。用if语句实现选择结构。
2。用switch语句实现多分支选择结构。
3。选择结构的嵌套
(五)循环结构程序设计
1。for循环结构。
2。while和dowhile循环结构。
3。continue语句和break语句。
4。循环的嵌套。
(六)数组定义和引用
1。一维数组和多维数组的定义、初始化和引用。
2。字符串与字符数组。
(七)函数
1。库函数的正确调用。
2。函数的定义方法。
3。函数的类型和返回值。
4。形式参数与实在参数,参数值的传递。
5。函数的正确调用,嵌套调用,递归调用。
6。局部变量和全局变量。
7。变量的存储类别(自动、静态、寄存器、外部),变量的作用域和生存期。
8。内部函数与外部函数。
(八)编译预处理
1。宏定义:不带参数的宏定义;带参数的宏定义。
2。“文件包含”处理
(九)指针
1。指针与指针变量的概念,指针与地址运算符。
2。变量、数组、字符串、函数、结构体的指针以及指向变量、数组、字符串、函数、结构体的指针变
Content
Chapter_1
Chapter_1
怎样学习C语言
很多人对学习C语言感到无从下手,经常问我同一个问题:究竟怎样学习C语言?我是一个教师,已经开发了很多年的程序,和很多刚刚起步的人一样,学习的第一个计算机语言就是C语言。经过这些年的开发,我深深的体会到C语言对于一个程序设计人员多么的重要,如果不懂C语言,你想写底层程序这几乎听起来很可笑,不懂C语言,你想写出优秀高效的程序,这简直就是天方夜谭。为什么C语言如此重要呢?
第一:C语言语法结构很简洁精妙,写出的程序也很高效,很便于描述算法,大多数的程序员愿意使用C语言去描述算法本身,所以,如果你想在程序设计方面有所建树,就必须去学它。
第二:C语言能够让你深入系统底层,你知道的操作系统,哪一个不是C语言写的?所有的windows,Unix,Linux,Mac,os/2,没有一个里外的,如果你不懂C语言,怎么可能深入到这些操作系统当中去呢?更不要说你去写它们的内核程序了。
第三:很多新型的语言都是衍生自C语言,C++,Java,C#,J#,perl...哪个不是呢?掌握了C语言,可以说你就掌握了很多门语言,经过简单的学习,你就可以用这些新型的语言去开发了,这个再一次验证了C语言是程序设计的重要基础。还有啊,多说一点:即使现在招聘程序员,考试都是考C语言,你想加入it行业,那么就一定要掌握好C语言。
那么究竟怎样学习C语言呢?
1:工欲善其事,必先利其器
这里介绍几个学习C语言必备的东东:
一个开发环境,例如turbo?C?2.0,这个曾经占据了DOS时代开发程序的大半个江山。但是现在windows时代,用turbo?C有感觉不方面,编辑程序起来很吃力,并且拖放,更没有函数变量自动感应功能,查询参考资料也不方便。建议使用Visual C++,这个东西虽然比较大块头,但是一旦安装好了,用起来很方便。
一本学习教程,现在C语言教材多如牛毛,但推荐大家使用《C语言程序设计》谭浩强主编 第二版 清华大学出版社,此书编写的很适合初学者,并且内容也很精到。
除此以外,现在有很多辅助学习的软件,毕竟现在是Window时代了,学习软件多如牛毛,不象我们当初学习,只有读书做题这么老套。我向大家推荐一个“集成学习环境(C语言)”,里边的知识点总结和例程讲解都非常好,还有题库测试环境,据说有好几千题,甚至还有一个windows下的trubo?C,初学者甚至不用装其它的编译器,就可以练习编程了,非常适合初学者。还有一个“C语言学习系统”软件,不过感觉只是一个题库系统,如果你觉得题做的不够,不妨也可以试试。
2:葵花宝典
学习计算机语言最好的方法是什么?答曰:读程序。
没错,读程序是学习C语言入门最快,也是最好的方法。如同我,现在学习新的J#,C#等其他语言,不再是抱着书本逐行啃,而是学习它们的例程。当然,对于没有学过任何计算机语言的初学者,最好还是先阅读教程,学习完每一章,都要认真体会这一章的所有概念,然后不放过这一章中提到的所有例程,然后仔细研读程序,直到每一行都理解了,然后找几个编程题目,最好是和例程类似的或一样的,自己试图写出这段已经读懂的程序,不要以为例程你已经读懂了,你就可以写出和它一样的程序,绝对不一定,不相信你就试一试吧,如果写不出来,也不要着急,回过头来再继续研究例程,想想自己为什么写不出来,然后再去写这段程序,反反复复,直到你手到擒来为止,祝贺你,你快入门了。
3:登峰造极
写程序的最高境界其实就是掌握各种解决问题的手段(数据结构)和解决问题的方法(算法)。?
是不是写出底层程序就是程序设计高手呢?非也,写底层程序,无非是掌握了硬件的结构,况且硬件和硬件还不一样,要给一个芯片写驱动程序,无非就是掌握这块芯片的各种寄存器及其组合,然后写值读值,仅此而已。这不过是熟悉一些io函数罢了。
那么怎样才算精通程序设计呢?怎样才能精通程序设计呢?举个例子:你面前有10个人,找出一个叫“张三”的人,你该怎么办?第一种方法:直接对这10个人问:“谁叫张三”。第2种方法:你挨个去问“你是不是张三?”,直到问到的这个人就是张三。第三种方法:你去挨个问一个人“你认不认识张三,指给我看”。不要小看这个问题,你说当然会选第一种方法,没错恭喜你答对了,因为这个方法最快,效率最高,但是在程序设计中找到解决问题的最优方法和你用的手段却是考验一个程序员程序设计水平的重要标志,而且是不容易达到的。刚才这个问题类似于数据结构和算法中的:Map数据结构,穷举查找和折半查找。所以掌握好数据结构和一些常用算法,是登峰造极的必然之路。
C语言考试复习五要点
一、了解试卷,胸中有数
综观近几年全国计算机等级二级基础部分和C语言程序设计的题目,笔试中大多数考题是与大纲要求的基本内容一致的,难度不高,但内容十分广泛,应牢固掌握。所以,全面复习非常重要。
二、深刻理解,强化概念
对于计算机的基础知识和体系,应注意理解,切忌死记硬背。例如,可以把计算机硬件系统的结构图与实物对照着去理解:控制器和运算器常常集成在一起,称为CPU;存储器分为两种:内存和外存,只有内存才能与CPU直接打交道;所有这些部件又由总线将其联结为一体,这种计算机又称为总线式计算机;又如,计算机之所以称为电脑,就是因为计算机的硬件结构、处理问题的方式和人的大脑结构以及处理问题的方式基本一致。采用对照、总结、联想的方法来复习这些内容,比死记硬背效果要好得多。
三、归纳整理,适当记忆
另一部分需要记忆的知识是计算机基础知识、基本概念。这些内容看似不起眼,但如果不适当加以记忆,考试时因此失分十分可惜。如:1946年至今,计算机发展已经历了四个时代,这四个时代是如何划分的?一个计算机系统都由哪几部分组成?各部分关系怎样?我们可以在理解的基础上归纳整理,适当记忆。需要适当记忆的内容对初学者来说还有许多,如在C语言中有几类不同类型的数据,各类数据在机器内部是如何存储的?C语言中的运算符都有哪些?运算的优先级别、结合方向怎样等。
四、注重实践,融会贯通
计算机是一门理论性、实践性都很强的学科,对二级考试的参加者来说,基础理论方面要求不是特别深入,卷面中的题目大多数都可以上机实践。因此,注重实践,更显得重要。考生应在对基本知识理解的同时注意多上机实践,通过实践,将所学知识融会贯通。
五、多做练习,查漏补缺
在认真地学完考试指定用书后,你可能已雄心勃勃,充满信心。但千万别高兴过早。再找一些题集,认真地测试一下,一则可以看看你究竟学习得如何,二则可以查漏补缺,将还没有掌握的内容补起来,以备正式考试时万无一失。即使在平时,也应这样。多做练习,多加思考,在解题中下功夫,是学好计算机的关键。我国著名数学家华罗庚说过:“学数学不做练习,好比入宝山而空返。”学习计算机也是同样的道理。
C语言学习要领
1、计算机语言挺枯燥的,如何提起兴趣
答:首先要明确学习的目标,没有明确的学习目标就没有学习动力。给自己定一个目标,比如这次一定通过计算机等级考试,或者这个月学习完做个东西出来等等。其次,确定了目标之后,要认真去做,多上机操作实践,遇到不懂的要多跟教师和其他学员交流,千万不能放弃。当自己编的一段小程序运行通过,或攻下一道难题,自己就会获得一种成就感,可能还会很兴奋,也就渐渐有了兴趣。最后,要把所学的知识运用到实际问题当中,这样既可以巩固所学的知识,不至于完学了就忘,还可以根据实际需要拓展知识面。这样良性循环,兴趣也会越来越浓。
2、有学员来信问到:我的电脑里安装的TURBO?C(970K)不能正常的编译,现象是:在编译过程中,提示没有错误也没有警告,按任意键返回,可是在电脑上不能生成"OBJ"文件,有时提示:Unable to open input file’cos.obj’,我的朋友从他们学校的PC上拷贝回来的程序也出现这个问题?!在他们学校却很正常,这是怎么回事?这个问题一直在困扰我,使我的学习不能进行下去!请帮我解决。谢谢!
答:这需要重新设置options--directories中的include目录和lib目录,设为你C的安装目录就可以了。记住要保存哟!
3、#include
main()
{int m=7,n=4;
float a=38.4,b=6.4,x;
x=m/2+n*a/b+1/2;
printf("%f\n",x);
}
这个程序的结果是27.000000
为什么我一直算的是28.000000呢?请指教
答:main()
{
int m=7,n=4;
float a=38.4,b=6.4,x;
x=m/2+n*a/b+1/2;
printf("%f\n",x);
}
m/2==3;因为m是整形所以结果为整形不是3.5而是3
同样1/2不是0.5而是0。
要改的话,x=(float)m/2+n*a/b+1.0/2.0;
结果为28.0000
4、有些人说我的程序很难让人看懂,请问如何将程序写得规范、简洁明了
答:这是编程中重要的一点,要养成良好的编程习惯。请看一个例题:程序很简单,是用TURBO C编一个时钟程序。具体如下:
/****************************************************
Module:clock.c
just a test of my programming ability
*****************************************************/
#include"math.h"
#include"dos.h"
#include"stdio.h"
#include"graphics.h"
main()
{
char s[30];
int gdriver,gmode;
int cosh,sinh,cosm,sinm,coss,sins;
struct ;time t;
char keydown=0;
int x=300,y=160,r=40;
clrscr();
gdriver=9; gmode=1;
initgraph(&gdriver,&gmode,"a:\\");/*需要说明的是,第三个参数a:\\是egavga.bgi这个文件的路径*/
/* install the graphic device.the third parameter is the path of the driver*/
setbkcolor(0);
setcolor(WHITE);
while(1)
{
circle(x,y,r);/*paintthecircle*/
line(x,y+r-10,x,y+r-12);
line(x+r-4,y,x+r,y);
line(x-r,y,x-r+4,y);
line(x,y-r+10,x,y-r+10+2); /* draw the fout scales */
gettime(&t);
sprintf(s,"The current time is %2d:%02d:%02d\n",t.ti_hour,t.ti_min,t.ti_sec,t);
outtextxy(0,0,s); /* out put the current time */
outtextxy(0,10,"This clock is written by lijun"); /*?show the auther */
coss=(int)((r-10)*cos(t.ti_sec*3.14f/30-3.14f/2)+x);
sins=(int)((r-10)*sin(t.ti_sec*3.14f/30-3.14f/2)+y);
cosm=(int)((r-19)*cos(t.ti_min*3.14f/30-3.14f/2)+x);
sinm=(int)((r-19)*sin(t.ti_min*3.14f/30-3.14f/2)+y);
cosh=(int)((r-28)*cos((t.ti_hour+(float)(t.ti_min)/60)*3.14f/6-3.14f/2)+x);
sinh=(int)((r-28)*sin((t.ti_hour+(float)(t.ti_min)/60)*3.14f/6-3.14f/2)+y);
/* calculate the position of the three points */
setcolor(14);
line(x,y,coss,sins);
setcolor(13);
line(x,y,cosm,sinm);
setcolor(10);
line(x,y,cosh,sinh);
setcolor(15);
/* draw the points */
sleep(1);
clrscr();&nb
sp;
keydown=kbhit();/* check whether key down */
if(keydown)
{
closegraph();/* close graphic device */
exit(0);
}
}
}
全国计算机等级考试二级C语言程序设计要求
(1999年09考次以后新大纲)
(一)C语言的结构
1。程序的构成,main函数和其他函数。
2。头文件、数据说明、函数的开始和结束标志。
3。源程序的书写格式。
4。C语言的风格。
(二)数据类型及其运算
1。C的数据类型(基本类型、构造类型、指针类型、空类型)及其定义方法。
2。C运算符的种类、运算优先级和结合性。
3。不同类型数据间的转换与运算。
4。C表达式类型(赋值表达、算术表达式、关系表达式、逻辑表达式、条件表达式、逗号表达式)和求值规则。
(三)基本语句
1。表达式语句,空语句,复合语句。
2。数据的输入与输出,输入输出函数的调用。
3。复合语句。
4。goto语句和语句标号的使用。
(四)选择结构程序设计
1。用if语句实现选择结构。
2。用switch语句实现多分支选择结构。
3。选择结构的嵌套
(五)循环结构程序设计
1。for循环结构。
2。while和dowhile循环结构。
3。continue语句和break语句。
4。循环的嵌套。
(六)数组定义和引用
1。一维数组和多维数组的定义、初始化和引用。
2。字符串与字符数组。
(七)函数
1。库函数的正确调用。
2。函数的定义方法。
3。函数的类型和返回值。
4。形式参数与实在参数,参数值的传递。
5。函数的正确调用,嵌套调用,递归调用。
6。局部变量和全局变量。
7。变量的存储类别(自动、静态、寄存器、外部),变量的作用域和生存期。
8。内部函数与外部函数。
(八)编译预处理
1。宏定义:不带参数的宏定义;带参数的宏定义。
2。“文件包含”处理
(九)指针
1。指针与指针变量的概念,指针与地址运算符。
2。变量、数组、字符串、函数、结构体的指针以及指向变量、数组、字符串、函数、结构体的指针变

to learn C
275.29KB
申请报告