牛骨文教育服务平台(让学习变的简单)

5.第一个C语言程序

为了说明C语言源程序结构的特点,先来看下面几个程序。这几个程序由简到难,表现了C语言源程序在组成结构上的特点。虽然有关内容还未介绍,但可从这些例子中了解到组成一个C源程序的基本部分和书写格式。

【例1-1】输出 Hello World

main(){
    printf("Hello World !");
}

说明:

  • main是主函数的函数名,表示这是一个主函数。
  • 每一个C源程序都必须有主函数,并且只能有一个主函数(main函数)。
  • printf函数的功能是把要输出的内容送到显示器去显示。
  • printf函数是一个由系统定义的标准函数,可在程序中直接调用。

【例1-2】另一个C语言程序

#include<math.h>
#include<stdio.h>
main(){
    double x,s;
    printf("input number:
");
    scanf("%lf",&x);
    s=sin(x);
    printf("sine of %lf is %lf
",x,s);
}

说明:

  • include称为文件包含命令
  • 扩展名为.h的文件称为头文件
  • 定义两个实数变量,以被后面程序使用
  • 显示提示信息
  • 从键盘获得一个实数x
  • 求x的正弦,并把它赋给变量s
  • 显示程序运算结果
  • main函数结束

该程序的功能是从键盘输入一个数x,求x的正弦值,然后输出结果。在main()之前的两行称为预处理命令。预处理命令还有其它几种,这里的include称为文件包含命令,其意义是把尖括号<>或引号""内指定的文件包含到本程序来,成为本程序的一部分。被包含的文件通常是由系统提供的,其扩展名为.h。因此也称为头文件或首部文件。C语言的头文件中包括了各个标准库函数的函数原型。因此,凡是在程序中调用一个库函数时,都必须包含该函数原型所在的头文件。在本例中,使用了三个库函数:输入函数scanf,正弦函数sin,输出函数printf。sin函数是数学函数,其头文件为math.h文件,因此在程序的主函数前用include命令包含了math.h。scanf和printf是标准输入输出函数,其头文件为stdio.h,在主函数前也用include命令包含了stdio.h文件。

需要说明的是,C语言规定对scanf和printf这两个函数可以省去对其头文件的包含命令。所以在本例中也可以删去第二行的包含命令#include。

同样,在【例1-1】中使用了printf函数,也省略了包含命令。

在例题中的主函数体中又分为两部分,一部分为说明部分,另一部为分执行部分。

说明是指变量的类型说明。【例1-1】中未使用任何变量,因此无说明部分。

C语言规定,源程序中所有用到的变量都必须先说明,后使用,否则将会出错。这一点是编译型高级程序设计语言的一个特点,与解释型的BASIC语言是不同的。说明部分是C源程序结构中很重要的组成部分。本例中使用了两个变量x,s,用来表示输入的自变量和sin函数值。由于sin函数要求这两个量必须是双精度浮点型,故用类型说明符double来说明这两个变量。说明部分后的四行为执行部分或称为执行语句部分,用以完成程序的功能。执行部分的第一行是输出语句,调用printf函数在显示器上输出提示字符串,请操作人员输入自变量x的值。第二行为输入语句,调用scanf函数,接受键盘上输入的数并存入变量x中。第三行是调用sin函数并把函数值送到变量s中。第四行是用printf 函数输出变量s的值,即x的正弦值。程序结束。

运行本程序时,首先在显示器屏幕上给出提示串input number,这是由执行部分的第一行完成的。用户在提示下从键盘上键入某一数,如5,按下回车键,接着在屏幕上给出计算结果。