我写了一个应该打印三角形的C代码。定义宽度和字符,然后代码应打印出一个三角形,并填充该字符。我认为main中可能存在错误,但代码编译良好。当我运行它时,没有输出。
这是我的代码:
void triangle(int width, char x);
int main(void){
triangle(4, c);
}
void triangle(int width, char x){
if (width > 2){
return;
}
int counter = 1;
int direction = 1;
do{
int i;
for(i = 0; i < width - counter; i++){
printf(" ");
}
for (int i = 0; i < counter; i++){
printf("%c", x);
}
printf("n");
counter += direction;
if(counter > width){
counter = width - 1;
direction = -1;
}
}while (counter != 1);
return;
}
你有
if (width > 2){
return;
}
而电话是
triangle(4, c);
这解释了没有输出。 还有其他错误,但您首先尝试自己解决它们?
抱歉,如果问题中不清楚。 预期输出应为宽度(和高度(为 4 的三角形,填充为"c"。
所以我想我已经想通了。 我必须使用<运算符(愚蠢的人为错误(,并且字符必须有一个引号:"c"。>