如何在C中每行打印x个整数?
如何使用while循环和计数器变量x打印从1到20的整数 我每行只需要打印五个整数。[提示:使用计算x%5。当该值为0时,打印换行符\n,否则打印制表符\t] 我的主要问题是:如何每行打印5个整数 这是我尝试过的代码如何在C中每行打印x个整数?,c,while-loop,C,While Loop,如何使用while循环和计数器变量x打印从1到20的整数 我每行只需要打印五个整数。[提示:使用计算x%5。当该值为0时,打印换行符\n,否则打印制表符\t] 我的主要问题是:如何每行打印5个整数 这是我尝试过的代码 #include<stdio.h> int main ( void ) { int x = 0; while ( x <= 20 ) { printf("%d", x); ++x;
#include<stdio.h>
int main ( void )
{
int x = 0;
while ( x <= 20 )
{
printf("%d", x);
++x;
}
}
使用while循环和计数器变量x打印1到20之间的整数
但是您的代码打印0到20之间的整数,替换int x=0;通过int x=1
使用x%5的计算。当该值为0时,打印换行符,否则打印制表符
在C中,这直接意味着
putchar((x%5) ? '\t' : '\n');
或者在印刷厂做什么
最后,您的代码可以是:
#include<stdio.h>
int main (void)
{
int x = 1;
while ( x <= 20 ) {
printf("%d%c", x, (x%5) ? '\t' : '\n');
++x;
}
}
%是模运算。%b整数将a除以b并返回余数。因此,3%5->3和7%5->2 变量x应该在0到19之间。如果将x除以5,则提醒将是一个范围为0到4的数字 对于x=0,1,2,3,4,5,6,7,8,9,10,11。。。, x%5=0,1,2,3,4,0,1,2,3,4,0,1 如您所见,余数重复从0到4的数字。这是5个数字 因此,诀窍是仅当x%5等于4时才打印新行
int x = 0;
while (x < 20) {
printf("%d ", x+1);
if (x % 5 == 4)
printf("\n");
x++;
}
你引用的提示回答了你的问题。你试过了吗?我会通过计算x%5来解决这个问题。当这个值为0时,打印一个换行符,否则打印一个制表符。。。那么,为什么要从0开始打印?问题是什么?难道你不知道如何打印换行符,或者你不知道如何使用if语句吗?这就是我需要的。谢谢你的反馈。我不懂模运算符。
pi@raspberrypi:/tmp $ gcc -Wall c.c
pi@raspberrypi:/tmp $ ./a.out
1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19 20
pi@raspberrypi:/tmp $
int x = 0;
while (x < 20) {
printf("%d ", x+1);
if (x % 5 == 4)
printf("\n");
x++;
}