作者ShortestPath (Dijkstra)
看板C_and_CPP
標題Re: [問題] 打星號畫圖
時間Sun Nov 15 14:41:25 2009
印星星最快的方法先寫到記憶體, 最後全部一次print出去
一次一行跟一次一個字會慢一點, 大家可以試試看印10萬行的時間差
當然也要準備10萬行的buff, 科科
char buff[10 * 7];
int main()
{
char *temp = buff;
for(int i = -3; i <= 3; i++)
temp += sprintf(temp, "%s%s%s\r\n",
" " + 3 - abs(i),
"*******" + abs(i) * 2,
" " + 3 - abs(i));
printf("%s", buff);
return 0;
}
※ 引述《tokyobabylon (paris)》之銘言:
: 畫一菱形...
: *
: ***
: *****
: *******
: *****
: ***
: *
: #include<iostream>
: #include<cstdlib>
: using namespace std;
: int main(void)
: {
: int i,j;
: int a1[7]={3,2,1,0,1,2,3};
: int a2[7]={1,3,5,7,5,3,1};
: for(i=0;i<7;i++){
: for(j=0;j<a1[i];j++){
: cout<<" ";}
: for(j=0;j<a2[i];j++){
: cout<<"*";}
: cout<<endl;
: }
: system("pause");
: return 0;
: }
: 用了3個迴圈土法煉鋼@@"
: 有更快的嗎?
--
WOW三寶 多龍 大總統 短路徑
WOW貼文大師 瘋法
WOW翻譯機 A-N-
S-E-R (好像會買一送一)
智XD的正妹 joinchi
WOWBox 艾佛列名言: wowbox 的主機我到現在都還沒看過呢.....
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.160.175.97
※ 編輯: ShortestPath 來自: 118.160.175.97 (11/15 14:42)
→ MOONRAKER:做一個bitmap,load進來一次顯示,還更快哩 11/15 17:11
→ MOONRAKER:你沒有別的事好做嗎? 11/15 17:11
→ ShortestPath:難道研究畫星星也是錯嗎? XD 11/15 17:16
推 ledia:strncpy instead of sprintf 11/15 23:28
→ ledia:and maybe write instead of printf 11/15 23:29
→ lwecloud:我笑了.. 11/17 10:03