原创同学,我想和你聊一聊C语言

C语言

很多同学第一次接触C语言,遇到了大批量陌生的信息,感觉不知所措;小编试着用最平实、最通俗的语言,解释一些最简单的问题,希望大家可以觉得——C语言不神秘,不高冷,学好C语言不是天方夜谭(PS.很多同学都还不能成功使用VC++6.0,下面的一篇附推送《在VC++6.0中创世纪!》将会谈一下这个问题)。

首先~我们抛开C语言不管,来想一道小学算术题。现在我要计算加上的值,是不是应该在纸上规规范范地写上“+=?”然后算得结果等于。

小编特地把,,三个数字给划了下划线,因为在我们自己脑子里的计算系统里,这三个东西是可变的,加号与等号都是固定的套路。

小编曾经有幸听一个专家分析过,C语言的设计思想是我们编写程序,操控电脑模仿人脑做事情[1]。所以,我们只要把C语言当做一个懵懂天真的小学生,告诉他这个算式的计算过程,就可以写出如下代码:

(左侧白色方块为代码,右侧黑色部分为执行结果。)

??

那么,这些代码都是什么东西呢?且听小编细细说来。

关于int与x,y,sum

在C语言里,我们是唯一的管理者,需要把创建的所有变量登记在册;就像学校的管理者,在同学们入学的时候必须登记:同学们是学生,学号XXXXXXX,老师们是教师,教职号XXXX(真的只有四位哟)。在这里,很明显学生和老师的号码是不同的,也就是管理不同类型的方式是不同的。

在代码里,我们要对想运算的变量和(具体是哪一个人)进行管理,所以暂时分别给他们起了名字x和y(代号:学号或教职号),它们的类型是int(是老师还是学生)。表示x是一个整数类型的变量,表示x这个变量代表了这个玩意儿。

那么综上就可得,x代表一个整数,y代表一个整数,sum代表一个整数x+y。

有固定意义的符号及词语

在最后一个式子中,我们发现,sum,x,y都做了便于管理的登记,而+和=没有做,这是因为+和=是一种套路,换一句话来说叫C语言语法规定,有其固定的意义(参照数学的意义);在这段代码里,同样是套路的有:#include表示引入某个头文件(下方解释);main叫主函数,C语言规定程序从叫main的函数后面那个大括号{开始执行,到反大括号}结束。

关于printf

下方还有一个语句,叫,它的功能是打印出一句话“thesumis”。我们发现“thesumis”在双引号里存在,很好理解,双引号的内容原样输出嘛,但是是怎么来的呢?在printf内,%d表示输出后方的一个变量,双引号后方逗号后加上变量的名称,就表示引用“这个”变量名称的内容。

再举一个例子,例如:

??

??

按照刚刚的思路,我们可以分析一下代码。x是一个变量名,这个变量是char类型的,它真实的值是a。那么其实呢,刚才说到,学校的人员的类型有老师,有学生,C语言的类型也分有int,char等。Int是一种整数类型,char是一种单字符类型(一个字母成为单字符),它的赋值语句规定必须用单引号把值括起来。

在下方语句中,小编特地没修改原样输出内容,即thesumis;而输出的结果确实是sumis,但是其实结果和sum没有任何关系,也就是说,printf后面的双引号内容会被无脑输出,计算机才不管你想输出的语句逻辑是什么;在双引号里,这次再也不是%d,而是%c;在前一段代码中,我们输出的变量sum的类型是int,所以用%d表示输出十进制数;在后一段代码中,我们输出变量的类型是char,所以用%c表示输出字符型-类似的,我们还能输出int类型的十六进制数,八进制数,二进制数,或其他类型的输出格式,需要做的只是查阅书籍(%+?)是什么变量。

??

(%x代表十六进制,十进制的16等于十六进制的一零)

小编在刚学C语言的时候,就想问一个问题。凭什么printf做的事情就是输出?还做了这么多规定—双引号是原样输出,%?是输出什么什么blablabla……归根结底,小编的英文不好,这些英文我记不住(print有打印的意思),能不能换成拼音缩写?要知道,小编上面的套路讨论中可没有说printf是套路,那就说明其不是C语言规定的语法;其实,它都源自我们还没







































北京中科白癜风医院
治白癜风秘方



转载请注明:http://www.nydjfy.com/jbjj/2685.html