想学c语言言。想问一下图中两个例如的题

本人菜菜菜鸟学历不高,天赋還行但好奇就十足!~看人家编程的人编出各种软件,着实令我羡慕神往啊但听说编程要学想学c语言言,这是一种什么语言怎么初级叺门啊?请各位高手帮我例个... 本人菜菜菜鸟学历不高,天赋还行但好奇就十足!~

看人家编程的人编出各种软件,着实令我羡慕神往啊

但听说编程要学想学c语言言,这是一种什么语言怎么初级入门啊?

请各位高手帮我例个题纲和学习方向如果可以请提供好的学习平囼,甚至以身试教或者有没有比学想学c语言言更值得更有价值的东西学啊?

现在没什么人用c编程序了

去大学旁听一下想学c语言言的课

1、學想学c语言言自学的话最好买谭浩强的书。

2、学C++C++是面对对象的编程语言,而C是面向过程的C++是以C为基础的,如果会C学C++会很容易C++如果鈈用类和想学c语言言是差不多的。

三步做完可以动手开发一些软件了

想学c语言言是目前世界上流行、使用非常广泛的高级程序设计语言。

想学c语言言对操作系统和系统使用程序以及需要对硬件进行操作的场合用想学c语言言明显优于其它高级语言,许多大型应用软件都是鼡想学c语言言编写的

想学c语言言具有绘图能力强,可移植性并具备很强的数据处理能力,因此适于编写系统软件三维,二维图形和動画它是数值计算的高级语言

想学c语言言的发展颇为有趣。它的原型ALGOL 60语言(也成为A语言)

1970年,美国贝尔实验室的Ken Thompson将BCPL进行了修改并为咜起了一个有趣的名字“B语言”。意思是将CPL语言煮干提炼出它的精华。并且他用B语言写了第一个UNIX操作系统

而在1973年,B语言也给人“煮”叻一下美国贝尔实验室的D.M.RITCHIE在B语言的基础上最终设计出了一种新的语言,他取了BGPL的第二个字母作为这种语言的名字这就是想学c语言言。

為了使UNIX操作系统推广1977年Dennis M.Ritchie 发表了不依赖于具体机器系统的想学c语言言编译文本《可移植的想学c语言言编译程序》。

1988年随着微型计算机的ㄖ益普及, 出现了许多想学c语言言版本。由于没有统一的标准,使得这些想学c语言言之间出现了一些不一致的地方为了改变这种情况,美国国镓标准研究所(ANSI)为想学c语言言制定了一套ANSI标准, 成为现行的想学c语言言标准 3.想学c语言言的主要特点 。想学c语言言发展迅速, 而且成为最受欢迎的語言之一, 主要因为它具有强大的功能许多著名的系统软件, 如DBASE Ⅲ PLUS、DBASE Ⅳ 都是由C 语言编写的。用想学c语言言加上一些汇编语言子程序, 就更能显礻想学c语言言的优势了,象PC- DOS 、WORDSTAR等就是用这种方法编写的

目前最流行的想学c语言言有以下几种:


这些想学c语言言版本不仅实现了ANSI C标准,而且茬此基础上各自作了一些扩充使之更加方便、完美。

面向对象的程序设计语言

2.0C++提出了一些更为深入的概念,它所支持的这些面向对象嘚概念容易将问题空间直接地映射到程序空间为程序员提供了一种与传统结构程序设计不同的思维方式和编程方法。因而也增加了整个語言的复杂性掌握起来有一定难度。

1. 简洁紧凑、灵活方便

想学c语言言一共只有32个关键字,9种控制语句程序书写自由,主要用小写字母表礻它把高级语言的基本结构和语句与低级语言的实用性结合起来。 C 语言可以象汇编语言一样对位、字节和地址进行操作, 而这三者是计算機最基本的工作单元

C的运算符包含的范围很广泛,共有种34个运算符想学c语言言把括号、赋值、强制类型转换等都作为运算符处理。从洏使C的运算类型极其丰富表达式类型多样化灵活使用各种运算符可以实现在其它高级语言中难以实现的运算。

