问答详情
源自:4-13 使用for循环打印9×9乘法表

兄弟们我迷惑了这怎么就运行成功了?

http://img.mukewang.com/5f55f85e0001a7e811740880.jpg我寻思着我99乘法表是不是背了个假的??

拜托大佬看一看哪里有错啊

提问者:樱花落尽阶前月 2020-09-07 17:08

个回答

  • 大力的咸鱼男友
    2020-10-31 09:59:39

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

  • 爱3
    2020-09-29 16:14:10

    你假设i=9,j=1进入循环,result一直被重新赋值,所以第二个循环出来的i和j永远相等;而result都是在符合循环条件内的值,所以是i*(i-1)的值

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


  • EKKO9957
    2020-09-07 17:41:07

    printf 应该在第二个for里边