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

我这个代码对了吗?

#include <stdio.h>
int main()
{
    // 定义相乘数字i,j以及结果result
    int i, j, result;
    for(i=9,j=1,result=i*j;i>0;i--)
    {
        for(;j<10;j++)
        {
            printf("%d*%d=%d",i,j,result);
        }
       
    }/*
     * 使用for循环解决本题相对简单哦~
     * 小编偷偷的将源码放在任务“不会了怎么办”中了哦~
     * 小编希望童鞋们独立完成哦~
     */
   
   
   
   
   
    return 0;
}

右边输出的值是从9*9到9*1,不符合要求啊,但是提示我代码敲对了?????

按我自己的理解我这个代码应该要按题给图输出,但为什么没有呢?

正在回答

2 回答

首先执行外部循环result=9,进入内部循环,result在外部已经定义为9了,但内部循环没改变result的值,所以输入9*1=9 ,9*2=9……然后当你j=10时推出内部循环,回到外部,j还是10,i--变为8,进入内部,此时j已经为10了,判断 j<10条件不成立,不执行内部循环,所以后面就不输入了。我觉得for里面不要这么写好一点(有点乱)

我讲的不知道好不好,请见谅。^-^

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

慕函数3031282 提问者

对的!我这个代码忽视了表达式一只会在for循环中进行一次。
2018-12-28 回复 有任何疑惑可以回复我~

for循环里面的语句不对吧


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

慕函数3031282 提问者

为什么呀:)
2018-12-27 回复 有任何疑惑可以回复我~

举报

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

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

进入课程

我这个代码对了吗?

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