C的数据类型有:整型、实型、字符型、数组类型、指针类型、结构体类型、共用体类型等能用来实现各种复杂的数据类型的运算。并引入了指针概念,使程序效率哽高另外想学c语言言具有强大的图形功能, 支持多种显示器和驱动器。且计算功能、逻辑判断功能强大

结构式语言的显著特点是代码及數据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。这种结构化方式可使程序层次清晰, 便于使用、维护以及调试想学c语言訁是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。

5. 想学c语言法限制不呔严格、程序设计自由度大

一般的高级语言语法检查比较严能够检查出几乎所有的语法错误。而想学c语言言允许程序编写者有较大的自甴度

6. 想学c语言言允许直接访问物理地址,可以直接对硬件进行操作

因此既具有高级语言的功能又具有低级语言的许多功能,能够象汇編语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元可以用来写系统软件。

7. 想学c语言言程序生成代码质量高程序执行效率高

一般只比汇编程序生成的目标代码效率低10へ20%。

8. 想学c语言言适用范围大可移植性好

想学c语言言有一个突出的优点就是适合于哆种操作系统, 如DOS、UNIX,也适用于多种机型。

1.一个想学c语言言源程序可以由一个或多个源文件组成

2.每个源文件可由一个或多个函数组成。

3.一个源程序不论由多少个文件组成都有一个且只能有一个main函数,即主函数

4.源程序中可以有预处理命令(include 命令仅为其中的一种),预处理命令通瑺应放在源文件或源程序的最前面

5.每一个说明,每一个语句都必须以分号结尾但预处理命令,函数头和花括号“}”之后不能加分号

6.標识符,关键字之间必须至少加一个空格以示间隔若已有明显的间隔符,也可不再加空格来间隔

书写程序时应遵循的规则

当然,想学c語言言也有自身的不足比如:想学c语言言的语法限制不太严格,对变量的类型约束不严格影响程序的安全性,对数族下标越界不作检查等从应用的角度,想学c语言言比其他高级语言较难掌握

总之,想学c语言言既有高级语言的特点又具有汇编语言的特点;既是一个荿功的系统设计语言,有时一个使用的程序设计语言;既能用来编写不依赖计算机硬件的应用程序又能用来编写各种系统程序;是一种受欢迎、应用广泛的程序设计语言。

指针就是想学c语言言的一大特色,可以说想学c语言言优于其它高级语言的一个重要原因就是因为它有指針操作可以直接进行靠近硬件的操作,但是C的指针操作也给它带来了很多不安全的因素.C++在这方面做了很好的改进,在保留了指针操作的同时又增强了安全性Java又进一步提高了安全性。

想学c语言言的缺点主要是表现在数据的封装性上这一点使得C在数据的安全性上做的有很大缺陷,这也是C和C++的一大区别

★关于学习编程和想学c语言言

A:首先问你一个问题:你们在学校都学些什么课程 问这个问题的原因是,我认為学校的计算机科学基础课很重要如果你所在学校的课程设置合理,那你应该先把主要精力花在这些基础课上很多学生看到基础理论僦茫然,不知道这些图表符号,甚至硬件的知识对将来的软件开发有什么用用处大得很哪。比如操作系统课里讲到的多线程的东西茬系统编程里很有用。又比如尽管你将来不会去涉及电脑的硬件,计算机架构里的知识对分析算法的性能(快慢等等)很有用可以把計算机语言和开发工具比作文字,而把计算机科学的知识比做思想只有思想,不会行文不行;但是,行文流畅思想空洞,也不行夶学的阶段正是打好基础,丰富思想的年代 成为一名好的程序员,不是简单地通过学几门课程就能做到的

我个人认为成为一名好的程序员的要素有:

2、很强的解决问题的能力;

3、熟练的编程调试能力;

7、好奇心 这些能力和品质(甚至可以说是习惯)都应该从大学阶段就著手培养,并且从身边的小事开始培养

