史萊姆論壇

史萊姆論壇 (http://forum.slime.com.tw/)
-   程式語言討論區 (http://forum.slime.com.tw/f76.html)
-   -   問一個很丟臉的初學者問題 (http://forum.slime.com.tw/thread221645.html)

a19870504 2007-12-06 12:43 AM

問一個很丟臉的初學者問題
 
想要列印出

*
**
***
****
*****

小弟的寫的是

#include <iostream>
using namespace std;
int main()
{
for(int i=1; i<=5; i++){
for(int j=1; j<=4; j++){
if( j <= i )
cout <<"* \n";

else
break;
}
}
return 0;
}

但結果是
*
*
*
*
*
*
*
*
*
*
*
*
*
*
而小弟不材 又一直看不出問題點 本來想要自己解的
但實在是想了一整天 還是決定上來問答案 :on_51:
拜託大哥們 指點迷津一下 :on_74:

heavenheaven 2007-12-06 01:48 AM

建議寫程式時最好用空格將每行排序好較易閱讀
這個星號的在下以前寫過
記憶中是C++課程第1.2堂就要寫了
總共有四種(倒的方向有四種)
真是太恐怖的回憶
沒想到偶這個程式白痴在同學罩的情況下安全過關:dcft689kj

以下是該題的寫法
請參考看看
己用Dev-C++ 4確定可以執行出結果
int main()
{
 for (int i=1;i<=5;i++) {
  for (int j=0;j<i;j++) {
  cout << "*";
  }
 cout << "\n";
 }
system("PAUSE");
return 0;
}

leowang 2007-12-06 03:23 AM

用大大的程式去改
語法:

#include <iostream>
using namespace std;
int main()
{
for(int i=0; i<=5; i++)
{
  for(int j=0; j<=4; j++)
  {
    if( j < i )
    cout <<"*";
    else
    break;
}
cout <<"\n";
}

system("PAUSE");
return 0;
}

大大的問題是每次迴圈跑一次 就會跳行一次
也就是印出幾次"*"就跳行幾次
所以才會有這樣的問題

a19870504 2007-12-06 08:26 AM

原來如此 \n 不可以亂加 ="=

我卻習慣性的加上去了 也以為只要是cout就一定要加

天阿 害我想那麼久

可以請問一下 system("PAUSE"); 這行指令是什麼意思嗎?

猜謎人 2007-12-06 10:38 AM

引用:

作者: a19870504 (文章 1855608)
原來如此 \n 不可以亂加 ="=

我卻習慣性的加上去了 也以為只要是cout就一定要加

天阿 害我想那麼久

可以請問一下 system("PAUSE"); 這行指令是什麼意思嗎?

讓執行結果畫面停止
要不然執行後畫面一閃就不見
你都還沒看到:on_22:

a19870504 2007-12-06 08:18 PM

可能我是用VIM編輯的 我的不會瞬時一現


所有時間均為台北時間。現在的時間是 11:27 AM

Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2025, Jelsoft Enterprises Ltd.

『服務條款』

* 有問題不知道該怎麼解決嗎?請聯絡本站的系統管理員 *


SEO by vBSEO 3.6.1