怎么去掉C语言输出结果最后一个空格。
#include<stdio.h>intmain(){intn,i,j,k;scanf("%d",&n);inta[1001];for(k=1;k<=n;k++){a[k...
#include<stdio.h>
int main()
{
int n,i,j,k;
scanf("%d",&n);
int a[1001];
for(k=1;k<=n;k++)
{
a[k]=0;
}
for(i=1;i<=n;i++)
{
for(j=1;j<=i;j++)
{
if(i%j==0)
a[i]=a[i]+1;
}
if(a[i]%2==0)
printf("%d ",i);
}
}
输入8,结果输出2 3 5 6 7 8
怎么把8后面那个空格去掉啊? 展开
int main()
{
int n,i,j,k;
scanf("%d",&n);
int a[1001];
for(k=1;k<=n;k++)
{
a[k]=0;
}
for(i=1;i<=n;i++)
{
for(j=1;j<=i;j++)
{
if(i%j==0)
a[i]=a[i]+1;
}
if(a[i]%2==0)
printf("%d ",i);
}
}
输入8,结果输出2 3 5 6 7 8
怎么把8后面那个空格去掉啊? 展开
展开全部
哦 可以在最后这样加一句:
printf("%c",8);
上面这里是输出ASCII码为8的字符,这是一个Backspace控制符。于是可以往回消去一个字符。
也可以从逻辑上修改,不然他输出多余的空格:
#include<stdio.h>
int main()
{
int n,i,j,k;
int cnt=0;
scanf("%d",&n);
int a[1001];
for(k=1;k<=n;k++)
{
a[k]=0;
}
for(i=1;i<=n;i++)
{
for(j=1;j<=i;j++)
{
if(i%j==0)
a[i]=a[i]+1;
}
if(a[i]%2==0)
{
if(cnt>0) printf(" ");
cnt++;
printf("%d",i);
}
}
getchar();
getchar();
}
printf("%c",8);
上面这里是输出ASCII码为8的字符,这是一个Backspace控制符。于是可以往回消去一个字符。
也可以从逻辑上修改,不然他输出多余的空格:
#include<stdio.h>
int main()
{
int n,i,j,k;
int cnt=0;
scanf("%d",&n);
int a[1001];
for(k=1;k<=n;k++)
{
a[k]=0;
}
for(i=1;i<=n;i++)
{
for(j=1;j<=i;j++)
{
if(i%j==0)
a[i]=a[i]+1;
}
if(a[i]%2==0)
{
if(cnt>0) printf(" ");
cnt++;
printf("%d",i);
}
}
getchar();
getchar();
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
int main()
{
int n,i,j,k;
scanf("%d",&n);
int a[1001];
for(k=1;k<=n;k++)
{
a[k]=0;
}
for(i=1;i<=n;i++)
{
for(j=1;j<=i;j++)
{
if(i%j==0)
a[i]=a[i]+1;
}
if(a[i]%2==0)
printf(" %d",i);
}
getch();
}
其实就是把printf("%d ",i);这句你%d后面的空格跳到%d前面就行了
int main()
{
int n,i,j,k;
scanf("%d",&n);
int a[1001];
for(k=1;k<=n;k++)
{
a[k]=0;
}
for(i=1;i<=n;i++)
{
for(j=1;j<=i;j++)
{
if(i%j==0)
a[i]=a[i]+1;
}
if(a[i]%2==0)
printf(" %d",i);
}
getch();
}
其实就是把printf("%d ",i);这句你%d后面的空格跳到%d前面就行了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
int main()
{
int n,i,j,k,total;
scanf("%d",&n);
int a[1001];
for(i=1,k=0;i<=n;i++)
{
total = 0;
// 统计整数 i 的因子数
for(j=1;j<=i;j++)
{
if(i%j==0)
{
total++;
}
}
// 判断因子个数是否偶数个
if(total%2==0)
{
a[k++] = i;
}
}
// 输出小于 n 的,因子个数为偶数的整数(末尾没有空格)
for(i=0;i<k;i++)
{
printf("%d%s",a[i],(i<k-1?" ":""));
}
}
int main()
{
int n,i,j,k,total;
scanf("%d",&n);
int a[1001];
for(i=1,k=0;i<=n;i++)
{
total = 0;
// 统计整数 i 的因子数
for(j=1;j<=i;j++)
{
if(i%j==0)
{
total++;
}
}
// 判断因子个数是否偶数个
if(total%2==0)
{
a[k++] = i;
}
}
// 输出小于 n 的,因子个数为偶数的整数(末尾没有空格)
for(i=0;i<k;i++)
{
printf("%d%s",a[i],(i<k-1?" ":""));
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
把最后两行代码改下
if(a[i]%2==0)
{
if(i!=n)
printf("%d ",i);
else
printf("%d",i);
}
if(a[i]%2==0)
{
if(i!=n)
printf("%d ",i);
else
printf("%d",i);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询