在 C 中将数字 5 打印为反向模式
Print the number 5 as a reverse pattern in C
C
正如您在这段代码中看到的,我正在尝试打印以下图案,代码打印图案是否正确,因为在我的计算机中它显示错误。
//To print this type of pattern
//5 5 5 5 5 5
//5 5 5 5 5
//5 5 5 5
//5 5 5
//5
int i, j, a=5;
for(i=0; i<=5; i++)
{
for(j=i; j<=5; j++)
{
printf("%d", a);
}
printf("\n");
}
这里有几个错误。
首先,请记住循环中的计数从 0 开始,因此从 0 到 5 实际上是循环顶部的 6 轮。你想要的是让 i 介于 [0-4] 之间。为此,将 <=
循环条件修改为 <
.
如果你想在每个 5.
之间添加 space,请在 "%d "
之后添加一个 space
用笔和纸运行试一下,j循环还有一个错误
#include <stdio.h>
int main(void) {
int height = 5;
char line[height*2];
for(int i=0; i<height*2; i+=2)
{
line[i]='0'+height;
line[i+1]=' ';
}
for (int i=0; i<height; ++i)
{
printf("%.*s\n",2*(height-i), line);
}
return 0;
}
结果
Success #stdin #stdout 0s 5532KB
5 5 5 5 5
5 5 5 5
5 5 5
5 5
5
C 正如您在这段代码中看到的,我正在尝试打印以下图案,代码打印图案是否正确,因为在我的计算机中它显示错误。
//To print this type of pattern
//5 5 5 5 5 5
//5 5 5 5 5
//5 5 5 5
//5 5 5
//5
int i, j, a=5;
for(i=0; i<=5; i++)
{
for(j=i; j<=5; j++)
{
printf("%d", a);
}
printf("\n");
}
这里有几个错误。
首先,请记住循环中的计数从 0 开始,因此从 0 到 5 实际上是循环顶部的 6 轮。你想要的是让 i 介于 [0-4] 之间。为此,将 <=
循环条件修改为 <
.
如果你想在每个 5.
之间添加 space,请在"%d "
之后添加一个 space
用笔和纸运行试一下,j循环还有一个错误
#include <stdio.h>
int main(void) {
int height = 5;
char line[height*2];
for(int i=0; i<height*2; i+=2)
{
line[i]='0'+height;
line[i+1]=' ';
}
for (int i=0; i<height; ++i)
{
printf("%.*s\n",2*(height-i), line);
}
return 0;
}
结果
Success #stdin #stdout 0s 5532KB
5 5 5 5 5
5 5 5 5
5 5 5
5 5
5