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

这个代码不知道错在哪里了

#include <stdio.h>

int main() 

    // 定义相乘数字i,j以及结果result

    int i, j, result;

   for(i=9;i>=1;i--)

       { for(j=1;j<=i;j++)

              {result=i*j;

              }

              printf("%d*%d=%d\t",i,j,result);

      }        printf("\n");

    return 0;

}

请使用for循环,倒序打印9*9乘法表。打印结果如下图所示:

我实在找不出问题在哪里了

正在回答

3 回答

#include<stdio.h>
int main()
{//第一层//
    int i,j,result;
    for(i=9;i>0;j--)
    {//第二层,第一个for循环,父循环,由i控制排数//
        for(j=1;j<=i;j++)
        {//第三层,第二个for循环,子循环,由j控制列数//
            result=i*j;
            /*注意:你的问题出自这里,格式混乱,没有条理,
            本应该在这一层输出所有对应i值(在该层不变)与j值的积*/
            printf("%d*%d=%d",i,j,result);
            //该输出语句中的j值仍为符合判断条件的j//
        }//一次子循环结束,回到父循环当中//
    //此处同理//
    printf("\n");
    }//父循环结束,回到最外层//
    return 0;
}//程序执行完毕//

希望同学以后能注意一下格式,愿你爱上编程,爱上学习:)

4 回复 有任何疑惑可以回复我~

      printf("%d*%d=%d\t",i,j,result);        这一步的位置 不对  格式不太对

0 回复 有任何疑惑可以回复我~

#include <stdio.h>

int main()

{

    // 定义相乘数字i,j以及结果result

    int i,j,result;

    for(i=9;i>=1;i--)

    {

        for(j=1;j<=i;j++)

        {

            result=i*j;

            printf("%d*%d=%d\t",i,j,result);

        }

        printf("\n");

    }

    return 0;

}

你的printf应该放在子循环里

1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C语言入门
  • 参与学习       924485    人
  • 解答问题       20757    个

C语言入门视频教程,带你进入编程世界的必修课-C语言

进入课程

这个代码不知道错在哪里了

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信