懒得截图了。题目是输出某一范围内的素数,按每行10个输出,代码没有问题,问题是输出要求每两个数之间有一个空格键,开头没有空格,末尾没有空格,该怎么写printf?
int num = 0;
cin>>num;
vector prime;
for (int i = 2; i <= num; ++i) {
if (isPrime(i)) {
prime.push_back(i);
}
}
for(int i = 0; i < prime.size(); i++)
{
if(i==0)printf("" + prime[i]);
else printf(" "+prime[i]);
}
写这么多年代码真没用过几次printf
for(int i=0;i<max;i++)
{
if(i==0)printf(a[i]);
else printf(" "+a[i]);
}
如果是数组输出的话可以判断下标,若是第0个则只输出这个元素,否则在前面加一个空格,如果不是数组,思路也类似,用一个变量计数就可以了
for (int i = 0;i < 20;i ++)
{
if (i % 5 == 4)
{
printf("%d\n",i);
}
else
{
printf("%d ",i);
}
}
%b 退格 ,即可删除末尾空格