肥喵奶黄包 发表于 2018-10-23 17:56:21

c语言质数编写

1、编写判别函数,原型为:short IsPrime(unsigned n);功能为判断整数n是否质数,具体要求:
1如果n不是“大于1的正整数”,返回-1;
2如果n是“大于1的正整数”但不是质数,返回0;
3如果n是“大于1的正整数”而且是质数n,返回1;
4输入一个整数(检查是否是较大的正整数,否则输出错误信息并正常退出),判断是质数还是合数,输出判别结果;


请大神们救救我吧,要交作业了!!!!!!!!!!
麻烦大神们,给我一个可以运行的,xiexie

claws0n 发表于 2018-10-23 18:12:27

太重复了吧
#include <stdio.h>

short IsPrime(int n)
{
      if(n <= 1)
                return -1;
      for(int i = 2; i <= n/2; i++)
      {
                if(n % i == 0)
                        return 0;
      }
      return 1;
}

int main(void)
{
    int n;
    printf("输入一个整数:n = ");
    scanf("%d", &n);
    printf("%d\n", IsPrime(n));
               
    return 0;
}

claws0n 发表于 2018-10-23 18:14:21

int IsPrime(int n) 也可以

肥喵奶黄包 发表于 2018-10-23 19:58:58

claws0n 发表于 2018-10-23 18:14
int IsPrime(int n) 也可以

你给我的代码在vc++6.0运行不了好多错误

claws0n 发表于 2018-10-23 20:01:14

本帖最后由 claws0n 于 2018-10-23 20:06 编辑

肥喵奶黄包 发表于 2018-10-23 19:58
你给我的代码在vc++6.0运行不了好多错误

C99 的关系int IsPrime(int n)
{
      int i;
      if(n <= 1)
                return -1;
      for(i = 2; i <= n/2; i++)   //int 在里边写是C99的
      {
                if(n % i == 0)
                        return 0;
      }
      return 1;
}
页: [1]
查看完整版本: c语言质数编写