首先,需要一款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. [转载] IIS来搭建一个只能实现基本功能的FTP服务器

    转自  http://blog.sina.com.cn/s/blog_3f7e47f20100haur.html 本文介绍通过win7自带的IIS来搭建一个只能实现基本功能的FTP服务器,第一次装好W ...

  2. IDEA基本設置

    2.界面字体大小设置 File菜单->Settings->Appearance->Override default fonts by(not recommended):Name:宋体 ...

  3. linux centos6 yum 安装lamp

    centos 6.5 1.yum安装和源代码编译在使用的时候没啥区别,但是安装的过程就大相径庭了,yum只需要3个命令就可以完成,源代码需要13个包,还得加压编译,步骤很麻烦,而且当做有时候会出错,源 ...

  4. Python 处理JSON数据报错解决办法

    春节期间通过接口爬取携程数据的时候,返回的json字符串通过json.loads加载时报错"ValueError: Invalid control character at: line 1 ...

  5. apache的MultipartEntityBuilder文件上传

    本文讲解多文件上传方法,不比较上传有几种方法和效率,而是定向分析apache的httpmime包的MultipartEntityBuilder类,源码包:httpmime-4.5.2.jar 一.常用 ...

  6. ecstore开启发送邮件日志,并且排查邮件发布出去原因

    config.php里 define("MAIL_LOG", true);//发送邮件日志开启2017-04-19 10:29:31 解决sendmail connection r ...

  7. 【转】CSR蓝牙驱动程序引起的Win7奇怪问题

    https://www.yanning.wang/archives/299.html @echo off title 恢复系统 REM 变量初始化 rem CSR路径 set CSRPath=&quo ...

  8. WPF Demo14 依赖属性

    using System.Windows; namespace DependencyPropertyDemo1 { public class Student:DependencyObject { pu ...

  9. php访问SQLserver时加载的dll

    php_sqlsrv_55_ts.dll 线程t安全sphp_sqlsrv_55_nts.dll 非n线程t安全s

  10. DS树+图综合练习--构建邻接表

    题目描述 已知一有向图,构建该图对应的邻接表.邻接表包含数组和单链表两种数据结构,其中每个数组元素也是单链表的头结点,数组元素包含两个属性,属性一是顶点编号info,属性二是指针域next指向与它相连 ...