导读:一般学一门计算机语言的第一堂上机课(“上机”顾名思义,上计算机,机你太美),就是往屏幕输出“hello world”,本章也不例外。

3.1 Hello,World!

这一节和读者一起来编写第一段C语言程序,过程详细到令人发指。

3.1.1创建C语言源码文件

打开 Dev C++,在上方菜单栏中选择“文件 --> 新建 --> 源代码”,如图3.1

图3.1  创建源代码文件

3.1.2输入一段代码

用键盘输入以下代码,先输入,等会再分析:

#include void main()

{

printf("hello,world");

}

图3.2  输入第一段代码

3.1.3文件保存

保存到自定义的目录下,给这个C语言程序的取名为hello world.c,后缀为“c”,说明此文件就为C语言程序文件。

图3.3  保存为后缀为c的文件

3.1.4编译运行

点击“运行 --> 编译运行”,为什么要编译运行呢,根据不同操作系统,比如windows的可执行文件后缀为"exe",所以编译c语言文件为可执行的exe文件,这样才能在windows下执行。

图3.4  编译运行代码

3.1.5查看运行结果

图3.5   执行结果

可以发现,在保存hello world.c的文件夹下面,多了一个hello world.exe,这个就是编译链接后生产的可执行文件,一般电脑要关闭杀毒软件就能执行它了。

下一节会简明的说一下这段程序的意思。

3.2初识C语言代码

本节主要讲解上一节写的五行C语言程序。

#include void main()

{

printf("hello,world");

}

下面就针对代码的每一行进行讲解。

3.2.1 #,<>,(),{},"",;这些符号有什么用?

首先我们得清楚一个概念,编译器神通广大!

看到这么多符号,比如:#,<>,()......等等,先别紧张,它们都是给编译器标识语句用的,这一小节先暂时不去考虑它们的意思,只要记住,编译器有它识别的规范,这些都是规定好的,照做既可。

注意:咱们中国人一般吧"#"念做井号,外国人应该把它念做Sharp,不管它怎么念,C语言要会写会用即可,程序员一般话不多说,直接用代码说事。

3.2.2 #include

C语言代码需要用到C库里面的功能的话,就需要申明头文件,声明头文件的格式需要用到符号“#”,以及关键字include,然后把需要用到的头文件放入<>符号中,比如本节用的,就把头文件stdio.h放入<>之中。

新手肯定要开始困惑了,啥是C库?啥是“声明”?头文件又是什么东东?为啥要用到"#"?那就由我来逐一解释吧。

注意:如果解释的不够详细,请在下发评论,我会根据建议重新修改这方面的解释的。

C库与头文件:C语言为了减轻程序员的工作量,提供了C库。C库里面有好多好多功能,好多好多文件。为了编译速度快些,所以当程序员需要使用C库的某些功能的时候,就需要添加相关头文件来表明,不需要就不添加。比如我们用到的stdio.h这个头文件吧,这个就是标准的C库输入输出头文件,相关功能下一小节详细介绍。

注意:读者暂时可以这么理解,输入就是接受键盘的输入,输出就是屏幕上输出显示。

声明与#include:上述说过,当程序员需要使用C库的某些功能的时候,就需要添加相关头文件来表明,这个过程就是声明,声明头文件用到标识符#,然后再用到关键字include,这些都是C语言代码格式的规定,照着做就是了,以后代码写多了也就渐渐明白了。

提示:可以知道include的直译意思就是包含,包括。

3.2.3 printf("hello world");

上一小节说到stdio.h这个头文件,是标准C库的输入输出头文件。我们已经声明了这个头文件,所以就可以使用头文件里所有的功能,其中一个就是printf功能。

注意:声明头文件办法之前说过,这么做:#include

先直译一下printf,print的意思就是打印,f的意思我认为是flow的缩写,就是流,所以printf的意思就是打印流或者叫输出流,最终输出流输出到显示屏上显示出来。

注意:流好比高山流水的水流,计算机编程里面用流来表示要流过CPU的数据流,这里的输出流就是要输出到显示屏的数据流。

图3.6  数据流

本节我们输出到显示屏上的文字是hello world,现在需要读者打开Dev-C++,打开helloworld.c,把鼠标移动到printf中,按下键盘“Ctrl”,会发现鼠标显示变成了手的形状,点击鼠标可以看到如下代码:int__cdecl printf(constchar* __restrict__ _Format,...);

看着似乎有点复杂呢,不急,本小节只需要知道printf的使用方法之一,输出文本流即可,用法就是在printf后的括号里面,添加双引号“”,再把需要输出的文本流放入双引号里面就行了,最后括号外面添加分号;即可:printf("hello world");

读者可以自行修改需要输出到显示屏的文本流,看看效果体验一下吧。

3.2.3 void main()与{}

void是定义不需要返回值,为空的意思。

main是主函数。

()的意思等同于库函数printf的(),用来输入参数用的。

{}标识函数体的起始。

这里涉及的返回值,函数,参数等知识,读者先不用考虑,后面章节会逐一解释,目前读者只需要死记住,每次写程序套用这个格式即可:

void main()

{

所有程序内容写在{}里面

}

程序写在大括号{}里即可。

3.3 初识编程规范

