亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

求大神指點 為什么輸出來的不完整

#include <stdio.h>

int main()?

{?

? ? // 定義相乘數字i,j以及結果result

? ? int i, j, result;

? ? /*

? ? ?* 使用for循環解決本題相對簡單哦~

? ? ?* 小編偷偷的將源碼放在任務“不會了怎么辦”中了哦~

? ? ?* 小編希望童鞋們獨立完成哦~

? ? ?*/

? ? for(i=9,j=1;j<=i;i--)

? ? {

? ? ? ?for(j=1,i=9;j<=i;j++)

? ? ? ? {

? ? ? ? ? ? result=i*j;

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

? ? ? ? }?

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

? ? }

?

? ? return 0;

}


正在回答

3 回答

你的代碼看上去邏輯十分的混亂,i代表*號前邊的數字,j代表*號后邊的數字,result代表他們相乘的結果,一行一行的看,先分析第一行,你可以看到第一行i=9不變,第二行i=8,i的最后一行等于1,每一行的j逐漸增大,j的步值為1,且j的值最大不超過i,所以j<=i;這樣可以使用一個外部循環描述i的變化,for(i=9;i>=0;i--),再嵌套一個走循環,實現J的邏輯for(j=1;j<=i;j++),外部循環執行一次,子循環需要全部執行完才能跳出循環再執行第二次的外部循環,依次類推,即可實現這個效果的邏輯,代碼如下:

#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++)
????????{
????????????result=i*j;
????????????printf("%d*%d=%d\t",i,j,result);
????????}
????????printf("\n");
????}
????
????return?0;
}

如果幫到你,請采納,謝謝?。?!

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

你代碼中的for循環i和j弄錯了

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

南笙依言 提問者

i,j分別是什么
2016-09-07 回復 有任何疑惑可以回復我~
#2

JustWannaHugU 回復 南笙依言 提問者

i代表的是行數,j表示列數 printf(" ");輸出的是空格,哪不明白繼續問,滿意就采納下吧~^_^
2016-09-07 回復 有任何疑惑可以回復我~

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

? ? ?{

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

? ? ? ? ?{

? ? ? ? ? ? ?printf("%d*%d=%d",i,j,i*j);

? ? ? ? ? ? ?printf(" ?");

? ? ? ? ?}

? ? ?}


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

南笙依言 提問者

printf(" "); 這是什么?空格?
2016-09-07 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
C語言入門
  • 參與學習       926904    人
  • 解答問題       21532    個

C語言入門視頻教程,帶你進入編程世界的必修課-C語言

進入課程

求大神指點 為什么輸出來的不完整

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號