7.3.1 for语句

在C语言中,for语句使用的最为灵活,其功能是将一个由多条语句组成的代码块执行特定的次数。for语句也称for循环,因为程序通常会多次执行此语句。使用for语句的格式如下所示:

    for(表达式1;表达式2;表达式3)
    语句

for语句的执行步骤如下所示。

(1)求解表达式1。

(2)求解表达式2,若其值为真(非零),则执行for语句中指定的内嵌语句,然后执行下面第3步;若其值为假(零),则结束循环,转到第(5)步。

(3)求解表达式3。

(4)转回上面第(2)步继续执行。

(5)循环结束,执行for语句下面的语句。

上述步骤的具体流程如图7-14所示。

图7-14 执行流程

再看下面的格式。

    for(循环变量赋初值;循环条件;循环变量增量) 语句;

在for语句中上述格式是最简单的应用形式,也是最容易理解的形式。“循环变量赋初值”总是一个赋值语句,它用来给循环变量赋初值;“循环条件”是一个关系表达式,它决定什么时候退出循环;“循环变量增量”定义在循环控制变量每循环一次后按什么方式进行变化。这3个部分之间用分号“;”分开。例如下面的代码。

    for(i=1; i<=10; i++)sum=sum+i;

上述代码先给i赋初值为1,然后判断i是否小于等于10,若是则执行语句,之后值增加1。然后再重新判断,直到条件为假,即i>10时结束循环。

上述代码相当于下面的代码。

    i=1;
    while(i<=10){
        sum=sum+i;
          i++;
    }

在for循环中语句的一般形式就是如下的while循环形式。

    表达式1;
    while(表达式2)
    {语句
          表达式3;
    }

实例7-6

提示用户输入一个整数,然后输出这个整数的阶乘

源码路径daima\7\7-6

本实例的实现文件为“for.c”,具体实现代码如下。

    #include <stdio.h>
    int main(void){
        int number, count, factorial=1;
        printf("\n enter zhengzhengshu:");
        scanf("%d", &number);
        for(count = 1; count <=number; count++)
                  factorial=factorial*count;
        printf("\n %d jiecheng = %d\n", number, fact
orial);
    }

拓展范例及视频二维码

范例7-6-01:输出1~20中能被3整除的数

源码路径:演练范例\7-6-01\

范例7-6-02:统计指定数的平均值

源码路径:演练范例\7-6-02\

程序运行后先在界面中提示用户输入1个正整数,输入1个正整数并按Enter键后将在界面中显示输入数字的阶乘值,如图7-15所示。

图7-15 执行效果