最早接触到的计算机编程语言——C语言
在经过入学后计算机导论的熏陶后,在大一的下半学期我终于接触到了一门语言,这也是我们最早接触的计算机编程语言——c语言。
在初学的时候,感觉这门课程十分晦涩,但是当学习了一段时间以后,便发觉其实也不过如此罢了。俗话说,语言是思维的载体,没错,我们人类有我们交流的语言,动物有动物自己独特的语言,计算机也有交流的方式,也需要沟通,这便是我认为的c语言,于是c语言开始给我启蒙。在这里我想大概说说我的学习历程和自己对这门语言的一些见解,因为作者能力有限,肯定有所不足,还请朋友们包涵,欢迎指正。
C语言的发展历程,我就不必多说了,相比众所周知了,我简单的说说我认为的。因为人们愿意与计算机沟通的强烈愿望,于是联系着计算机硬件与软件的机器语言出现了,但是太繁琐,于是发展继续发展,有了c语言,c语言一出现就变得很流行,于是大家都在用,用着用着每个地方就演化出了不同的c语言,就算我国的语言一样,讲的都是汉语,但是每个地方都给他蒙上了一层当地的特色,方言就遍布各地了,于是就有人想要规范这门语言了,就像推崇普通话一样,统一了c语言的版本,让大家更好的认识它。
C语言有很多优点,在这里我就不一一列举了,这个我第一个熟悉的语言也让我对它情有独钟。我在学习中接触到了好多代码,再后来我才知道实际上大部分我学到的是伪代码,但是为了学习方便,都可以啦。C语言刚刚学习的时候,我的感觉是就和干活时一样的,首先你需要工具,这个工具呢?得从工具箱里找到,于是你就需要说,“我要用工具啦“,这样才能获得工具的使用。工具就是这个头文件,工具箱里有很多我们需要的工具,刚入门我们只需要这”<stdio.h>“一把的工具就好了,你要获得工具的使用,于是你要声明,于是就需要”#include“命令来引用你的”工具“,就像把工具从工具箱中拿出来一样。如果你要建造一个东西,一定需要一个很大的容器包裹才行,而且它还必须得是唯一的,于是传说中的main()函数就出现了,别激动,main()函数实际上只是c语言运行的需要,叫做主函数,每个人都有躯干,而c语言的躯干就是main()函数,而且”躯干“也只能有一个吧,接着光有躯干也不成啊,没有实货,还是空心的,一无是处。于是你就需要一些东西去填充你的躯干,让他变得有用。C语言是你敲开计算机世界的大门的钥匙,这是你很想对c语言问好,那用c的语言输出,这就是我们要填充的东西,你需要”表达出来“,就是printf,把你需要说的话用引号引起来,说完话是不是必须有结束,在c中用“;”来代替“。”,所以,c语言对你说的第一句话就这样出来了,黑黑的控制台出现了c语言的问候,那感觉是不是很棒。
#include <stdio.h> main() { printf(“Hello,World !”); } |
在数学中我们有变量,在c语言中也有变量,不过这个变量功能更强大,能帮我们做的事情更多。数学中对于数字有整数、分数、小数……在c语言中,我们也能有这些数字,数学我们做题题目会说这个变量x是个什么什么数,在c中,我们也需要,只不过,c有c的表达方式,这就是数据类型,int代表整型,浮点型用float、double来表示,你想的没错,浮点型就是有小数点的类型,只不过后者能表达的有效数字更多而已,所以可以”double”。在c语言中,也可以像数学那样运算,只不过运算符号表达稍有不同,+、-、*、/,都很简单,但是关于等号,在c语言中是需要两个等号的”==”,这个是特别需要初学者注意的,你可能回想这是为什么,因为一个”=”号有了其他的含义,于是就只能用两个了。那么我们再说这一个“=”,一个等号表示赋值,就是把什么值给那个变量,比如x = 10(在c语言中,如果你不赋值给变量,c语言会自动给它一个默认值0)这可不是x等于10,这个在c中就是把10这个值,给x这个变量,是不很感觉很颠覆你的价值观,其实还有更颠覆的,哈哈,开个玩笑,这个是c语言的规范,你在跟计算机说话,当然不能按自己的,得按计算机的走喽。随便提一下,在c语言中,变量都是先声明再使用的,就是你说好这个变量是什么类型的就好。还有一个%,这也不是百分号,我想你也是习惯了的,这是是求余的运算符,就是求出一个数的余数。这时候你想做个运算,于是定义一个整型(int)变量sum,再定义两个整型变量x、y,把2的值给变量x,把3给y,把x+y的值给sum,在c语言中,要从右往左写,只有表示c语言才能明白,最后再把sum的值输出就好了,输出也需要类型,那就在printf中用”%d”代表整型的变量,实型的就用%f就好了,因为你要告诉c,你要打印的是sum的值,于是乎要把sum也写上,你还需要用”,”分隔一下,这样你就已经能用c语言做运算了,看看是不是能打印出5了?
#include <stdio.h> main() { int sum; int x=2,int y=3; sum = x + y ; printf(“%d”,sum); } |
经过以上两个例子的演示,相信你已经对c语言有了一个大概的感觉。我们来说一说顺序结构程序设计。C语言分为五个语句,1、表达式语句,例如x=y+z;2,函数调用语句,例如printf(“%d”,x)\scanf(“%d”,x),3、控制语句4、复合语句,5、空语句。我们具体说一说选择结构。我们使用的程序不可能总是按一条路走下去,很多情况下会出现分支,这样if语句就起到作用了,if(表达式)语句;如果表达式的值为真,就执行之后的语句,否则不执行该语句,一般也不会经常遇到两个分支,多个分支呢?就利用else语句,else都是跟if搭配起来使用的,用多个if-ele-if形式实现多分支的情况。Switch语句支持跳转,需要去哪一路执行就去哪个case。
while循环,先判断,再执行循环语句,do-while循环,先执行循环体,在判断条件,for循环功能最强,所以也复杂一点for(表达式1;表达式2;表达式3),步骤是,先求解表达式1,在求解表达式2,若结果是真,则执行语句后执行表达式3,否则,执行下一条语句。在循环次数确定的时候for语句是最好用的。这三种循环,for循环可以替代其他两个循环,所以用for循环的机会更多。
当想要执行多重循环,却想跳过某一步的时候,break语句会跳出整个循环,continue语句会结束本次循环。
有时当你定义很多变量,而且它们的类型相同的时候,你会想怎么把这相同的一类放在一起管理,那么数组的作用就凸显了出来。这些按序排列的同类数据元素的集合称为数组。一维数组的一般形式:数组名[下标],下标只能是整型常量或表达式,数组同样需要先定义后使用,需要注意的是,在引用数组元素时,下标是不能越界的,也就是不能超过你定义的元素个数-1的数量。C语言允许定义多维数组,但是不常用,二维数组是按照行排列的,原理同一维基本上一样,样子有点像行列式。
字符数组顾名思义里面装的就是字符。C语言中没有专门的字符串变量,通常用一个字符数组来存放一个字符串,再输入的时候数组名代表该数组的起始地址,所以不用取地址符(&)。C语言有很多字符串处理函数,puts、gets、strlen、strcpy、strcat、strcmp需要怎么处理字符串,就调用哪个函数。
承上启下的字符数组涉及了函数,函数分为两种,一种是库函数,就是我们之前接触到的输入输出函数,就是属于stdio.h库函数,还有一种就是用户定义函数,就是用户按照自己的要求去定义的函数,可以让程序变得更加简便。按过程来看,函数分为有无返回值。有返回值函数在执行完成之后就会向调用者return一个执行结果,无返回值函数,在用户定义的时候就可以指定“空类型”,也就是void main(){……}。如果按主调函数和被调函数之间的角度来看,分为有参函数。无参函数,主调函数和被调函数之间没有参数传递,而有参函数则相反,主调函数把实参的值传送给被调函数的形参使用。
C语言把函数的定义,都是平行的,也就是说,在一个函数体当中,不允许在嵌套定义另一个函数,函数调用自己本身,叫做递归调用,应用比较广泛。
函数的使用让c语言的功能变得丰富多彩,多种多样的函数让程序变得简洁利落,入门c语言的新手一定要多熟悉函数及其应用。
C语言中我没有接触到指针,虽然说指针是c语言中相当重要的一个组成部分,但是指针理解起来对于我这样的初学者不会很容易,而且在没有硬件基础的前提下也不好深入的了解,高人给我的建议是学习指针理解很困难,因为你要把自己想象成一台计算机,用计算机的思维去想,所以这就是指针的困难,今后有机会,我也想认识一下指针。
这就是我最早接触到的计算机编程语言——c语言,虽然我并不一定完全掌握了c,但是它带对我编程语言的启蒙至关重要。