自定义函数,求3~100最大和最小的十个素数

麻烦帮看下这么写哪里不对,谢谢

#include<stdio.h>
int main()

    int primeNum(int i);
    int a,b,c=0;
    for(a=3;a<101;a++)
    {   

      b=primeNum(a);
      printf("%d ",b);
      c++;
      if(c==10)
          break;
    }
    

        for(a=100;a>2;a--)
{
    b=primeNum(a);
    printf("%d ",b);
    
    c++;
    if(c==10)
        break;
}

int primeNum(int m)

{ int i;

for(i=2;i<m;i++)

if (m%i ==0) break;

if(i>=m) return m; }

#include<stdio.h>
int primeNum(int i);//函数的原型声明要放到函数外面去
int main()
{ 

    int a,b,c=0;
    for(a=3;a<101;a++)
    {   

      b=primeNum(a);
      printf("%d ",b);
      c++;
      if(c==10)
          break;
    }
    

        for(a=100;a>2;a--)
{
    b=primeNum(a);
    printf("%d ",b);
    
    c++;
    if(c==10)
        break;
}

int primeNum(int m)

{ int i;

for(i=2;i<m;i++)

if (m%i ==0) break;

if(i>=m) return m; }

 

#include<stdio.h>
int primeNum(int m)

{ int i;

for(i=2;i<m;i++)

if (m%i ==0) break;

if(i>=m) return m; }
int main()
{ 
    int primeNum(int i);
    int a,b,c=0;
    for(a=3;a<101;a++)
    {   

      b=primeNum(a);
      printf("%d ",b);
      c++;
      if(c==10)
          break;
    }
    

        for(a=100;a>2;a--)
{
    b=primeNum(a);
    printf("%d ",b);
    
    c++;
    if(c==10)
        break;
}

 

倒数第五行int primeNum(int m)上面少了个结束大括号},但是运行的结果不是你想要的,你再改改,有问题追问。

#include<stdio.h>
int main()
{ 
    int primeNum(int i);
    int a,b,c=0;
    for(a=3;a<101;a++)
    {   

      b=primeNum(a);
      printf("%d ",b);
      c++;
      if(c==10)
          break;
    }
    

        for(a=100;a>2;a--)
{
    b=primeNum(a);
    printf("%d ",b);
    
    c++;
    if(c==10)
        break;
}
} //少了这个

int primeNum(int m)

{ int i;

for(i=2;i<m;i++)

if (m%i ==0) break;

if(i>=m) return m; }

 

#include<stdio.h>
int primeNum(int i);//函数的原型声明要放到函数外面去
int main() {
	int a,b,c=0;
	for(a=3; a<101; a++) {
		b=primeNum(a);
		if(b!=-1){
			printf("%d\t",b);
			c++;
			if(c==10)
				break;
		}
	}
	printf("\n");
	c=0;
	for(a=100; a>2; a--) {
		b=primeNum(a);
		if(b!=-1){
			printf("%d\t",b);
			c++;
			if(c==10)
				break;
		}
	}
}
	int primeNum(int m) {
		int i;
		for(i=2; i<m; i++)
			if (m%i ==0) 
				break;
		if(i>=m) 
			return m;
		else{
			return -1;
		}
	}

我刚刚只是看到了你的错误,没注意你逻辑还有问题,现在代码调整好啦。

您的问题已经有小伙伴解答了,请点击【采纳】按钮,采纳帮您提供解决思路的答案,给回答的人一些鼓励哦~~

ps:开通问答VIP,享受5次/月 有问必答服务,了解详情↓↓↓

【电脑端】戳>>>  https://vip.csdn.net/askvip?utm_source=1146287632
【APP 】  戳>>>  https://mall.csdn.net/item/52471?utm_source=1146287632