C 基礎之字元輸出 cout

2022-09-21 22:18:15 字數 1774 閱讀 7181

要輸入這樣的圖案,思路是可以進行拆解,分為兩三角形分別輸出,先輸入一部分,比如,先輸出上半部分三角形:

for(int i = 1;i<7;i+=2)

這樣一來,我們就可以讓他迴圈5次

第二步,迴圈5次之後要輸入*來組成乙個三角形,也是每次要增加,第一行,要輸入一顆*,第二行就是三顆*....到第五行輸出七顆*

所以要在上面的迴圈體內再加一層for迴圈,那麼可以這樣寫

for(int i = 1;i<5;i+=2)

for(int a = 1;a < i ;++a)

cout << "*";

然後在第一for迴圈裡加上換行

for(int i = 1;i<5;i+=2)

for(int a = 1;a < i ;++a)

cout << "*";

cout << endl;

然後測試一下,看下輸出的是否正確

這樣就輸出了上半部分,那下再來考慮下半部分,下半部分就是乙個遞減的過程,也就是說一開始,就要輸入五顆星

那麼迴圈體就要和上面寫的相反,迴圈的初始數要減少2,7顆星已經輸出過了,我們少輸出一行,所以要減2,然後每次迴圈遞減2

for(int j = 5;j>=1;j-=2)

for(int b =1; bcout<

cout然後一起執行

ok,下面來點擴層,如果要輸出乙個完整的三角型,像這樣:

首先我們可以這樣來拆分,第一步,我們輸入空格,這個空格,我們想象成乙個上乙個例子的下半截,那麼可這樣寫,最外層的迴圈體寫法和上面一樣:

for(int i=1;i<=10;++i)

for (int c = 1; c <=10 - i; ++c)

這裡提一下,為什麼是i<=10,而不是i<10?

假設,如果是i<10,那麼輸出的時候,就會少一行,因為迴圈到了9這裡,就停了,

為了方便直觀的看到這個效果,我們把i<=10,改成i<10測試一下

可以看到差了一行,所以我們就要把<10,改成i<=10

好了,這一步輸出""空來佔位,然後來輸出*號的問題 ,輸出10行,每次輸入*,用空格來間格一下

for(int a=1;a<=i;++a)

cout<< " " << "*";

然後在最外層,加乙個換位符

for(int i=1;i<=10;++i)

for (int c = 1; c <=10 - i; ++c)

for(int a=1;a<=i;++a)

cout<< " " << "*";

cout最終的效果,

C 輸出流cout方法

輸出指定字數的字串。basic ostream write const char type s,streamsize n 1 write遇到空字元時不會停止 2 即使超出邊界,write仍繼續列印 3 可用於資料資料 需將數值資料強制轉換為char 計數制函式 十進位制 十六進製制 八進位制 調整字...

C 輸出流cout方法

輸出指定字數的字串。basic ostream write const char type s,streamsize n 1 write遇到空字元時不會停止 2 即使超出邊界,write仍繼續列印 3 可用於資料資料 需將數值資料強制轉換為char 計數制函式 十進位制 十六進製制 八進位制 調整字...

cout 輸出單個字元時

include using namespace std int main 輸出的是字元,並不是數字。include include using namespace std int main 上例中 substr是string的乙個方法是獲取從下標為6開始的十個字元。replace是string乙個方...