c语言从入门到精通的技巧

9303
回复
658965
查看
    [复制链接]

 成长值: 1180

等级头衔

头衔 VIP

Rank: 35Rank: 35Rank: 35Rank: 35Rank: 35

积分成就
UID
34
威望
145
贡献
25
在线时间
3 小时
注册时间
2014-2-26

国庆节勋章

发表于 2024-9-20 08:27:04 | 显示全部楼层 |阅读模式
编程交流
编程交流: 很多人不知道怎么学习c语言,今天教大家自学的几个技巧
c语言程序设计初学者遇到最多的困惑是:上课也能听懂,书上的例题也能看明白,可是到自己动手做编程时,却不知道如何下手。那么c语言程序设计怎么学习呢?现在为大家整理的关于c语言程序设计的学习方法的资料,希望大家喜欢。
a415e5d02876e2a250a6e649685beff69f511eca.png
1.在编写各类单片机功能程序时,不要急于书写,一定要先想出一个很好的结构和方法,虽然你写出来的程序可以正常运行,但是你是否想到了它的可维护性,可阅读性等等一些很重要的因素呢?所以一定要先想出一个很好的架构在来开始编写。
2.c文件,和h文件设计的要求。C语言显得非常的自由,但我们在工作中为了程序软件的种种原因,一定要规范自己的写法,这对自己和他人都是有利的。在单片机的程序中,我们应该把一个模块功能建立一个单独的C文件,这一C文件中包含和该模块功能全部相关的函数体,同样把和该C文件相关的常量,表达式等等也单独的建立一个h文件,最好是只让它对应的C文件引用,不要让其它的C文件进行引用,这样很好的体现程序的模块化和内聚性。在对单片机的内部寄存器进行操作的程序,我们应该单独的建立一个文件,只允许MCU内部的寄存器名出现在该文件中,你试想一个,在你的所有文件中这这里出现一个寄存器名,那里出现一个寄存器名,是不是可读性不好,没有实现程序的模块化呢?在程序过程中我们应该把多次用到的变量和常量最好的定义为宏,这样当这些变量 ,常量要更改时,就可以很方便的更改,不用大量的去寻找。在使用文件包含时,一定要注意路径的选择,什么时候用<>," ",不用出现重复编译的情况,有时重复编译可能编译器没有报错,但是这样明显不好。要学会很好的使用条件编译语句,这对我们的程序很有用,在很多小型的操作系统中,都有硬件裁减的功能选择,这正是利用了条件编译,需要这一功能时我们就定义它,不需要时就不去定义,显得很方便。
3.指针的妙用。C语言的特色就在于它的指针。很好的使用指针能让我们的程序更加的有条理性,同样它也是C语言中语法最难的一点了,所以在使用时一定要注意。具体的好处太多了,在这就不在多说了,大家自己体会就能很好的明白了。
学习c语言程序设计的困惑
一、所谓的看懂听明白,只是很肤浅的语法知识,而我们编写的程序或软件是要根据要解决问题的实际需要控制程序的流程,如果你没有深刻地理解C语言的语句的执行过程(或流程),你怎么会编写程序解决这些实际问题呢?
二、用C语言编程解决实际问题,所需要的不仅仅是C语言的编程知识,还需要相关的专业知识。例如,如果你不知道长方形的面积公式,即使C语言学得再好你也编不出求长方形的面积的程序来。
三、C语言程序设计是一门实践性很强的课程,“纸上谈兵”式的光学不练是学不好C语言的。例如,大家都看过精彩自行车杂技表演,假如,你从来没有骑过自行车,光听教练讲解相关的知识、规则、技巧,不要说上台表演、就是上路你恐怕都不行。
学习c语言程序设计困惑的解决方法
第一步、验证性练习
在这一步要求按照教材上的程序实例进行原样输入,运行一下程序是否正确。在这一步基本掌握C语言编程软件的使用方法(包括新建、打开、保存、关闭C程序,熟练地输入、编辑C程序;初步记忆新学章节的知识点、养成良好的C语言编程风格)
初学者最容易犯的错误是:
1、没有区分开教材上的数字1和字母l,字母o和数字0的区别,造成变量未定义的错误。另一个易错点是将英文状态下的逗号,分号;括号()双引号""输入出入成中文状态下的逗号,分号;括号(),双引号“”造成非法字符错误。
2C语言初学者易犯语法错误:使用未定义的变量、标示符(变量、常量、数组、函数等)不区分大小写、漏掉“;”、“{”与“}”、“(”与“)”不匹配、控制语句(选择、分支、循环)的格式不正确、调用库函数却没有包含相应的头文件、调用未声明的自定义函数、调用函数时实参与形参不匹配、数组的边界超界等。
3、修改C语言语法错误时要注意以下两点:
(1)、由于C语言语法比较自由、灵活,因此错误信息定位不是特别精确。例如,当提示第10行发生错误时,如果在第10行没有发现错误,从第10行开始往前查找错误并修改之。
(2)、一条语句错误可能会产生若干条错误信息只要修改了这条错误,其他错误会随之消失。特别提示:一般情况下,第一条错误信息最能反映错误的位置和类型,所以调试程序时务必根据第一条错误信息进行修改,修改后,立即运行程序,如果还有很多错误,要一个一个地修改,即,每修改一处错误要运行一次程序。
第二步、照葫芦画瓢
在第一步输入的C程序的基础上进行试验性的修改,运行一下程序看一看程序结果发生了什么变化,分析结果变化的原因,加深新学知识点的理解。事实上这和第一步时同步进行的,实现“输入”加深知识的记忆,“修改”加深对知识的理解。记忆和理解是相辅相成的,相互促进。
第三步、不看教材看是否能将前两步的程序进行正确地输入并运行。
在这一步要求不看教材,即使程序不能运行,看能否将其改正,使其能正确运行。目的是对前两步的记忆、理解进一步强化。
第四步、增强程序的调试能力
C语言初学者易犯的错误,按照易出错的类型,将正确的程序改成错误的程序,运行一下程序,看出现的错误信息提示,并记下错误信息,再将程序改成正确的,运行一下程序。这样反复修改,就能够学习C语言程序发生错误的原因和修改错误的能力。
注意:每次只改错一个地方,目的是显示发生该错误的真正原因,避免一次改动多个地方,搞清发生错误的真正原因,切记!
注意:上机调试程序时要带一个记录本,记下英文错误提示信息和解决该错误问题的方法,积累程序调试经验,避免在编程犯同样的错误,切记!
第五步、研究典型的C语言程序,提高程序设计能力
经过上述过程的学习,我们已经学会了C语言各种语句的流程(即计算机是如何执行这些语句的过程),然后就可以研读别人编写C语言经典程序,看懂别人是如何解决问题的,学习解决问题的方法和程序设计技巧,提高自己的程序设计能力。
在软件中有50多个典型的源程序,研究它的实现方法,提高自己的程序设计能力。
第六步、研究课程设计源成序,提高C语言程序设计的能力。
C语言课程设计的目的:是让学生综合利用所学的C语言知识,解决一些接近实际问题题目,提高程序设计和调试较大程序的能力,为进一步进行软件开发打下坚实的基础。

