素数加强版

us胡##### 题目描述

输入一个整数,判断该整数是否为素数,若是,输出该整数,若否,输出大于该整数的第一个素数。(例如,输入为14,输出17,因为17是大于14的第一个素数)

输入输出格式
输入描述:
1
输入一个整数n,n最大为10000。
输出描述:
1
按题意输出。
输入输出样例
输入样例#:
1
14
输出样例#:
1
17
题目来源
1
贵州大学2014机试
AC代码1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <stdio.h>
#include <math.h>
int ips(int n)
{
if(n==0||n==1)
return 0;
for(int i=2;i<=sqrt(n);++i)
{
if(n%i==0)
return 0;
}
return 1;
}

int main()
{
int n;
scanf("%d",&n);
while(!ips(n))//只要不是质数,n就加1
{
n++;
}
printf("%d",n);
}
AC代码2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <stdio.h>
#include <math.h>
int ips(int n)
{
if(n==0||n==1)
return 0;
for(int i=2;i<=sqrt(n);++i)
{
if(n%i==0)
return 0;
}
return 1;
}

int main()
{
int n;
scanf("%d",&n);
for(int j=n;j<=10009;++j)//n=10000时,10007是质数
{
if(ips(j))
{
printf("%d",j);
return 0;
}
}
}
凡希 wechat
喜欢所以热爱,坚持干货分享,欢迎订阅我的微信公众号
呐,请我吃辣条