1092: 素数表(函数专题)
Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 5837 Solved: 2375
Submit Status Web Board
Description
输入两个正整数m和n,输出m和n之间的所有素数。
要求程序定义一个prime()函数和一个main()函数,prime()函数判断一个整数n是否是素数,其余功能在main()函数中实现。
int prime(int n)
{
//判断n是否为素数, 若n为素数,本函数返回1,否则返回0
}
Input
输入两个正整数m和n,m<=n,且都在int范围内。
Output
输出占一行。输出m和n之间的所有素数,每个数后有一个空格。测试数据保证m到n之间一定有素数。
Sample Input
2 6
Sample Output
2 3 5
HINT
Source
AC不成功,数组越界。。。。
代码:
/*=============================AC情况===============================*/
/*题目网址: */
/*时间: */
/*心得: */
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define G 10001
bool issu[G];
void init() {
memset(issu,true,sizeof(issu));
issu[0]=issu[1]=false;
issu[2]=issu[3]=true;
for(int j=0; j<G-1; j++) {
if(issu[j]) {
for(int k=2*j; k<G-1; k=k+j)
issu[k]=false;
}
}
}
int main() {
int m,n;
scanf("%d%d",&m,&n);
init();
for(int j=m; j<=n; j++) {
if(issu[j])
printf("%d ",j);
}
return 0;
}
/*********************************测试数据*********************************
**************************************************************************/