且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

《C Primer Plus(第6版)中文版》一2.5 进一步使用C

更新时间:2022-09-19 23:01:26

本节书摘来自异步社区《C Primer Plus(第6版)中文版》一书中的第2章,第2.5节,作者 傅道坤,更多章节内容可以访问云栖社区“异步社区”公众号查看。

2.5 进一步使用C

本章的第1个程序相当简单,下面的程序清单2.2也不太难。

程序清单2.2 fathm_ft.c程序

// fathm_ft.c -- 把2英寻转换成英尺
#include <stdio.h>
int main(void)
{
    int feet, fathoms;

    fathoms = 2;
    feet = 6 * fathoms;
    printf("There are %d feet in %d fathoms!\n", feet, fathoms);
    printf("Yes, I said %d feet!\n", 6 * fathoms);

    return 0;
}

与程序清单2.1相比,以上代码有什么新内容?这段代码提供了程序描述,声明了多个变量,进行了乘法运算,并打印了两个变量的值。下面我们更详细地分析这些内容。

2.5.1 程序说明

程序在开始处有一条注释(使用新的注释风格),给出了文件名和程序的目的。写这种程序说明很简单、不费时,而且在以后浏览或打印程序时很有帮助。

2.5.2 多条声明

接下来,程序在一条声明中声明了两个变量,而不是一个变量。为此,要在声明中用逗号隔开两个变量(feet和fathoms)。也就是说,

int feet, fathoms;

int feet;
int fathoms;

等价。

2.5.3 乘法

然后,程序进行了乘法运算。利用计算机强大的计算能力来计算6乘以2。C语言和许多其他语言一样,用*表示乘法。因此,语句

feet = 6 * fathoms;

的意思是“查找变量fathoms的值,用6乘以该值,并把计算结果赋给变量feet”。

2.5.4 打印多个值

最后,程序以新的方式使用printf()函数。如果编译并运行该程序,输出应该是这样:

There are 12 feet in 2 fathoms!
Yes, I said 12 feet!

程序的第1个printf()中进行了两次替换。双引号后面的第1个变量(feet)替换了双引号中的第1个%d;双引号号后面的第2个变量(fathoms)替换了双引号中的第2个%d。注意,待输出的变量列于双引号的后面。还要注意,变量之间要用逗号隔开。

第2个printf()函数说明待打印的值不一定是变量,只要可求值得出合适类型值的项即可,如6 * fathoms。

该程序涉及的范围有限,但它是把英寻[5]转换成英尺程序的核心部分。我们还需要把其他值通过交互的方式赋给feet,其方法将在后面章节中介绍。