C - Triangle 程序在调用 main 时不打印任何输出
C - Triangle program not printing any output on call to main
我写了一个 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'.
我写了一个 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'.