首页 百科知识 简单语言程序举例

简单语言程序举例

时间:2022-10-23 百科知识 版权反馈
【摘要】:程序中的main()被称为主函数,任何一个C语言程序有且只有一个main函数。以上两个程序非常简单,main函数的函数体内只有一条语句,下面我们将介绍稍微复杂的程序例2.3,该程序仍由一个main函数组成,但函数体中包含了变量说明、算术运算和格式输出。C语言规定,程序中所有用到的变量都必须先说明,后使用,否则将会出错。本程序中第4行语句的功能是在键盘输入之前显示一些提示性的信息,增强程序的可读性。

2.2.1 简单C语言程序举例

[例2.1] 在屏幕上显示“Very Good”。

img42

img43

运行结果:

Very Good

程序分析:

(1)程序中的main()被称为主函数,任何一个C语言程序有且只有一个main函数。main()后面由一对花括号“{}”括起来的部分称为函数体,程序从main函数的第一条可执行语句开始执行。

(2)本例中函数体内只有一条语句printf("Very Good\n");该语句由函数调用和分号两部分组成。printf函数的作用一般是将双引号中的内容原样输出,“\n”是换行符,即在输出“Very Good”后换行,分号表示该语句的结束。

(3)“/*”与“*/”之间的内容构成了C语言程序的注释部分,它可以是任何可以显示的字符,可以是一行也可以是多行,不影响程序的编译和运行。在程序中插入适当的注释,可以使程序更容易被理解。

(4)程序中的#include<stdio.h>是文件包含命令,其意义是把尖括号“<>”内指定的文件包含到本程序中。一般情况下,如果使用了系统提供的库函数,那么应在程序的开始用#include命令将被调用的库函数信息包含到本文件中。本例中main函数中调用的printf函数是C语言提供的标准输出函数,需要系统文件stdio.h解释执行。需要说明的是,Turbo C规定对scanf和printf两个函数可以省去头文件包含命令,所以本程序中第一行的#include<stdio.h>可以省略。

经过以上的分析,我们可以清晰地理解例2.1程序的功能就是利用printf函数在屏幕上显示一行字符信息。接下来我们思考一下怎样让字符信息分行显示,也就是说让例2.1中的“Very”和“Good”两个单词分两行进行输出,要达到这个功能很简单,因为我们在上面提到过“\n”的功能是实现换行,所以只要在例2.1的基础上稍作修改就可以实现,具体程序代码见例2.2。

[例2.2] 在屏幕上分行显示“Very Good”。

img44

以上两个程序非常简单,main函数的函数体内只有一条语句,下面我们将介绍稍微复杂的程序例2.3,该程序仍由一个main函数组成,但函数体中包含了变量说明、算术运算和格式输出。

[例2.3] 计算三个整数之和。

img45

(1)本程序的主函数体分为两部分,一部分为说明部分,另一部分为执行部分。

img46说明部分是指变量的类型说明,它是C语言源程序结构中很重要的组成部分。C语言规定,程序中所有用到的变量都必须先说明,后使用,否则将会出错。例2.1和例2.2中未使用任何变量,因此无说明部分。说明语句由一个类型名和若干需要说明的变量名组成,本例中int a,b,c,sum;中的int为整型类型名,a、b、c、sum为定义的4个变量名,通过该语句可以知道a、b、c、sum 4个变量都可以用来存放整型数据。除了int数据类型外,C语言还提供了其他数据类型,如float(单精度浮点型)、char(字符型)等,这些将在本书的后续章节中进行介绍。

img47执行部分(也称执行语句部分)一般在说明部分之后,用以完成程序的功能,本例中的第4到第8行为执行部分。程序的第4至第6行分别给变量a、b、c赋值,当a、b、c有了具体的数值之后便可以按照第7行的表达式进行相加,然后把结果存放在sum变量中。第8行是用printf函数输出变量sum的值,即a、b、c的和。

(2)本程序中的第4至第7行都是赋值语句,其中“=”是赋值号。如第7行的sum=a+b+c;语句中,赋值号的左边是变量sum,右边是表达式a+b+c,该语句的作用就是将右边表达式的值赋给左边的变量sum,也就是执行了赋值语句后,sum变量的存储单元中存放的数值为102,其数据类型也是整型。

(3)本程序中仍然用到了printf函数,但其格式和前两个例子又不完全相同。本例中printf函数的参数由两个部分组成:格式控制串和变量参数表。格式控制串是一个字符串,必须用双引号括起来,它表示了输出量的数据类型。在printf函数中还可以在格式控制串内出现非格式控制字符,这时在显示屏幕上将原字符进行输出。变量参数表中给出了要输出的数据。当有多个数据时,用逗号间隔。本例的printf("a+b+c=%d\n",sum)中,非格式字符“a+b+c=”按照原样在屏幕上输出,%d为格式字符,表示对应的sum变量按照整型格式进行输出。如果把本例中printf("a+b+c=%d\n",sum)改为printf("%d+%d+%d=%d\n",a,b,c,sum),程序的输出结果会发生怎样的变化呢?请读者自己上机调试体验printf函数的功能。有关printf函数中各种类型的格式表示法,我们将在第4章中进行详细介绍。

经过以上的程序分析,我们可以知道例2.3的功能是计算三个整数之和并进行格式化的输出,但是这三个数a、b、c的值都是在程序中直接赋值的,如果要进行其他整型数据的相加,那就必须重新修改程序,这显然不是我们所期望的,那我们能否考虑由用户从键盘输入来分别为a、b、c进行赋值呢?答案是肯定的,我们只要对例2.3的程序进行稍加修改,但必须用到C语言中的另一个库函数scanf函数。scanf函数为格式输入函数,用户可以按照指定的格式从键盘进行输入,从而完成相应变量的赋值。

[例2.4] 从键盘输入三个整数,并计算其和。

img48

(1)本例中程序的执行过程是:首先在屏幕上显示提示字符串,请用户输入三个整数,当用户从键盘上键入三个数,如267,123,498,按下回车键,就会在屏幕上显示计算结果。本程序中第4行语句的功能是在键盘输入之前显示一些提示性的信息,增强程序的可读性。本例中,当用户从键盘输入不同的三个整数时,最后屏幕上显示的计算结果便不相同,和例2.3相比,程序的功能得到了进一步的增强。

(2)键盘输入函数scanf的作用是从键盘输入三个整型数据分别赋给变量a、b、c。其中,%d的含义与前面介绍的printf函数中的相同,表示输入的数据类型为十进制整型,“&a,&b,&c”中的“&”表示取地址,用户从键盘输入的三个整数分别存放到a、b、c在内存的单元中,注意不要漏写“&”。

和前三个例子相比,本例中增加了提示性信息和数据的输入,从而让C语言程序的结构更加完整和合理。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