首先,需要一款C语言的编译器,可以使用在线编译器,也可以在本地安装编译器,比如Mac电脑可以安装Xcode,PC可以安装Dev C++。
若是第一次编写程序,建议使用在线编译器,推荐 菜鸟编译器

编写第一个程序:Hello World!

#include <stdio.h>

int main()
{
/* 我的第一个 C 程序 */
printf("Hello, World! \n"); return 0;
}

运行结果:

Hello, World!
 
helloworld.png

程序分析:
(1)
这里stdio.h是一个头文件。代表stantard input & output。C语言的程序文件分为头文件(.h)和源文件(.c),这两都的具体概念以后再讲解。
stdio.h中声明了一些方法,比如printf函数就是在stdio.h中声明的。

#include <stdio.h>

就是把stdio.h文件包含进来,否则程序会不认得printf函数。

(2)
在C语言中,形如int main() {...}的表示定义一个函数。
main是函数名称,int代表整形,int在main的前面表示这个函数必然返回一个整数。咱们这个函数最终返回的就是整数0。
大括号之间,是函数体。本例中的函数体内容的作用是打印出Hello World并返回0。程序语言中的打印指的是在控制台里输出结果,而不是像打印机那样把纸打印出来。

(3)

/* 我的第一个 C 程序 */

C语言中,被包含在斜杠和星号中的内容是注释内容。注释内容是写给人类看的,不会被编译或运行。
C语言中,有两种注释方式。一种是斜杠和星号,另一种是//
两者的区别为:
斜杠和星号既可以注释一行(见上面的程序),也可以注释多行,例如:

/* 我的第一个C程序
尝试打印Hello World! */

//则只能注释一行。若有多行要用//注释,则需要多个//。例如:

// 我的第一个C程序
// 尝试打印Hello World!

(4)
printf()带了一对小括号,表明它也是一个函数。没带大括号,也没有返回类型,因为这是函数调用。main函数调用了printf函数。
printf()函数的声明在stdio.h中,printf()函数的定义在stdio.c中。要调用函数时,只须把该函数所在的头文件包含进来就行,不用包含源文件。
printf()的作用是把()中的内容在控制台打印出来。

(5)
“\n”是个转义字符。什么叫转义呢?比如n本来是表示一个字符,加上斜杆后,不再表示字符n,而是表示换行。意义已经转变了,所以叫转义字符。

(6)
return 0;是main()函数的返回值,main()函数是特殊的函数,只调用别人,不会被别人调用。所以返回多少无关紧要,比如还可以return 1; 或return 100;

总结:
第一次接触程序,上面有些东西,估计不会一下子全明白过来。但是不要紧,只要能明白一半就行。本节课主要是看一下程序长什么模样,运行结果长什么模样。

小朋友学C语言(1):Hello World的更多相关文章

  1. 小朋友学C语言(7)

    数组 一.数组简介 C 语言支持数组数据结构,它可以存储一个固定大小的相同类型元素的顺序集合.数组是用来存储一系列数据,但它往往被认为是一系列相同类型的变量. 数组的声明并不是声明一个个单独的变量,比 ...

  2. 小朋友学C语言(3):整数、浮点数、字符

    C语言的数据类型有整型.浮点型(就是小数).字符.字符串.数组.结构体等.刚开始学的时候,不要一下子学太多.先学最基本的整型.浮点型和字符. 对于学习程序来说,最重要的是动手操作. 先编写程序: #i ...

  3. 小朋友学C语言(2):安装Dev C++编译器

    (一)编译器 编译器是将“一种语言(通常为高级语言)”翻译为“另一种语言(通常为低级语言)”的程序.一个现代编译器的主要工作流程:源代码 (source code) -->预处理器 (prepr ...

  4. 小朋友学C语言(8)

    求圆周率 (一)圆周率简介 圆周率(Pi)是圆的周长与直径的比值,一般用希腊字母π表示,是一个在数学及物理学中普遍存在的数学常数.π也等于圆形之面积与半径平方之比.是精确计算圆周长.圆面积.球体积等几 ...

  5. 小朋友学C语言(6)

    (一) 先动手编写一个程序: #include <stdio.h> int main() { if(1) { printf("The condition is true!\n&q ...

  6. 小朋友学C语言(5):常量和变量,for循环

    动手编写程序: #include <stdio.h> int main() { int a = 1; printf("a = %d\n", a); a = 2; pri ...

  7. 小朋友学C语言(4):单精度浮点数与双精度浮点数

    上节课简单介绍了浮点数.计算机程序中的浮点数分为单精度浮点数和双精度浮点数. 单精度和双精度精确的范围不一样. 计算机里的最基本的存储单位用位(bit)来表示.bit只能用来存储0或1. 稍大一点的单 ...

  8. 小朋友学C++(2)

    多态 (一) 先编写函数: #include <iostream> using namespace std; class Shape { protected: int width, hei ...

  9. 小朋友学Python(4)

    Mac下安装Python 3 Mac系统会自带Python 2.7.x.安装Python 3时,不要卸载Python 2.7.x,因为有Mac系统有一些库会依赖于Python 2.7.x. 安装步骤: ...

随机推荐

  1. Revit api 创建族并加载到当前项目

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  2. DefinePlugin插件

    这个插件允许你创建全局常量用于编译时解析.如果设置mode:"production",webpack默认会设置"process.env.NODE_ENV": J ...

  3. Ansible Ad-Hoc命令(三)

    一.Ad-Hoc 介绍 1.了解下什么是Ad-Hoc ? Ad-Hoc 其实就是基于Ansible 运行的命令集,有些类似终端中敲入的shell命令,Ansible提供了两种运行完成任务的方式,一种是 ...

  4. chmod修改权限

    1.命令简介 chmod(Change mode) 用来将每个文件的模式更改为指定值.Linux/Unix 的档案调用权限分为三级 : 档案拥有者.群组.其他. u :目录或者文件的当前的用户 g : ...

  5. eclipse web项目没有run on server

    如下图,将 Dynamic Web Module和Java勾选上

  6. Visual Studio: 一键卸载所有组件工具,彻底卸载干净。

    第一步.手动卸载VS主体 第二步.下载工具并解压 网盘下载地址:https://pan.baidu.com/s/1eSHRYxW 也可以在Github上下载最新版本:https://github.co ...

  7. 通过Hibernate API编写访问数据库的代码

    private Configuration config;// 1.声明私有配置对象类private ServiceRegistry serviceRegistry;// 2.声明私有服务注册对象类p ...

  8. GTX_SDI搭建流程

    GTX_SDI搭建流程 1.GTX wrapper 因为顶层的GTX wrapper在实际的SDI工程中用不到,我们只是需要GTX wrapper模块中的部分文件.因此,在SDI工程中,我们并不需要生 ...

  9. [Android] 配置build.gradle 动态传参

    (1)一个Android工程中有一个build.gradle是负责Project范围的,而Module中又有各自的build.gradle是专门负责模块的. (2)在Gradle中Task是一等公民, ...

  10. 黄聪:ionic使用ion-nav-bar设置了bar-positive类但在安卓Android设备中无法置底

    这时候还需要加这段代码: var app = angular.module("app", ["ionic" ]); app.config(["$ion ...