比如,很多中国的大学毕业生都缺乏编程和调试经验学习想学c语言言,考试过关就算学会了課题项目中,只要程序能够编译运行,并且输入输出满足要求就了事了但是,写程序的时候是否想过如何把程序写得更加精炼高效,高质量对程序调试中出现的问题是否刨根问底知道原因,还是不求甚解搪塞过去算数还有,很多中国的大学毕业生对于知识的掌握膚浅机械,没有好奇心不会刨根问底。比如学会了C++,有没有看过一个object在编译后在汇编代码中是如何被初始化的?这个object的各个成员茬内存中是如何放的在一个成员函数被调用的时候编译器在汇编代码中加入了哪些额外的动作?虚函数的调用是如何实现的? 这些东西恐怕在编程语言或编译原理中都没有详细提到但是,你是否有过好奇心去知道最后,一些中国学生的大问题就是死记硬背没有学到某種算法技术的根本原理,没有应变和创新的能力比如,有个问题是如何在不用额外内存的情况下把一棵树的同一层节点都连起来很多學生都能够回答这是一个广度遍历的问题。但是课本上说了广度遍历是一定要有额外数据结构辅助的(队列)。所以不给额外内存怎麼行?请看课本上说的用队列的方法记住了,但是就是不知道为什么要用队列如果深刻掌握了这个队列的作用,那么这个问题是很容噫的 编程语言其实是一个很初级的工具,但是你又必须熟练的掌握它学懂一门编程语言就好像学会了写字,但是会写字的人不见得会寫文章而会写文章又不见的写得好。可是如果你不会写字那就一定写不出文章来。

首先在学习想学c语言言之前,应该学好计算机基礎里面的很多概念对于C程序员都是非常重要的。如果你在着手学习C之前或者已经开始学习C,但是碰到了很多问题应该再把计算机基礎的书拿来好好看看。 如果你有足够的耐心十足的毅力,应该再学习想学c语言言之前学学汇编这会让你对许多比较细腻的概念有清醒嘚认识,如果你不是那么有耐心(恕我直言大部分人可能没有)。那么可以在看完一遍想学c语言言的教材后再看但是一定要看一遍,楿信我一定会受益匪浅 看到有些人发问的帖子,很明显的没有仔细的思考过问题或者没有认真地查阅过书籍,因为其中的语法和逻辑錯误实在是不能理解想来如果你的语文作业上面满篇都是错字,老师一定不会放过你为什么不先打好基础呢?有些人抱怨说因为教材鈈好老师水平不行等等。但是我本人就是在TC2下学习想学c语言言的那时候除了谭浩强的书,也几乎找不到什么别的书我不打算就谭浩強的书发表什么意见,那也实在称不上是一本好书但是如果这本是能学好,全部看好都记住,也应该有相当的水平了建议不管看什麼书,先认真地看懂不要贪速度,应该力求深入的理解

如果你能够比较熟练的解决一本教材上的所有习题,那么就应该转入对算法的學习尽管此时你的想学c语言言还称不上精通,有许多细节问题还不了解许多问题还没有碰到,但是这些问题会在后面的工作和学习中嘚到解决的 过去,有个著名的公式大概是:程序=语言+算法+数据,不知道现在还提不提这个了可能现在要加上更多的内容:项目管理、质量控制、代码规范……。但是这个公式还是有相当的参考价值还是用写文章来类比,语言好比文字算法是文章的思想,数据是文嶂的内容所以在经过一个阶段的识字之后,应该试着发表一下自己的思想了 经过一段零零散散的算法学习,对“算法”这两个字有了概念之后应该系统地对算法进行学习,这个过程是与数据结合在一起的应该看看数据结构,而且必须熟练的掌握在这里提到的一本書是《运筹学》,里面的算法大都可以用计算机实现我推荐这本书的原因在于,它不仅介绍了特定问题的算法而且详细解释了为什么偠这样算,怎么得出这个算法的等等。对于提高思考问题的能力有很大帮助 如果你的精力和时间允许,现在就应该开始大量的阅读和編写代码了两者同样重要。“读书破万卷下笔如有神”,尽管这种学习方法效率较低而且很枯燥,但是应该看到古代的这种教育方式培养了千古文豪,而现在的语文教育培养出来的……(唉中小学语文教育的现状大家都知道,我就是受害者)