写程序的时候,每个人的品味不同,写出来的程序风格也会有区别,但是大体上要参照一定的格式,为的是能让一般程序员看的舒服。比如声明头文件的时候,#include ,在include后面会加一个空格,再比如main函数的函数体内,printf语句前会添加四个空格,也就是一个TAB按键空出的空间。

好啦,今天的学习就到这里吧!

自学C/C++不易,此路应携手前行。

如果你想跟着小编一起学编程的话!

可以来我专栏的C语言/C++编程学习交流俱乐部,【点击进入】!

还有(源码,零基础教程,项目实战教学视频),欢迎初学者和正在进阶中的小伙伴们!

使用c语言编程首先要新建,【C语言编程入门系列】—— 第三章,编写第一个C语言程序!...相关推荐

  1. C语言编程入门之--第三章编写第一个C语言程序

      导读:一般学一门计算机语言的第一堂上机课("上机"顾名思义,上计算机,机你太美),就是往屏幕输出"hello world",本章也不例外. 3.1 Hell ...

  2. 一个c语言程序的开发环境,C语言入门(2)——安装VS2013开发环境并编写第一个C语言程序...

    在C语言入门系列中,我们使用Visual studio 2013 Professional作为开发工具.本篇详细介绍如何安装Visualstudio 2013 Professional并写出我们第一个 ...

  3. 在编写了一个c语言源程序c001.c,C习题及答案

    第一.二章 C语言概述与算法 一.选择题(四个选项中只有一个是正确的----下同) 1. 一个算法应该具有"确定性"等五个特性,下面对另外4个特性的描述中错误的是 A) 有零个或多 ...

  4. 用计算机c语言输出你好,编写第一个C语言程序 - Hello World

    前言 前面已经唠叨了这么多理论知识,从这讲开始,就要通过接触代码来学习C语言的语法.学习任何一门语言,首先要掌握的肯定是语法.学习C语言语法的目的:就是能够利用C语言编写程序,然后运行程序跟硬件(计算 ...

  5. P1P2P3口接24个灯流水的c语言代码,第三章单片机并行口c语言程序设计.ppt

    第三章单片机并行口c语言程序设计 3.1 80C51的并行口结构与应用 3.1.1 P0口.P2口的结构 1.P0口作通用的I/O口使用. 这时,CPU发来的"控制"信号为低电平, ...

  6. 恶作剧c语言程序,自己用C语言编写的一个恶作剧小程序代码

    自己用C语言编写的一个恶作剧小程序代码 #include #include #include #define MAX 100 void hebingString(char s1[],char s2[] ...

  7. c语言 方程改main的值_C语言编程笔记丨编写第一个C语言程序hello world,我教你哇...

    如果用C语言输出:Hello,world!,该如何编写程序? **代码如下:** #include//包含标准库的信息 main()//定义名为main的函数,不接受参数值 {//main函数的语句都 ...

  8. 《基于ArcGIS的Python编程秘笈(第2版)》——第1章 面向ArcGIS的Python语言基础

    本节书摘来自异步社区<基于ArcGIS的Python编程秘笈(第2版)>一书中的第1章,第1.1节,作者: [美]Eric Pimpler(派普勒) 更多章节内容可以访问云栖社区" ...

  9. C语言程序设计:现代方法(第2版)第三章全部习题答案

    前言 本人在通过<C语言程序设计:现代方法(第2版)>自学C语言时,发现国内并没有该书完整的课后习题答案,所以就想把自己在学习过程中所做出的答案分享出来,以供大家参考.这些答案是本人自己解 ...

最新文章

  1. (2)PyCharm开发Flash项目之蓝图构建
  2. 光流 | 基于Horn-Schunck HS变分光流算法改进
  3. NickLee.FortuneBase数据库sql server版工具篇
  4. PCL:全程详解 VS2010+PCL配置
  5. [Java][内存模型]
  6. win10找回win7的windows照片查看器
  7. Java操作DB2 XML数据实践
  8. 推荐阅读20100603
  9. 聊天机器人5步重塑酒店业
  10. 怎样压缩PPT文件的体积
  11. 理财系列4 股票体检指标之股息率
  12. 双系统开机 进入grub resource,并且进不bios
  13. 计算两个时间相差多少时间--天、小时、分、秒
  14. 【题解】Codeforces 727E. Games on a CD AC自动机
  15. 请用SQL查询:昨天所有用户的签到和签退时间
  16. 安装ubuntu16.04 14.04 登录时一直显示紫色问题
  17. ajax.updater 返回值,使用 Ajax.Updater() 类
  18. ssm基于Android的自来水收费系统APP-计算机毕业设计
  19. 网站空间服务器100m,网站100m空间
  20. 华为校招软件上机考试题目解析

热门文章

  1. 信息化与业务流程再造
  2. endnoteX9导入英文PDF文献,可以识别Doi,但无法显示参考文献信息,如何解决?
  3. board crt_【大强哥-k8s从入门到放弃02】Kubernetes1.17部署Dashboard2.0
  4. HTML5中的summrary标签,KeywordCloud在文献检索中的应用研究
  5. java玩hypixel_著名服务器Hypixel入驻《我的世界》中国版
  6. CF1463-D. Pairs
  7. 我是一个SDN交换机
  8. CTF比赛PWN题sgtlibc通用快速解题框架
  9. 邮件服务器专用术语,邮件群发中的常见术语
  10. Ubuntu18.04 安装Docker 报错:Signed-By 中含有互相冲突的值