请参阅我编写的以下代码:
#include<stdio.h>
int main(int argc, char *a[])
{
int i, j;
for(i=5;i>=1;i--)
{
printf("");
for(j=5;j>=1;j--)
{
printf("%c",'A'-1 + j);
printf("");
}
printf("\n");
}
return 0;
}
此代码将模式打印为: EDCBA
EDCBA
EDCBA
EDCBA
EDCBA
但我希望输出类似于: E D C B A
E D C B A
E D C B A
E D C B A
E D C B A
任何人都可以帮我解决这个问题吗?
答案 0 :(得分:2)
使用空格:
printf(" ");
而不是
printf("");
像,
for(i=5;i>=1;i--)
{
printf(" ");
for(j=5;j>=1;j--)
{
printf("%c",'A'-1 + j);
printf("");
}
printf("\n");
}
答案 1 :(得分:1)
使用%-2c
指定左对齐的最小字段宽度2。并删除零长度格式说明符。
#include<stdio.h>
int main(int argc, char *a[])
{
int i, j;
for(i=5;i>=1;i--)
{
for(j=5;j>=1;j--)
{
printf("%-2c",'A'-1 + j);
}
printf("\n");
}
return 0;
}