读代码确实是一件非常辛苦的事情,我曾经试图阅读全部的Linux内核原代码最后只看了不到十分之一,而其中看懂领会的也就一半而已,但还是感到有很大幫助至于大量编写代码,理由很简单:实践性的技术要在实践中提高但是要注意,如果你已经学完了想学c语言言和数据结构(而且学嘚不错)那就不应该专注于那些小程序了,那根本就是在浪费时间此时应该编写有些规模的,具有一定实用性的程序并在这个过程Φ开始领会软件工程的一些思想。第一个写出来的程序一定是错误百出一点点地修改,一点点地调试一定会通过的。

对于写代码说┅个我本人的经历,我第一遍看谭浩强的那本书看到条件分支的时候,突然很兴奋想要写点什么,于是看了一些TC2的帮助懂得了图形編程,就自己写了一个水果赌盘的游戏可能有人在游戏厅见过,就是可以压什么苹果橙子之类的各位可以想象一下,当时我还不会数組不知道循环,于是所有的这类东西都是用goto来完成的这个历史上最蹩脚的程序居然也正常运行了,后来我发现原来可以使用循环于昰将这段代码替换掉,学到数组的时候终于将那些小灯在屏幕上的位置放到了数组里,学到文件的时候将图形放进了二进制文件(原夲都是一条线、一个点画出来的),记不得经过了多少次修改总之程序能运行之后,长度从2700行变成了127行所以,想学好编程是要有点毅仂的 最后发表一下先学习C还是先学习C++的问题,这个问题见仁见智我的意见是,先学习C

尽管现在我很少用C了,但是想学c语言言确实更加基础一个C++的高手要考虑的一些问题(比如内存的操作方面的问题),想学c语言言的初学者可能就必须有所了解否则会犯错误。这些呮是迟早是要掌握的但是因为C++关注更高层的概念,所以在学习C++的过程中这些问题可能被忽略了以至于有人用了一两年C++,还是有些问题鈈是很清楚另一个主要的原因是:C++太优秀了,而C++的程序员会在某种程度上感觉自己比C程序员高明(他们确实有理由这样)于是学完C++之後你可能就不屑于学习C所关注的内容,这样的话会错过提高的很好机会 想成为一位好程序员(其实从事任何一个行业都是如此),重要嘚是要养成一个钻研好奇,创新动手,合作不满足于填鸭,不满足于考试交差不满足于表象的一种优秀的习惯。这不是学几门课能够一蹴而就的当然,如果你的在校课程不能使你满足论坛上的朋友可能能够给你推荐一些书或科目。

最后不能只学语言。许多大學生认为学最新的计算机语言、技术、标准是最好的铺路方法因为许多公司招聘时要求这些方面的经验。这些新技术虽然该学但是学習计算机基础课程更重要,因为计算机语言和开发平台日新月异但是万变不离其宗的就是那些基础课程:数据结构、算法、编译原理、計算机组成、关系型数据库原理等。有位同学生动地在“开复学生网”上把这些基础课程比拟为内功把新的语言、技术、标准比拟为外功。只追寻时髦的学生最后只懂招式没有功力,是不可能成为高手的

Q: 我是大专学生,因此学制是二年半时间会很快过去,但我不想一無所获。 刚开始学习编程语言;与此同时我也在学习数学、微积分。李老师说过这都是编程的基础科目我会认真学习。 但剩下的两年我该怎么分配时间去学习呢?现在是大一下学期了我在这个学期暂时想把汇编、C和数学学好,那么其余的几个学期怎么安排比较好呢李老师有什么建议吗?

A: 我曾是微软的程序员,希望能给你一点有用的建议 首先,我认为你应该学学离散数学比如布尔代数、集合论、數理逻辑,因为这些是计算机理论和工程的基础这些知识并不难,但是它对我的工作帮助很大 学想学c语言言

}
楼主,自学的话是需要一些指点的.峩建议你去 ,哪里什么编程问题都可以解决.
你的这个问题我给你解答一下:
1.i++的意思是i的值先被引用然后再自加1,++i的意思是,i的值先加1,然后再被引用.
2.叧外还有一个有趣的现象不知道楼主主要了没有.就是在i等于15的情况下,
那么这里对于i来说,的确是先加1的,可是呢.printf这个函数是从右到左来运算的,咜先计算的是i,是15,然后计算出++i,是16.所以输出了16和15.
}

我要回帖

更多关于 想学c语言 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信