一个简单的C程序

一个简单的C程序
下面通过一个简单的实例来看看C语言程序是什么样的。为了便于讲解,实例代码中专门标注了行号(真实程序中这些行号是不存在的)。
【例1.1】输出一行语句
本实例程序的功能是显示一条信息“Welcome to Coolcou”,通过这个程序可以初窥C程序的样貌。虽然这个简单的小程序只有7行,却充分说明了C程序是由什么位置开始、什么位置结束的。
一个简单的C程序
运行程序,显示效果如图所示。
一个简单的C程序

#include指令

实例代码的第1行是一个编译预处理命令,声明了在程序编译之前要预先处理的内容。

#include<stdio.h>                   /*包含头文件stdio.h*/

其中,include称为文件包含命令,后面尖括号中的内容称为头文件或首文件。本行代码的作用是声明本段代码已包含标准输入/输出库函数stdio,后续可直接调用,不需要用户再进行定义。有关预处理的内容,将会在第13章中进行详细讲解,在此读者只需对相关概念有所了解即可。

空行

实例代码的第2行是一个空行。
C语言是一个相对灵活的语言,格式并不是固定不变的。也就是说,空格、空行、跳格并不会影响程序的运行。有的读者会问:为什么要有这么多空格和空行呢?其实这就像生活中在纸上写字一样,虽然拿来一张白纸就可以在上面写字,但是通常还会在纸上印上一行一行的方格或段落,隔开每一段文字,使书写更加美观和规范。合理、恰当地使用这些空格、空行,可以使编写出来的程序更加规范、干净和易于阅读。
注意
并不是所有的空格都没用。比如,两个关键字之间要用空格隔开(else if),这种情况下如果将空格去掉,程序就不能通过编译。这里大家有个感性认识就好,在后续的学习中可以慢慢领悟。

3.main函数声明
实例代码的第3行如下:

int main()                          /*主函数main,这里是程序入口*/

本行代码的作用是声明main函数有一个整型返回值。其中的int称为关键字,该关键字代表的类型是整型。

函数中,这一部分称为函数头部分。每个C程序都必须有一个main函数,表示程序的入口部分。也就是说,程序都是从main函数头开始执行的,然后进入main函数体中,执行其中的代码块。

函数体

实例代码中的第4~7行如下:

{
    printf("Welcome to Coolcou\n"); /*输出要显示的字符串*/
    return 0;                       /*程序返回0*/
}

上面介绍main函数时,提到了一个名词“函数头”。既然有函数头,是不是也应该有函数体呢?没错,一个函数通常就分为两个部分:一是函数头,二是函数体。
程序代码的第4行和第7行是两个大括号,这对大括号以及其中的语句块就构成了函数体。第5行和第6行语句就是函数体中要执行的内容。其中,printf函数就包含在标准输入/输出库文件stdio中,因为前面做了包含声明,所以这里开发者可以直接调用,进行字符串的输出操作。

执行语句

函数体中的第5行代码如下:

    printf("Welcome to Coolcou\n"); /*输出要显示的字符串*/

执行语句就是函数体中要执行的动作内容。本行代码是这个简单例子中最复杂的语句,但其实不难理解。printf是格式化输出函数,用于向控制台输出文字或符号。括号中的内容称为函数参数,这里可以看到要输出的字符串为“Welcome to Coolcou”。其中还可以看到“\n”这样一个符号,称之为转义字符,其作用是实现换行。

特别需要注意的是,语句的结尾一定要添加英文分号。

return语句

函数体中的第6行代码:

    return 0;                       /*程序返回0*/

本行语句使main函数终止运行,并向操作系统返回一个整型常量0。前面介绍main函数时,说过它需要返回一个整型值,这里0就是要返回的整型值。可以将return语句理解成main函数的结束标志。

代码注释

在多句程序代码后,均可以看到一段由“/*”“*/”括起来的文字描述。例如:

    printf("Welcome to Coolcou\n"); /*输出要显示的字符串*/
    return 0;                       /*程序返回0*/

这段对代码的解释描述性文字称为代码注释,作用是为了他人能快速理解程序代码的含义和设计思想。注释内容包含在“/*”“*/”之间,其语法格式如下:

/*其中为注释内容*/

注意
编写规范的代码格式和添加详细的注释,是一个优秀程序员应该具备的好习惯。

赞(1)

评论 抢沙发

评论前必须登录!