初学C语言程序设计的基本方法和技巧

初学C语言程序设计的基本方法和技巧


2024年4月29日发(作者:)

!里 塑 

renliziyuanguanli 

教育教学研究 

初学C语言程序设计的基本方法和技巧 

杨春 

(北京市石景山区业余大学 北京 1 00043) 

【摘要l本文作者通过总结多年c语言程序设计课程的教学经验,对初学c语言程序设计过程中的重要知识点和难点问题作了较为详 

细的说明,并提出学习c语言的基本方法即熟记基本知识点、掌握程序的基本结构、掌握一定的常用算法和培养良好的煽程习惯。 

【关键词】c语言 程序设计 算法 

【中图分类号l U 4 1 2.6 【文献标识码】A 【文章编号】1 6 7 3—8 2 09(2 01 0)01—0 09 0—02 

无论哪所大学的计算机专科和本科都需 

要学习C语言,《C语言程序设计》是计算机专 

业的一门必修课程,也是学习如何编程的入门 

掌握上面的必须要记下来的内容,相当r『 

我们开始学说话时先听别人说,我们自己跟着 

学一些最基本的日常语言。这时我们就可以 

三个整型变量用来存放三个整数,还要定义一 

个整型变量用来存放最小值。如:int a,b,C, 

Tnin;这行代码的作用其实是要了一块内存,然 

课。初学C语言的人都会觉得C语言不好学, 

感到无从下手。其实,按照我们现在的教学大 

纲和教学要求,只要同学们掌握一些方法,多 

读,多写,克服心理上畏难情绪,c语言是完全 

可以学好的并且灵活应用的。我总结了多年 

的《c语言程序设计 课程的教学经验和学生 

在学习过程中常见的一些问题,在些介绍一些 

C语言的学习和编程技巧,希望给初学C语言 

的同学有一定帮助。 

C语言是一门应用最广泛的基础高级编 

程语言,有很多语言都是由它发展而来的,所 

以学习好C语言之后再学习任何一种编程语 

言都会轻松上手。 

1熟记基本知识点 

学习C语言和学习任何一种语言的方法 

基本一样。我们婴儿期间咿呀学语时,从一个 

字开始学,然后两个,接着更多,最后我们能成 

句,成段,到出口成章。学习C语言的时候也 

样,有些最基本的内容必须要记下来。 

1.1关键字 

关键字是由C语言规定的具有特定意义 

的字符串。它们是写c语言的基础,如果关键 

字不记下来,那编程是寸步难行。 

1.2运算符 

C语言中的运算符和表达式与我们数学 

上的运算符和表达式有相同的,也有不同的。 

我们在学习的时候就注意记住并弄清楚那些 

不同的地方。基本的语法表达式及执行过程。 

选择结构中的if语句和switch语句。循环语 

句中的for语句、while语句和do-while语 

句。这部分就好比是你会了许多词,然后得把 

这些词组成一些句子,语法的作用就是告诉你 

怎样说好一句话,表达清楚的意思。 

1.3常用库函数 

 ’

在这里最重要有两个函数:输入函数 

scanf()¥ ̄l输出函数printf()。一个程序如果没 

有输入,那无论运行多少次结果都一样,那也 

就失去了写程序的目的了。同样一个程序如 

果没有输出,那运行程序有什么意义呢?当然 

输出的形式比较多。在初学C语言的时候主要 

是从屏幕上输出结果。所以这两个函数的使 

用方法也必须要掌握。这两个函数已经定义 

在stdio.h这个头文件中,不用我们自己写,它 

们不是C语言中的语句,所以在使用这两个函 

数时在源程序顶部一定要加上#i12ClUde 

<stdio.h>。这是为了让我们在执行程序的 

时候,让计算机知道scanf() ̄l printfO这两个 

函数怎么用。 

90~ 

从一些简单的程序开始读,能把每一个程序的 

后在达块内存里存东西。因为我需要一个整 

运行结果能自己读程序准确地执行出来,那样 

数,所以就用int这个关键字来声明(相当于用 

我们就可以开始来编写程序了。 

这块地干什么)。那么变量a,b,C是什么呢? 

你买了一块地,总要知道这块地在哪是吧?不 

2掌握程序的基本结构 

然就白买了,变量就是这样一个作用。我们需 

编写程序一定要注意程序的结构性。学 

要把数据存在计算机中,什么样的数就定义什 

习写程序,不能开始就写代码。许多人在动手 么样的类型,需要存几个数就定义几个变量。 

写程序的时候感到无从下笔。原因主要是:看 

输人数据有两 ’方法。第一种从键盘输 

到一个题目不知道如何去分析,它怎么才能变 入,就需要用到scanf()这个函数;第二种是直 

成一个程序呢?这是初学者在编写程序的主 

接赋值。 

要问题。我在教学中采用了一种分步式的方 处理数据是对于初学者来说最难的一部 

法。 

分,也就是把我们刚才分析过程转换成语句。 

2.1看到一个题目的时候先别想着编程序,用 

这需要学好C语言的三种程序结构。 

