gpt4 book ai didi

c - 如何删除某个范围内逗号分隔的素数中的最后一个逗号?

转载 作者:行者123 更新时间:2023-11-30 21:15:16 24 4
gpt4 key购买 nike

我有查找某个范围内的素数的代码。

问题是删除最后一个逗号。

#include<stdio.h>

int main()
{
int a,b,i,x,c,f=1;
scanf("%d%d",&a,&b);
for(x=a;x<=b;(x++,f=0))
{

for(i=2;i<x;i++)
{
if(x%i==0)
{
f=1;
}
}

if(f==0)
printf("%d,",x);
}
}

但是输出的最后包含一个额外的逗号。例如

2,3,5,7,

而预期输出是

2,3,5,7

最佳答案

您可以直接决定要在数字之间打印什么,而不是标记

请注意,一旦 f 设置为 1,您就可以跳出内部循环

#include<stdio.h>

int main()
{
int a,b,i,x,c,f=1;
const char* delim = "";
scanf("%d%d",&a,&b);
for(x=a; x<=b; (x++,f=0))
{
for(i=2; i<x; i++)
{
if(x%i==0)
{
f=1;
break; //no need to continue the checking
}
}

if(f==0) {
printf("%s%d",delim,x);
delim = ", ";
}
}
putchar('\n');
}

关于c - 如何删除某个范围内逗号分隔的素数中的最后一个逗号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46253532/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com