前几篇文章,我们主要破除了对编程的部分偏见,以及说明了为什么要学习编程,那么下面我们就正式进入主题,首先讲一下到底什么是编程。编程就是编写代码,让计算机按照预期执行并最终获得结果的过程。

我们把计算机想象成一个特殊的国家,这个国家只认识0和1,那么我们想要与这个国家沟通,就需要学会这个国家的语言,不过因为这种语言太奇特,我们发明了一个翻译器,将我们想要表达的内容翻译成0和1,这样就实现了与计算机的沟通。把我们的想法输入翻译器的过程,就是编程的过程。

由此我们可以看出,它主要分两大块内容,第一块就是编写代码文件,就是用特定的格式和规则编写文本文件。其主要的作用就是使人可以用自己可以看懂的内容控制计算机执行的过程。第二块就是翻译器翻译的过程,它学名叫做编译器,将人可以看懂的文本文件翻译成计算机可以明白的指令,从而可以控制计算机按照预期运行。

我们用编程界的常青树,C语言来举个简单的例子。

目标:在屏幕上打印hello world

准备:c语言编译器、文本编辑器

过程:

1. 编写代码文件

每种编译器都有自己特定的格式和规则,c语言编译器的基本要求需要有头文件的引入和主函数main作为入口,代码段需要用{}括起来。

#include <stdio.h>
int main()
{printf("hello world\n");return 0;
}

2. 编译过程

通过编译器将代码编译成计算机可执行的文件

windows:VC++编译成exe文件

linux:gcc编译成可执行文件(gcc -o hello hello.c)

开启编程之旅——什么是编程相关推荐

  1. python turtle绕原点旋转_「加德老师与小朋友们的编程之旅」Python海龟作图(上)

    加德老师寄语: 小朋友们,家长朋友们,大家好! [加德老师与小朋友们的编程之旅]今天迎来第二节课--用python进行海龟作图(上) Python被誉为现今人工智能第一语言,适合9岁以上孩子进行编程入 ...

  2. 读游戏之旅-我的编程感悟:难得的休闲读物

    昨天拿到了云风的<游戏之旅-我的编程感悟>一书,回家后按照习惯看了目录,看了前言.是本很不错的总结书籍..如果你做程序有些年头的话,肯定会和作者有很多共鸣之处..昨天差不多看了100多页. ...

  3. UNIX网络编程之旅-配置unp.h头文件环境

    最近在学习Unix网络编程(UNP),书中steven在处理网络编程时只用了一个#include "unp.h"  相当有个性并且也很便捷 于是我把第三版的源代码编译实现了这个过程 ...

  4. QML编程之旅 -- 事件处理

    文章目录 QML编程之旅 -- 事件处理 1.鼠标事件 2.键盘事件 3.输入控件与焦点 QML编程之旅 – 事件处理 QML也可以对键鼠事件进行处理.因为QML程序更多的是用于实现触摸式用户界面,所 ...

  5. QML编程之旅 -- 元素布局

    文章目录 QML编程之旅 -- 元素布局 1.Positioner(定位器) 2.重复器 3.锚点 QML编程之旅 – 元素布局 概述: QML编程中可以用X,Y属性手动布局元素,但这些属性是与元素父 ...

  6. QML编程之旅 之可视元素

    文章目录 **QML编程之旅 -- 可视元素** 1.矩形元素 2.图像元素 3.文本元素 4.自定义元素(组件) QML编程之旅 – 可视元素 QML 语言使用可视元素来描述图形化用户界面,每个可视 ...

  7. QML 编程之旅 -- QML程序的基本结构概念

    文章目录 QML 文档的构成 QML基本语法 QML 编程之旅 – QML程序的基本结构概念 学习Qt编程快近一年了,的确是项目驱动,让我不得不咬紧牙关,需要快速的学习掌握一门新的技术.编程是一个非常 ...

  8. 父与子的编程之旅 python 3 pdf_《父与子的编程之旅》嵌套循环例题解析

    <父与子的编程之旅>,11.4可变嵌套循环的问题解答. numBlocks 书里是Python2.X,我的是Python3.X,原理没有差别. 分析如下: 0.手动输入input 当 in ...

  9. ASP.NET AJAX客户端编程之旅(二)——知其所以然

    摘要 在上一篇文章中,做了一个"Hello!ASP.NET AJAX"的小例子,但是并没有对其中的技术做解释.这一篇中,将探讨一下使用ASP.NET AJAX框架在客户端调用后台代 ...

最新文章

  1. python开源项目及示例代码
  2. Web中的XHRHttpRequest
  3. 网页解析之BeautifulSoup
  4. ubuntu 升级python3.8_Ubuntu上python升级到最新3.8版
  5. 【转载】索引的一些总结
  6. java检测tomcat宕机_Tomcat意外宕机分析
  7. 跟着别人的感觉做网络推广之二
  8. 微前端与项目实施方案研究
  9. 剖析printf函数
  10. 来认识下less css
  11. SpringCloud Stream操作消息队列
  12. Python批量移动文件到指定目录
  13. QQ空间自动点赞评论助手 微博自动点赞自动转发神器带源码(超简单)
  14. php用户注册审核,php 之 注册审核(0523)
  15. 公钥,私钥,对称密钥
  16. C# 解析Json文件(使用NewtonJson库)
  17. WIN10 VS2019 编译Cyrus SASL
  18. 类的创建以及使用(成员变量 成员方法)
  19. 网络面经总结-仅供参考
  20. Hadoop YARN容错机制

热门文章

  1. Vue SSR 从入门到 Case Study
  2. matlab程序窗口是乱码,解决matlab中文乱码
  3. 山寨VR头显调查:资本宠儿沦为10元钱的电子垃圾
  4. 关于IT信息化的一些感想
  5. 【附源码】Java计算机毕业设计飞越青少儿兴趣培训机构管理系统(程序+LW+部署)
  6. IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY(TCSVT) 投稿经验
  7. 使用自己的INDEMIND相机来运行ORBSLAM2单目,双目和深度模式(小觅相机和realsense通用)
  8. 独秀日记:好奇心的柜子
  9. 戴尔 Vostro 3470 成就商务台式机(i3-8100) 安装Win7系统
  10. cmder linux ssh,Terminus:一款不错的SSH软件,适用于Windows、macOS和Linux系统