个具体的实例想想不用程序你是如何解决 

(1)顺序结构 

这个问题的 顺序结构的程序设计是最简单的,只要按 

例如输人三个数,输出最小值。我们用 照解决问题的顺序写出相应的语句就行,它的 

3,8,6三个数来考虑,我们一看就知道3是最 执行顺序是自上而下,依次执行。顺序结构可 

小的。可是我们这一看中其实并不简单,其中 以独立使用构成一个简单的完整程序,不过大 

有判断。我们先看第一个数3,然后已经记在 

多数情况下顺序结构都是作为程序的一部分, 

我们头脑中了,再看第二个数8,3比8小,那 

与其它结构一起构成一个复杂的程序,例如分 

我们还是记住3,再比较第3个数6,最后确定 

支结构中的复合语句、循环结构中的循环体 

3是最小的。我们现在就是要把我们头脑中很 

等。 

快闪过的这些判断过程想清楚。 

(2)选择结构 

2.2我们要弄清楚一个程序由哪些部分组成 

对于要先做判断再选择的问题就要使用 

这就好比我们写一篇文章也有一些结 

分支结构。选择结构的执行是依据一定的条 

构。一个C程序也有其一般结构,我把它归纳 件选择执行路径,而不是严格按照语句出现的 

成下面格式。 

物理顺序。选择结构的程序设计方法的关键 

#include<stdio.h> 

在于构造合适的分支条件和分析程序流程,根 

main() 

据条件的结果选择对应的分支语句。选择结 

{ 构适合于带有逻辑或关系比较等条件判断的 

定义变量;int,float,char,double 

输入数据; 键盘输入scanf(); 

直接赋值;例如x=3; 

处理数据;if-else;switch;for;while;do- 

while: 

输入数据;printf(); 

} 

第一行代码表示把标准的输入输出头文 

件包含在这个程序中。第二行代码是C程序的 

主函数,每个C程序中必须有且仅有一个 

main()函数。然后是函数的一对“{}”。 

定义变量的意思好比买一块地,有了这块 

地就可以在上面盖房、种庄稼之类的。但是为 

了便于统一管理,比如城市已经规划好了,你 

在郊区买的地就只能种庄稼,在市中心买的, 

就只能盖房,这就是变量类型的含义了。用上 

面求最小值的例子。我们在三个数中求最小 

值。这三个是什么数,是整数还是小数?这就 

必须用变量类型来说明。对于上例应该定义 

图1 

教育教学研究 

计算,设计这类程序时往往都要先绘制其程序 

流程图,然后根据程序流程写出源程序,这样 

做把程序设计分析与语占分丌,使得问题简单 

化,易于理解。程序流程图是根据解题分析所 

绘制的程序执行流程图。 

例如上例中,把我们头脑中很快闪过的这 

些划断过程画成流程图即图1: 

由上面的流程图再写出对应的语句就比 

较容易了。如下所示: 

min=a; 

团困圈圈 

就是表达式的值与常量表达式相匹配的那一 

路,它不同if…else语句,它的所有分支都是 

并列的,程序执行时,由第一分支开始查找,如 

果相匹配,执行其后的块,接着执行第2分支, 

第3分支……的块,直到遇到break语句;如果 

不匹配,查找下一个分支是否匹配。这个语句 

在应用时要特另 注意开关条件的合理设置以 

及break语句的合理应用。 

(3)循环结构 

循环结构可以减少源程序重复书写的工 

作量,用来描述重复执行某段算法的问题,这 

是程序设计中最能发挥计算机特长的程序结 

构,C语言中提供三种循环,即whie循环、d0 l

可以列出方程: 

x+y+z:1O0 

5*x+3*y+z/3=lO0 

if(min>b)min=b; 

if(min>c)min:c; 

学习分支结构不要被分支嵌套所迷惑,只 

按数学方法三个未知数两个方程无解,实 

际上是可以解的,如果把公鸡,母鸡和小鸡可 

能的只教全部代入到方程中检验就可以得到 

最后结果。这种方法叫穷举法。如果我们用手 

算那可能要花上半天的功夫,但让计算机来算 

就只需要1秒种。使用算法后分析和处理问题 

都会简单很多。当我们能熟练地掌握了简单 

算法后就能实现一些比较复杂的编程问题了。 

任何程序只要有思维,有想法,那么实现 

程序时就不会觉得无从下手。而要学习这种 

要正确绘制出流程图,弄清各分支所要执行的 

部分,嵌套结构也就不难了。嵌套只不过是分 

支中又包括分支语句而已,不是新知识,只要 

对双分支的理解清楚,夯支嵌套是不难的。下 

面我介绍几种基本的分支结构。 

①if(条件) 

{分支体 

} 

这种分支结构中的分支体可以是一条语 

句,此时“{}”可以省略,也可以是多条语句 

即复合语句。它有两条分支路径可选,一是当 

条件为真,执行分支体,否则跳过分支体,这时 

分支体就不会执行。如:要计算x的绝对值,根 

据绝对值定义,我们知道,当x>=0时,其绝对 

