【发布时间】:2021-01-02 18:45:18
【问题描述】:
我对编程很陌生,我有一个我无法完成的任务。
所以程序必须接受用户输入,矩形的长度和宽度,然后根据参数长度和宽度使用星号* 绘制矩形。我必须使用for 循环,更准确地说是一个for 循环在另一个循环中。
它不起作用,我一直坚持下去,所以如果有人愿意帮助我,我将不胜感激。
这是我得到的:
int main() {
printf("\n\n***Rectangle***");
printf("\n\n\nInsert side a: ");
scanf("%f", &sideA);
printf("\n\nInsert side b: ");
scanf("%f", &sideB);
printf("\n\nRectangle: \n\n");
for (int i = 0; i < sideA; i++) {
for (int j = 0; j < sideB; j++) {
if (i == 0 || i == sideB - 1 || j == 0 || j == sideA - 1) {
printf("*");
} else {
printf(" ");
}
printf("\n");
}
}
}
提前非常感谢
【问题讨论】:
-
你得到什么而不是所需的矩形(其中 *s 必须仅在周边,我想是因为问题不清楚)。如果您可以使用相关的
main代码发布执行它的整个函数会更容易。 -
在每个书写字符(星号或空格)之后打印一个换行符,你怎么能希望它按预期工作?
-
如果您使用
sideA和sideB,如果您调用循环变量a和b而不是i和@987654331,将会更容易发现错误@.
标签: c for-loop console-application drawing nested-for-loop