一樓的解法有改掉迴圈不會結束的問題。
不過在i <= 10的時候,會第一行印出11個圖形。
之後當i >10以後,每換一行ˊ只會印出1個圖形。
建議if..else還是使用"{","}"包起來,不然底下的i++不曉得是條件成立才加,還是每次都加。
如果是要每行都有11個圖形的話,可以像底下的作法。
(只貼do裡面的,其他不變的就不貼了)
複製程式
do
{
i = 0;
do
{
if((i+j)%2==0)
{
printf("%c",2);
}else{
printf("%c",1);
}
i++;
}while(i<=10);
printf("\n");
j++;
}while(j<=10);
不過我比較好奇的是,樓主為什麼要在第一個do..while裡面把j也設為0?
題外話,樓主的閏年問題,已經有附專案到在下回覆的主題內。所以有空可以去看看。在下是用vs2005,所以如果vs2010不能編譯的話,設定部分可能就要麻煩樓主去找一下嚕。
裡面用到的都是vc++內建的東西,所以應該是不用改設定才對。
圖 1. Result