为了账号安全,请及时绑定邮箱和手机立即绑定

问问问问问

问问问问问

C
慕神3012965 2017-05-14 00:01:51
#include <stdio.h>int main(){    int i, j, k;    for(i=1; i<5; i++)    {        /* 观察每行的空格数量,补全循环条件 */        for(j=i ; j<5 ; j++ )          {            printf(" ");    //输出空格        }        /* 观察每行*号的数量,补全循环条件 */        for( k=0 ; k=i*2-1 ; k++)         {            printf("*");   //每行输出的*号        }        printf("\n");     //每次循环换行    }    return 0;}能说一下运算的顺序吗
查看完整描述

2 回答

已采纳
?
望远

TA贡献1017条经验 获得超1032个赞

#include <stdio.h>
int main()
{
    int i, j, k;
    for(i=1; i<5; i++)
    {
        /* 观察每行的空格数量,补全循环条件 */
        for(j=i ; j<5 ; j++ )  //i值每次循环自增,输出的空格4 3 2 1 0个空格
        {
            printf(" ");    //输出空格
        }
        /* 观察每行*号的数量,补全循环条件 */
        for( k=0 ; k=i*2-1 ; k++) //每次i自增,输出的*字符是1 3 5 7 9个字符*
        {
            printf("*");   //每行输出的*号
        }
        printf("\n");     //每次循环换行
    }
    return 0;
}
//因此该程序结果是5行的*正金字塔,第一行一个*,最后一行5个*


查看完整回答
反对 回复 2017-05-16
?
Will_木

TA贡献16条经验 获得超2个赞

int main()
{
    int i, j, k;
    for(i=1; i<5; i++)              ---------------------(1)
    {
        /* 观察每行的空格数量,补全循环条件 */
        for(j=i ; j<5 ; j++ )  ----------------------------(2)
        {
            printf(" ");    //输出空格
        }
        /* 观察每行*号的数量,补全循环条件 */
        for( k=0 ; k=i*2-1 ; k++) ------------------------(3)
        {
            printf("*");   //每行输出的*号
        }
        printf("\n");     //每次循环换行 ----------------(4)
    }
    return 0;
}


当i=1时 ,(2)(3)分别执行5-i次 、2*i次,然后执行(4),也就是换行

i=2。。。。。。。。(同上)

。。。。。

i=4。。。。。。(同上)

查看完整回答
反对 回复 2017-05-15
  • 2 回答
  • 0 关注
  • 1391 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信