c语言for循环输出 1 2 4 3 6 9 4 8 12 16 5 10 15 20 25

如题所述

#include <stdio.h>
int main()
{
    int i = 1,j;
    for(; i <= 5; ++i){
        for(j = i; j <= i*i; j += i){
            printf(" %d ",j);
        }
        printf("\n");
    }
    return 0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-01-29
for 循环语句的一般形式为:
for (表达式1; 表达式2; 表达式3)
{
语句;
}
首先要强调两点:
1) 表达式1、表达式2和表达式3之间是用分号;隔开的,千万不要写成逗号。

2) for(表达式1;表达式2;表达式3)的后面千万不要加分号,很多新手都会犯这种错误——会情不自禁地在后面加分号。

因为 for 循环只能控制到其后的一条语句,而在C语言中分号也是一个语句——空语句。所以如果在后面加个分号,那么 for 循环就只能控制到这个分号,下面大括号里面的语句就不属于 for 循环了。

下面来看看它的执行过程:
求解表达式1。
求解表达式2。若其值为真,则执行 for 语句中指定的内嵌语句,然后执行第3步;若表达式2值为假,则结束循环,转到第5步。
求解表达式3。
转回上面第2步继续执行。
循环结束,执行 for 语句下面的语句。

从这个执行过程中可以看出,“表达式1”只执行一次,循环是在“表达式2”“表达式3”和“内嵌语句”之间进行的。
第2个回答  2019-01-28
#include <stdio.h>
int main()
{
    int i = 1,k;
    for(; i <= 5; ++i){
        for(k = i; k <= i*i; k += i){
            printf("%3d",k);
        }
        printf("\n");
    }
    return 0;
}

本回答被网友采纳
相似回答