值不变,而x<O时其绝对值是为x的反号,因 

此程序段为:if(x<O)x=一X; 

②if(条件) 

{分支1} 

else 

{分支2} 

这是典型的分支结构,如果条件成立,执 

行分支1,否则执行分支2,分支l和分支2都 

可以是1条或若干条语句构成。如:求某年的 

年号是否是闰年。 

分析:因为当某年号能被4整除但不能被 

4整除但不能被100整除,则这一年是闰年;或 

者这一年号能被4 0 0整除也是闰年。即 

year%4==O&&year%lO0 1=0llyear%400=:O 

其程序段如下: 

if(Y e a r%4==0&&y e a r%l 0 0 1 

OI』year%40¨0==0) 

printf(“%d is leap year!”,year); 

else 

printf(-‘%d is not leap year!”,year); 

} 

③嵌套分支晤句:其语句格式为: 

if(条件1){分支1}; 

else it(条件2){分支2} 

else if(条件3){分支3} 

else it(条件n){分支n} 

eles{分支n+l} 

嵌套分支语句虽可解决多个入口和出口 

的问题,但超过3重嵌套后,语句结构变得非 

常复杂,对于程序的阅读和理解都极为不便, 

建议嵌套在3重以内,超过3重可以用switch 

语句。 

④switch开关语句:该语句也是多分支选 

择语句,到底执行哪一块,取决于开关设置,也 

while循环和for循环。三种循环可以用来处 

理同一问题,一般情况下它们可以互相代替 

换,另外还有一种goto循环语句,因为强制改 

变程序的顺序经常会给程序的运行带来不可 

预料的错误,所以不提倡使用。 

常用的三种循环结构学习的重点在于弄 

清它们相同与不同之处,以便在不同场合下使 

用,这就要清楚三种循环的格式和执行顺序, 

将每种循环的流程图理解透彻后就会明白如 

何替换使用,就能更好地理解它们的作用。在 

分析循环结构的语句时要开清楚,什么时候开 

始循环(即循环的初始值);什么时候结束循环 

(即循环的终止条件);循环的时候都做哪些操 

作(即循环体的执行部分);特别要注意在循环 

体内应包含趋于结束的语句(即循环变量值的 

改变),否则就可能成了一个死循环,这是初学 

者的一个常见错误。 

在学完这三个循环后,应明确它们的异同 

点:用while和do…while循环时,循环变量的 

初始化的操作应在循环体之前,而for循环一 

股在语句l中进行的;while循环和for循环 

都是先判断表达式,后执行循环体,而d0… 

while循环是先执行循环体后判断表达式,也 

就是说do…while的循环体最少被执行一次, 

而while循环和for就可能一次都不执行。 

顺序结构、分支结构和循环结构并不彼 

此孤立的,在循环中可以有分支、顺序结构, 

分支中也可以有循环、顺序结构,其实不管哪 

种结构,我们均可广义的把它们看成一个语 

句。在实际编程过程中常将这三种结构相互 

结合以实现各种算法,设计出相应程序,但是 

要编程的问题较大,编写出的程序就往往很 

长、结构重复多,造成可读性差,难以理解,解 

决这个问题的方法是将C程序设计成模块化 

结构。输出数据是每一个程序必须包含的部 

分。在C程序中的输出通常是从显示屏上输出 

最后的结果,使用printfO这个函数。 

3掌握一些简单常用的算法 

编程其实一大部分工作就是分析问题,找 

到解决问题的方法,再以相应的编程语言写出 

代码。这就好比我们学习写作文段落的时候 

都有一些经典的好词好句,可以使文章添彩。 

同样程序虽然可以实现各种功能,但最基本的 

些算法并不是特别多,我们掌握一些简单的 

算法,在掌握这些基本算法后,根据不同的问 

题,再灵活应用。如百钱买百鸡的问题,就是 

用10O元钱买lo0只鸡,公鸡5元一只,母鸡3 

元一只,小鸡l元三只。这种问题用数学方法 

思维方法就是多做题,多读程序,学习别人好 

的思维方法,多想想一个程序还可不可以有另 

外一种方法来实现它。这样久而久之,自然会 

形成一种自己的思维方法。因此我认为不管 

学什么语言都是这样。 

4培养良好的编程习惯 

培养良好的编程习惯要从第一行代码开 

始,这也是学好C语言的重要因素。例如编写 

程序时用缩进的方式、写注释、程序写到一定 

的阶段时要做一下测试等。这些工作可以帮 

我们在调试程序时有很大的帮助。程序代码 

实现后,错误是难免的,所以也要锻炼自己的 

调试查错能力,而良好的编程习惯可以使我们 

在调试时减d,2E作量和提高调试效率,也有助 

于形成自己的编程风格。 

参考文献 

[1]程序设计基础,中央广播电视大学出版社, 

2004. 

[2】谭浩强.C语言程序设计(第2版),清华大 

学出版社,2008,11. 

9l一 


发布者:admin,转转请注明出处:http://www.yc00.com/web/1714399462a2439395.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信