欢迎加入学客联盟
等级头衔

头衔 高级会员

Rank: 35Rank: 35Rank: 35Rank: 35Rank: 35

积分成就
UID
4885249
威望
93
贡献
93
在线时间
0 小时
注册时间
2022-2-27

发表于 2024-9-20 08:27:06 | 显示全部楼层
永远的神啊
欢迎加入学客联盟
回复 支持 反对

使用道具 举报

等级头衔

头衔 中级会员

Rank: 25Rank: 25Rank: 25Rank: 25Rank: 25

积分成就
UID
4621303
威望
66
贡献
66
在线时间
0 小时
注册时间
2022-1-22

发表于 2024-9-20 08:27:17 | 显示全部楼层
提高技术就是我梦想的未来
欢迎加入学客联盟
回复 支持 反对

使用道具 举报

等级头衔

头衔 高级会员

Rank: 35Rank: 35Rank: 35Rank: 35Rank: 35

积分成就
UID
4731146
威望
84
贡献
84
在线时间
0 小时
注册时间
2022-2-7

发表于 2024-9-20 08:27:39 | 显示全部楼层
简单一看就好了,不用那么繁琐
欢迎加入学客联盟
回复 支持 反对

使用道具 举报

等级头衔

头衔 中级会员

Rank: 25Rank: 25Rank: 25Rank: 25Rank: 25

积分成就
UID
4241079
威望
78
贡献
78
在线时间
0 小时
注册时间
2021-12-1

发表于 2024-9-20 08:28:13 | 显示全部楼层
非常好啊,界面非常好看。
欢迎加入学客联盟
回复 支持 反对

使用道具 举报

等级头衔

头衔 高级会员

Rank: 35Rank: 35Rank: 35Rank: 35Rank: 35

积分成就
UID
4022613
威望
88
贡献
88
在线时间
1 小时
注册时间
2021-10-26

发表于 2024-9-20 08:28:25 | 显示全部楼层
更新更新了
欢迎加入学客联盟
回复 支持 反对

使用道具 举报

等级头衔

头衔 中级会员

Rank: 25Rank: 25Rank: 25Rank: 25Rank: 25

积分成就
UID
3768739
威望
75
贡献
75
在线时间
0 小时
注册时间
2019-3-12

发表于 2024-9-20 08:28:47 | 显示全部楼层
真心更新学盟让大家免费学习
欢迎加入学客联盟
回复 支持 反对

使用道具 举报

等级头衔

头衔 高级会员

Rank: 35Rank: 35Rank: 35Rank: 35Rank: 35

积分成就
UID
3848494
威望
87
贡献
87
在线时间
0 小时
注册时间
2020-1-2

发表于 2024-9-20 08:28:47 | 显示全部楼层
我的学习就是为了未来
欢迎加入学客联盟
回复 支持 反对

使用道具 举报

等级头衔

头衔 高级会员

Rank: 35Rank: 35Rank: 35Rank: 35Rank: 35

积分成就
UID
3853392
威望
89
贡献
89
在线时间
0 小时
注册时间
2020-1-3

发表于 2024-9-20 08:28:58 | 显示全部楼层
走过路过千万不要错过
欢迎加入学客联盟
回复 支持 反对

使用道具 举报

等级头衔

头衔 中级会员

Rank: 25Rank: 25Rank: 25Rank: 25Rank: 25

积分成就
UID
5599899
威望
70
贡献
70
在线时间
0 小时
注册时间
2022-5-14

发表于 2024-9-20 08:29:31 | 显示全部楼层
最新的技术分享
欢迎加入学客联盟
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

电脑技术交流学习
132-3591-5703
周一至周五 9:00-18:00
意见反馈:admin@cnxklm.com

扫一扫访问手机版

Powered by NST! X3.4© 2001-2021技术支持( 闽ICP备14006427号 闽公网安备35090202000370号)|意见建议