#include<stdio.h>
#define N 10
int main()
{
int a[N],i,b;
for(i=0;i<N;i++)
{
scanf("%d",&b);
char c=getchar();
a[i]=b;
if(c!=' ')break;
}
for(i=N-1;i>=0;i--)
printf("%4d ",a[i]);
return 0;
}
这是我写的答案
我的疑点在于题目要求输出的宽度为4,而三个数字原本宽度都为1,按要求用%4d的话不应该都是三个空格加一个数字吗,但为什么样例输出 没有空格,我的答案应该怎么改为正确答案呢,谢谢解答
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#define N 10
int main()
{
int a[N], b;
for (int i = 0; i < N; i++)
{
scanf("%d", &a[i]);
}
for (int i = N - 1; i >= 0; i--)
{
if (i == N - 1)
{
printf("%d", a[i]);
}
else
{
printf("%4d", a[i]);
}
}
return 0;
}
printf("%-4d",a[i]);