C语言程序设计(第三版)笔记

时间:2021-03-25 04:52:43

例程1-1 求阶乘问题。输入一个正整数n,输出n!。

#include <stdio.h>                    //编译预处理命令
int factorial (int n);                     //函数声明
int main()                                  //主函数
{
    int n;                                     //变量定义
    scanf("%d",&n);                    //输入一个整数
    printf("%d\n",factorial(n));    //调用函数计算阶乘
    return 0;
}
int factorial (int n)                     //定义计算n!的函数
{
    int i, fact=1;
    for(i=2; i<=n; ++i)
        fact*=i;
    return fact;
}       

   所有的C程序都有且只有一个mian()函数。C程序从main()函数处开始运行,当main()函数结束时,程序也就结束了。对于上述例子,程序先执行main()函数中的scanf()函数调用,输入数据n,然后调用printf()函数,输出结果。当调用printf()函数时,必须要先知道所要输出的数据,即factorial(n)。因此,此时发生了对factorial()函数的调用(Call),调用该函数所获得的结果作为printf()函数的参数(Argument),由printf()函数负责将该值按十进制整数(%d)的形式输出。

  变量都有类型,并在内存中占有一定的空间,例如在Visual C++中,整数变量占用4个字节的空间。因此,每个整数都有一定的取值范围。