下面通过几个简单的C程序,进一步了解C程序的结构特点。
例1.1 在屏幕上显示“Welcome!”和“Let’s learn about C programming.”两行信息。
程序代码如下:
程序运行后,输出以下两行信息:
上面程序中的“#include<stdio.h>”表示把尖括号<>内的stdio.h文件包含到本程序中。stdio为standard input/output(标准输入/输出)的缩写。C语言中有关输入/输出函数的格式均定义在stdio.h文件里。
C程序是由许多函数组合而成的,在上面的程序中只包含一个“主函数”,main是主函数名(每一个C程序都必须有且只有一个main函数),主函数main是C程序执行的入口。main前面的int表示函数的返回类型,即main函数的类型为int型。
在例1.1的程序中,放在一对大括号{}里面的部分称为函数体。函数体内的printf是C语言中的输出函数,双引号内的字符串是被输出的信息。“\n”是换行符,表示在输出“Welcome!”后回车换行,然后输出“Let’s learn about C programming.”。
每个语句用一个分号结尾。函数体内的“return”语句为主函数结束时的返回值。由于main函数的类型为int,因此返回值必须为一个整型值。一般而言,返回值为0表示正常返回。
例1.2 计算两个int型变量之和,并在屏幕上显示计算结果。
程序代码如下:
程序运行后,输出结果如下:
在该程序中,使用/*…*/表示注释。注释只是用于解释程序,对编译和运行不起任何作用。
在该程序的函数体内(即一对大括号之间):第1行,定义变量,定义了3个int型变量;第2行,两个赋值语句,将23赋值给变量n,将345赋值给变量m;第3行,将n和m之和赋值给sum;第4行,printf是输出函数,其中的%d表示按照“十进制整数类型”的格式输出sum的值,执行输出时,系统将在%d位置上以一个十进制整数值代替%d;函数printf中括弧内最右端的sum是要输出的变量,它的值是368,因此输出“两个变量的和为368”。(www.daowen.com)
例1.3 调用自定义函数计算变量a与b的和。要求在主函数中输入变量a与b的值,并将计算结果输出。
程序代码如下:
上面的程序由两个函数(即主函数main和自定义函数sumtwo)组成。
函数sumtwo是一个用户自定义函数,它的功能是求两个整数之和并返回给主函数。它有两个int型的形参m和n,函数sumtwo的返回值是int型的。
main函数前面的函数声明语句“int sumtwo(int m,int n);”表明,sumtwo是一个有两个int型的形参并返回一个int型值的函数。这样的函数声明叫作函数原型,它应与函数的定义和调用一致。
该程序的执行过程:首先,在屏幕上显示提示字符串“请输入变量a与b的值:”,等待用户输入两个数。用户输入两个数(要用空格间隔)并按回车键后,由scanf函数语句接收这两个数并存入变量a、b。然后,调用sumtwo函数,把a和b的值传递给sumtwo函数的参数m和n。在sumtwo函数中,计算m与n之和,并赋给变量k,由return语句把变量k的值返回给主函数main,并赋值给变量sum。最后,由printf函数输出sum的值。
从以上例题可以看出,C语言源程序有以下结构特点:
(1)一个C语言源程序由一个或多个源文件组成,每个源文件由一个或多个函数构成,其中有且仅有一个主函数(main函数)。
(2)一个函数由函数首部(即函数的第一行)和函数体(即函数首部下面的大括号内的各行代码)组成。
(3)函数首部包括函数类型、函数名和放在圆括号内的若干参数。函数体由声明部分和执行部分组成。
(4)C源程序的每个语句以分号结尾。一行内可以写多条语句,一条语句也可以分写在多行中。
(5)放在“/*”与“*/”之间的是注释内容,注释部分允许出现在程序中的任何位置。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。