[英]Drawing Square field for snake using source code
我正在嘗試使用此代碼創建一個正方形字段。 但以某種方式最終以錯誤告終。 誰能幫我指出我的錯誤? 我不確定我第一次學習C時做錯了什么。這是代碼
int i,j;
const int width = 30;
const int height = 30;
int main()
{
for(int i = 0; i < width + 2; i++){
printf("#");
}
for(int i = 0;i < height; i++){
for(int j = 0; j < width; j++){
if(j == 0){ printf("#") }
if(j == 0){ printf(" "); }
if(j == width - 1){ printf("#"); }
}
}
for(int i = 0; i < width + 2; i++){
printf("#");
}
return 0;
}
您在第二個if語句中犯了錯誤。 您要在j值不為0或width-1時打印“”
if(j == 0 || j == width - 1){
printf("#") ;
} else {
printf(" ");
}
在您的for循環中,您想要更多類似的東西
for (int i = 0; i < height; i++){
for (int j = 0; j < width + 2; j++){ //Note width + 2, to match your top line
if (j == 0){ printf("#"); } // print near border
else if (j == (width + 1)){ printf("#"); } // print far border
else { printf(" "); } // when it's not a far border or near border, print an empty space
}
printf("\n");
}
您不必為近邊框打印“#” 和 “”,只需打印“#”,然后為正方形內的所有空格打印“”。 最后,對於最遠端,再次打印“#”。
第二個if(j == 0)有故障。 刪除它,您將獲得所需的正方形。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.