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

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

有沒有大佬出個標準答案,求求了

整道題完全沒看懂,這三個字母分別對應了什么,又怎么產生聯系的?希望大佬能講解細一點,然后求一份標準的答案。?

正在回答

2 回答


#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;

}


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

i表示行數,外層循環(i=1;i<5;i++)就是從第一行到第四行,執行循環體內的語句

j表示每一行星號前面的空格數,你要輸出一個三角形,那么第一行1顆星,前面要有3個空格;第二行3顆星,前面就得有2個空格;第三行5顆星,前面就得有1個空格;第四行7顆星,前面沒空格;因此循環條件為? ? ? ? ? ? ? for(j=1;j<5-i;j++),(這里答案給出的是(j=i;j<5;j++),效果和意思是一樣的)這樣你看,當i=1時,5-i=4,j<5-i也就是j<4,那么j就是從1到3,把這個循環跑了三遍,而我們循環體里的語句是printf(" ");輸出一個空格,那跑三次不就是輸出3個空格嗎?然后i=2,i=3,i=4依此;


k表示每一行的星星數,原理和空格的輸出是一樣的呀。

以下是我的代碼:

#include <stdio.h>

int main()

{

? ? int i, j, k;

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

? ? {

? ? ? ? /* 觀察每行的空格數量,補全循環條件 */

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

? ? ? ? {

? ? ? ? ? ? printf(" ");? ? //輸出空格

? ? ? ? }

? ? ? ? /* 觀察每行*號的數量,補全循環條件 */

? ? ? ? for(k=1;k<i*2;k++)?

? ? ? ? {

? ? ? ? ? ? printf("*");? ?//每行輸出的*號

? ? ? ? }

? ? ? ? printf("\n");? ? ?//每次循環換行

? ? }

? ? return 0;

}


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

bugswriter

能解釋一下為什么for(j=1;j<5-i;j++)與答案給出的(j=i;j<5;j++),效果和意思一樣的嗎?
2021-08-03 回復 有任何疑惑可以回復我~
#2

bugswriter

不一樣的,答案給出的(j=i;j<5;j++)與你的 (j=1;j<5-i;j++)每一行都相差了一個空格。(答案的比你的每一行都多了一個空格),不過你的代碼才滿足答案說的“每行輸出的空格數等于(最后一行*號數減去當前行的*號數)除2”。
2021-08-03 回復 有任何疑惑可以回復我~
#3

木羽lxc 回復 bugswriter

對的我也這么覺得
2021-08-20 回復 有任何疑惑可以回復我~

舉報

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

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

進入課程

有沒有大佬出個標準答案,求求了

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

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

幫助反饋 APP下載

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

公眾號

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