我被困在一个我必须写的程序上。
基本上它会询问用户一个角色,以及他们喜欢该角色的显示次数。每行只有10个字符。我无法弄清楚如何在10点停止然后继续下一行。
示例输出:
Enter a character: *
Enter the number of characters to display: 36
**********
**********
我目前正在使用For循环。
编辑**我的代码
main () {
int num = 0,i;
char get_char;
printf("Enter a character: ");
scanf("%c", &get_char);
printf("Enter the number of characters to display: ");
scanf("%d", &num);
for (i = 0;i < num; i++) {
printf("%.10c",get_char);
i++;
}
}
答案 0 :(得分:2)
要转到下一行,您必须打印出linefeed
字符,该字符在C样式字符串中使用转义序列\n
表示。当编译器看到此序列时,它将使用换行符(其十六进制值为0a
)。当终端看到这个字符时,它会将光标移动到下一行。
要检测行的结尾,您可以使用嵌套的for
循环或使用模数(%
)运算符。
使用嵌套的for
循环,您可以简单地计算您要打印的字符数,并在一个将循环{{1}的外循环中创建一个最多可打印10次字符的循环}次。
模数运算符在代码中更清晰一点。它在分割操作数后计算余数。例如,total/10
将导致4 % 2
(4 = 2 * 2 + 0 ),而0
将导致5 % 2
(5 = 2) * 2 + 1 )。在您的示例中,您需要检查1
。