编程入门:如何正确认识编程?除了高薪,我再告诉你一些秘密你会不会编程?我答:会啊...小侄子:那你教教我呗,教我怎么成为...更多内容,请关注我们的高考升学网专题频道。
C语言编程基础入门学习008——浮点类型
编程入门:如何正确认识编程?除了高薪,我再告诉你一些秘密
ngD高三网
假期在家待得怎么样?是不是天天过着衣来伸手饭来张口的日子,当然也时常伴随着妈妈的“嫌弃”和“唠叨”?哈哈~ngD高三网
文章来源:博学谷ngD高三网
接下来,丫姐跟你说一件丫姐在过年期间发生的有意思的事儿:ngD高三网
小侄子:姑姑,你会不会编程?ngD高三网
我答:会啊...ngD高三网
小侄子:那你教教我呗,教我怎么成为网上说的那个黑客?用一台电脑,黑框框,敲一堆看不懂的字符,随时可以把别人账户里的钱偷走的。ngD高三网
我答:这犯法吧...ngD高三网
这时候二叔走过来说:不就是那个少儿编程嘛,我孙子就在学这个。ngD高三网
婶婶也来凑热闹说:啊,我邻居家孩子就是学编程的,一个月3、4万块呢,还风不吹雨不淋的。ngD高三网
我答:现在编程是潮流,国家也开始鼓励青少年学习编程,培养编程思维了。今后社会会越来越面向智能化,不了解这个东西,慢慢就落伍了。ngD高三网
婶婶:那你也给我们讲讲吧,我们也学学...ngD高三网
我:吧啦吧啦开始讲一堆…ngD高三网
除此之外,还有一些朋友通过一些视频和段子,对编程有了自己的理解。ngD高三网
于是他们会问我程序员都脱发么? 能不能写个机器人出来...不知不觉中,编程似乎已经家喻户晓。ngD高三网
虽然大家对【编程】理解的都不同,但是每一个人都正在或即将接受着编程的相关知识(包括一些老年人和孩子)。那么,编程到底是个啥东西?你确定你都了解么?ngD高三网
接下来,丫姐就通过以下几个关卡,带你全面、正确的认识一下编程。ngD高三网
第一关 编程初印象
1.1 为什么会产生编程?ngD高三网
大家都说,艺术源于生活,那你知道【编程】来源于哪里么,为什么会产生【编程】?ngD高三网
当代大学生、打工仔每天都会纠结同一件事,那就是吃什么?ngD高三网
由于工作地点离家很远,早上时间不充裕或寝室根本没法开火,不想出门等因素,我们不能自己做饭。于是,一项“生活需求”应运而生--外卖。ngD高三网
所以,外卖就是源于我们在生活中的需求,而点外卖就是通过【编程】来实现的。ngD高三网
再比如,超市收银。ngD高三网
假设,顾客买了100件东西,如果使用计算器加来加去,既浪费时间又有可能算错。但如果使用编程完成一个软件那就不同了。你应该看到过超市收银的那个设备吧,其内部的系统也是使用【编程】完成的。扫码得到价格,并使用程序自动执行加法,最后还可以提示找零金额。速度快还省人力物力。ngD高三网
此外,还有医院的挂号系统,你每天使用的微信/支付宝等等,都是编程的杰作。ngD高三网
原来,【编程】就是源于我们的生活需求,是为了使我们的生活更加便利,且我们每一个人都直接或间接地参与了编程中的某个环节。ngD高三网
如果你还是觉得有些懵懵懂懂,那我们再来看一张图:ngD高三网
图中的【思维】,就是我们需要的各种需求,也就是想要计算机帮我们做什么事。ngD高三网
图中的【表达】,就是计算机能够看懂的指令 0和1。ngD高三网
而如何将思维表达出来,让计算机执行,就需要我们(程序员)来完成了。ngD高三网
这也就是丫姐要谈的第二个问题,编程的宏观定义。ngD高三网
1.2 编程的概念ngD高三网
用一句话来解释【编程】就是:编写出让计算机能够执行某件事的代码。ngD高三网
再详细一点描述,就是为了完成某项需求,将解决问题的步骤,用计算机能够理解的语言写成指令, 这就是【编程】。ngD高三网
所以,我们可以看出编程共有这么几个部分:ngD高三网
1)需求--想要解决的问题或想要完成的任务;ngD高三网
2)把这个需求变现成计算机能够读懂的代码;ngD高三网
3)计算机执行代码,实现需求。ngD高三网
那接下来请你思考:编程中最重要的【核心】是什么呢?ngD高三网
对,就是上述我们提到的第2个部分,解决了这个问题,也就成功了80%。ngD高三网
至于怎么解决嘛,嘿嘿,不要着急,我们先来稍作休息,喝喝水,放松一下精神,进入下一关。ngD高三网
第二关 从生活视角理解编程
欢迎来到第二关,本关我们继续来聊聊上一关卡末尾留下的悬念。ngD高三网
那就是,如何将【需求】一步一步编写成计算机能够读懂的代码,也就是【逻辑】。ngD高三网
其实,在我们对编程领域的东西知之甚少的时候,大可不必去看一些专业性强的科普文章,因为里面的专业术语会让你觉得晦涩难读,产生畏难情绪。ngD高三网
所以,贴心的丫姐选择使用我们生活中最常见的场景带你去体会一下,什么是【逻辑】?什么是【步骤】?什么是【流程】?ngD高三网
2.1 计算机中的【步骤】与【逻辑】ngD高三网
场景1:假如,今天早上我想吃煎鸡蛋,但是我并不知道怎么做。于是我找了一份菜谱,如下:ngD高三网
从菜谱中,可以看出,只要我们按照操作菜谱的【步骤】完成,最后就应该可以得到一份煎鸡蛋。ngD高三网
这个菜谱也可以理解为, 只需要按照这个12345来, 最终就会完成相应的任务。ngD高三网
但此时肯定会有小盆友有疑问:不对啊,我照着做了也没做好这个煎鸡蛋啊,反而成了黑暗料理...为什么呢?ngD高三网
哈哈,这个疑问是正确的。因为我们光有【步骤】还不行,还需要有【逻辑】。ngD高三网
那什么是【逻辑】呢?我们一起来看场景2。ngD高三网
场景2:记录我的一天都做了什么。日记如下:ngD高三网
从日记中,我们可以看出有三种逻辑,分别是顺序,分支和循环。ngD高三网
顺序结构:先做什么,再做什么。ngD高三网
比如,早晨起床,先刷牙,再洗脸。ngD高三网
比如,日常上班先打卡,到工位,再打开电脑,写代码。ngD高三网
分支结构:判断条件,选择条件。ngD高三网
比如,没有雨就不带雨伞,下雨了就带伞。ngD高三网
比如,碰到上司,就说领导早上好(谄媚表情);碰到同事,就说吃早饭了没(微笑)。ngD高三网
循环结构:反复做一系列的操作。ngD高三网
比如,代码出了问题,要调试,修改,再调试,再修改,再调试,再修改......直到问题解决。ngD高三网
那么当【逻辑+步骤】时,就组成了一个新的名词,叫【流程】。ngD高三网
所以,在煎鸡蛋的场景中,有小盆友疑惑鸡蛋做不成是对的。ngD高三网
因为我们还需要【逻辑判断】,比如,煎鸡蛋是中小火还是多大火?多少算是适量酱油?如果每一个步骤上都加上该有的逻辑,最后程序就不会出错。ngD高三网
2.2 计算机中的【流程】ngD高三网
好,下面就是如果让计算机帮你煎鸡蛋,会是什么样的流程。ngD高三网
你会发现流程十分严谨,它并不像我们看的菜谱一样随意。ngD高三网
严谨是好的吗?当然是,如果不严谨,你银行账户里就可能随便丢钱,到时候,你可是要哭鼻子的哦~~ngD高三网
好,以上就是丫姐用两个生活场景给你解释了-- 编程都是做些什么。ngD高三网
我们再来总结一下:编程,其实就是将我们的需求化为一个个【流程】,写到计算机中,让计算机帮我们执行。ngD高三网
怎么样?是不是很通俗?想不想继续挑战一下?ngD高三网
在程序员的眼中,什么是编程呢?请看下一关卡。ngD高三网
第三关 从专业角度认识编程
欢迎来到第三关,本关丫姐会再说一说程序员眼中的编程,也就从专业角度看编程是什么。ngD高三网
温馨提示:本关卡涉及到的专业名词较多,不过不要担心,丫姐都会给你一一解释清楚...ngD高三网
3.1 数据结构ngD高三网
言归正传,有一本书的名字叫《Algorithms + Data Structures = Programs》,书名其实就是专业角度的编程定义。ngD高三网
翻译成中文就是《算法+数据结构=程序》,这里提到了两个专业名词,【算法】和【数据结构】。ngD高三网
首先,我们先来说说什么是【数据结构】。ngD高三网
数据结构其实就是数据存储的方式。所谓 存储 就是将数据保存下来,以防丢失。ngD高三网
下面我们不妨用几个生活中的例子来理解一下:ngD高三网
火车站售票口排队的人群ngD高三网
旅客站成一队等待买票,排最前面的,先能买到票。站在最后面的,最后能买到。ngD高三网
如果我们把旅客看作是数据,这种数据结构就是【队列】。ngD高三网
特点是:先进先出。ngD高三网
小时候玩的玩具枪ngD高三网
玩具枪可以上一颗颗圆圆的子弹,向弹夹里装子弹的时候,是一颗一颗压下去的。但是射击的时候,最后压进去的子弹最先出来,最先压进去的子弹最后才出来。这种结构就是【栈】。ngD高三网
特点是:先进后出。ngD高三网
电脑的文件夹ngD高三网
文件夹可以包含有多个子文件夹和文件,子文件夹又可以再包含下一层的子文件夹和文件。ngD高三网
这个结构可以理解为【树型结构】。文件是树的“叶子“节点,子文件夹可以是树的分支,也可以是”叶子“。ngD高三网
特点是:分支和层级关系。ngD高三网
这时候,肯定有小伙伴又有疑问了,要这么多数据结构干什么?有什么用吗?ngD高三网
答案是肯定的,因为数据结构的存储方式不同,就决定了要执行任务的顺序以及速度不同。如果使用合适的数据结构会让你的程序性能达到最优。ngD高三网
3.2 算法ngD高三网
现在,我们再来说说【算法】。ngD高三网
算法,就是能够解决问题的方法。ngD高三网
这样说似乎有些抽象,我们举个例子来说,比如,我们要去人群里面找“穿蓝衣服、白裤子的男人“,人群人数很多,一眼找不到。那么要怎样找到呢?ngD高三网
有很多种方法,这里丫姐简单来说两种:ngD高三网
第一种:ngD高三网
先找穿蓝衣的ngD高三网
再从蓝衣服中找穿白裤子的人ngD高三网
判断是不是男人ngD高三网
第二种:ngD高三网
先把女的都排除掉ngD高三网
不是蓝衣服的排除掉ngD高三网
不是白裤子的排除掉ngD高三网
以上两种方法,最后都能达到我们的目的,两种都是算法。那么它们有什么优劣之分吗?ngD高三网
这需要看我们的面对的群体(数据)是什么样的:如果这个群体中女人居多,那么第二种方法则优势明显。ngD高三网
所以,在编程中,我们一直都在致力于寻找解决问题的最优算法。ngD高三网
说到这里,丫姐突然想起一个笑话,讲给你听。ngD高三网
一个程序员下班,他老婆打来电话说:「你下班后去超市买十个苹果回家,如果看到西瓜,就买一个。」ngD高三网
结果,程序员回来的时候只带了一个苹果回家,他的可怜下场不可可知。但导致他犯错误的思考逻辑却正是编程中的算法逻辑:「若没看到西瓜,就买十个苹果;若看到西瓜,则买一个苹果。」ngD高三网
总的来说,【算法】就是运用逻辑来解决问题。而将算法和数据结构结合起来,就是程序。而程序的设计,就是编程。ngD高三网
这个时候你可能又会想,那编程到底是一门知识,还是一种能力呢?ngD高三网
丫姐认为,【懂编程】是计算机知识积累的结果,但是【能编程】则是一种实践能力。ngD高三网
这就类似于:有些人汽车知识了解一大堆,但却不能开车上路。所以理论还是要和实践相结合呦~ngD高三网
好,真正知道编程到底是个啥之后,下一关丫姐会继续给你科普一些关于编程,你不知道的冷知识,标准让你张大嘴巴~ngD高三网
第四关 科普编程知识
欢迎来到第四关,本关我们主要科普一些编程常识,让你对编程理解的更透彻,也能拥有更多饭后谈资~ngD高三网
常识1:编程是谁发明的,如何演变的?ngD高三网
这个可就说来话长了,听丫姐细细给你道来。ngD高三网
你知道么?很久以前,在电子计算机诞生之前,计算机这个角色是由(女)人来扮演的。ngD高三网
因为大多数计算都是由人类女性,手工完成的,所以这些女人被统称之为「computers」。ngD高三网
但后来大家发现人计算既浪费时间,又存在误差,于是慢慢研究出一种东西,叫做【真空管】。ngD高三网
这些真空管有一个有趣的特性:用三个针脚可以控制真空管两端节点的电流。这使得真空管在处理模拟信号方面是可行的,真空管可以控制机器和传输模拟信号。ngD高三网
后来,数学家意识到,如果能够使用布尔运算,理论上就可以创建执行这些运算的机器。于是,人们使用这种理论构建了一些【机械式计算机】,但是由于机械计算机的速度太慢而且成本高昂,所以没有真正的应用。ngD高三网
下图就是【机械式计算机】:ngD高三网
接下来,是【固态晶体管】,能提供与真空管相同的功能,但它们更小,更便宜并且能够持续更长时间。所以电脑开始变得越来越便宜,越来越广泛。ngD高三网
但由于操作员(程序员)不得不坐在终端前,打开闭合开关,非常不方便,所以后来又发明出了穿孔打卡的方式,能够更简单方便地切换开关。ngD高三网
下图就是打出来的纸孔。打孔的卡上面有很多排线,每条线都有可以打的孔,这些线和开关相互匹配。ngD高三网
现在开始,人们不再天天操作那些乏味的开关了,改为程序员们去打孔了。每一条线,都代表着不同的指令。有个机器,可以连接到计算机读取这些指令。ngD高三网
就这样,我们就可以在【打孔卡】上面写程序啦。这减少了相当多的工作,写出一个卡片能使用相当久,也避免了重复造轮子问题。ngD高三网
再后来,天才格雷斯·霍珀(Grace Hopper)姐姐,后被人们称为“计算机程序之母“,她想出了一个很棒的点子。ngD高三网
她提出可以设计一种程序,让人们可以用类似英文的语法,把想做的事写下来,然后用这个程序把英文翻译成机器的语法,交给机器去执行。ngD高三网
于是,她发明了世界上第一个【编译器】 (Compiler),名字叫做 A-0。当时是没有任何组合语言及程序语言存在的,所有的程序设计人员都要把【程序】翻译成【机器码】,01101010110 这样的形式,在纸上打孔,再送到机器里去读。ngD高三网
编程语言因为 A-0【编译器】而迎来了曙光。虽然它只是科技史上的一小步,但是真的是革命性的,它改变了人类对于编程的思考方式,创造了抽象的思维方式。这意味着人们可以在更高的层次上思考。也改变了人们对如何编写程序的想法。ngD高三网
之后也就慢慢衍生出今天的编程来...ngD高三网
常识2:编程语言和编程是一个概念吗?ngD高三网
所谓编程语言,其实就是某一种计算机可以读懂的语言,它也是有发展历程的,你感不感兴趣?ngD高三网
坐好小板凳,听丫姐好好给你讲。ngD高三网
最先出生的编程语言是 机器语言。它非常简单。有多简单呢?ngD高三网
简单到只用“1”和“0”两个数字就可以进行编程。ngD高三网
它也非常让人恼火。有多恼火呢?ngD高三网
就像把盐粒和味精混合到一起,让你挑出来混进去的一粒白砂糖。ngD高三网
尽管机器语言难学难懂、不可复制、编程繁杂,但速度极快。但人类通过机器语言跟计算机对话,类似于外国人用中文和中国人讲话。所以对人类而言,0.00001秒和0.00000000001秒并没有什么差别。所以,哪怕你机器语言跑得再快,也不能获得人类芳心。ngD高三网
于是,汇编语言 诞生了。ngD高三网
汇编语言,用助记符代替了机器语言中的操作码,用地址符号或标号代替了指令或操作数地址。大概就相当于,这帮学中文的外国人开始学拼音了。ngD高三网
不过,汇编语言所做的事情只是将机器语言做了简单的编译。所以,移植和推广依然很困难,读懂代码的设计意图也存在不小的障碍。ngD高三网
终于在1956年,集万千宠爱于一身、引无数程序员秃头秃的 高级编程语言 诞生了。ngD高三网
FORTRAN,这个出生就注定了将围绕着无数锃光瓦亮头顶的荣光语言,居然是被一个并不怎么喜欢编程的约翰·巴克斯(John Warner Backus)发明出来的。ngD高三网
作为高级编程语言家族中长子,虽然经过了几代更迭,但依然在数值计算、科学和工程技术领域占据着强大的优势地位。老归老,但是要记住,你大爷永远都是你大爷。ngD高三网
当然,编程语言这东西倒也不是说越有资历就越受青睐。根据TOIBE 2019年10月发布的程序语言排行榜来看。ngD高三网
70年的C语言95年的Java 和 依然稳稳占据着前三的宝座,91年的Python如今势头正猛,坐上了第二的位置。ngD高三网
此外,排名前十的语言中:ngD高三网
70后C语言一枝独秀;ngD高三网
80后有3种语言上榜,表现最好的是83年被正式命名的C++,位列第四;ngD高三网
90后则有4种语言上榜,其中Java和Python表现最优,PHP与JavaScript紧随其后;ngD高三网
00后只有两种语言上榜,分别是C,与VisualBasic.NET。ngD高三网
我们有理由相信,未来将会有更丰富、更方便、更人性化的编程语言出现。也许某天,可以把人类语言直接翻译成机器语言也说不定……ngD高三网
所以,正在犹豫要不要学编程的小伙伴,还在等什么?赶紧学起来...ngD高三网
常识3:编程思维是什么?计算机思维呢?ngD高三网
首先,计算机思维和编程思维是一个概念,所以我们解释一个就可以了,那什么是编程思维呢?ngD高三网
有这么一句笑话,说学编程以前,1000是整数,学编程以后凑个整都是1024!ngD高三网
学术上讲,编程思维就是解决问题的算法加代码实现过程的集合。编程思维有两个组成部分,一部分是算法设计,另一部分是代码实现。ngD高三网
学习编程,其实最关键的不是要掌握编程的“语言”,而是要学会编程过程所用到的思考方式就是“编程思维”。ngD高三网
编程思维的核心,不是编程语言,也不是语法,甚至不是算法或数据结构本身,而是如何分解问题,从中发现规律,建立解决问题的模型,并映射到合适的数据结构和算法上,然后才能根据算法写程序实现。ngD高三网
比尔盖茨、扎克伯格、乔布斯等前辈都用经验告诉我们,拥有编程思维的人,就相当于成功了一半——不但逻辑清晰心思缜密,而且解决问题能力、管理能力也非一般人可比。ngD高三网
好啦,以上就是本次的全部内容了,不知道你有多大的收获呢?ngD高三网
另外,对现在我们的大多数朋友来说还是学编程技术最重要!栽一棵树最好的时间是十年前,其次是现在。对于准备学习编程的小伙伴,如果你想更好的提升你的编程核心能力(内功)不妨从现在开始!ngD高三网
编程学习书籍分享:ngD高三网
编程学习视频分享:ngD高三网
整理分享(多年学习的源码、项目实战视频、项目笔记,基础入门教程)ngD高三网
欢迎转行和学习编程的伙伴,利用更多的资料学习成长比自己琢磨更快哦!ngD高三网
对于C/C++感兴趣可以关注小编在后台私信我:【编程交流】一起来学习哦!可以领取一些C/C++的项目学习视频资料哦!已经设置好了关键词自动回复,自动领取就好了!ngD高三网
ngD高三网
以上就是编程入门:如何正确认识编程?除了高薪,我再告诉你一些秘密的全部内容,接下来,我们一起来了解关于各网友对于c语言编程入门教程视频这个话题的讨论结果。
编程入门:如何正确认识编程?除了高薪,我再告诉你一些秘密
你会不会编程?我答:会啊...小侄子:那你教教我呗,教我怎么成为网上说的那个黑客?用一台电脑,黑框框,敲一堆看不懂的字符,随时可以把别人账户里的钱偷走...ngD高三网
c语言编程入门教程视频拓展阅读
ngD高三网
黑马程序员C++入门视频教程(完整版)
标签:
c语言编程入门教程视频 c语言编程入门免费教程 赵海英c语言教学视频 鸡兔同笼c语言编程 c语言编程方法视频 c语言桌面编程 软件编程c语言一级考试评价标准 c