【发布时间】:2020-11-11 00:50:20
【问题描述】:
我正在编写一个程序,它将根据用户输入打印“*”,用户需要输入一个介于 1 和 30 之间的数字,然后程序将打印 * n 次。其中 n 介于 1 到 30 之间。
例如:用户输入 7,对于 1 到 30 之间的任何 n 值,输出为“*******”。
这是我目前得到的:
int x;
char c = "*";
printf("%s","Please Enter a number between 1 and 30\n");
scanf("%d", &x);
if (x>=1)
{
printf("%d",x,c);;
}
在 printf 部分寻找一些指导,我如何让它通过 x 打印 *,这是下限,因为 1 是用户可以输入的最低值 30 是上限,但通常我喜欢确保下限在上限之前首先起作用,然后是简单的复制粘贴并更改数字。一个单独的 if 将用于任何超出范围的数字,即小于 1 和大于 30 的任何数字都需要用户重新输入,到目前为止它只打印输入的数字而不是 * 多次。 另外,如果我的代码中有任何其他错误,请随时纠正我仍在学习中。
【问题讨论】:
-
你想了解循环。
-
我最初使用的是 while 循环,但我卡在了 printf 部分,我仍然无法让它打印 n 次,这就是我转向 if 语句的原因。
-
if应该如何重复任何内容?也许你可以使用while发布你的方法,我们一起找出你在那里做错了什么。因为if不会重复任何事情。 -
您希望
printf("%d",x,c);;应该做什么?我想看看你对此的看法。