|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
题目:求出100到200以内最大的素数和最小的素数,并求出两者的差值。
下面是我写的代码
#include <stdio.h>
int main()
{
int i,j,m,a,b;
for(i=100;i<200;i++)
{
m=1;
for(j=2;j<i;j++)
if(i%j==0)m=0;
if(m)
{
a=i;printf("最小的素数是%d",a);break;
}
}
for(i=200;i>=100;i--)
{
m=1;
for(j=2;j<i;j++)
if(i%j==0)m=0;
if(m)
{
b=i;printf("\n最大的素数是%d",b);break;
}
}
printf("\n差等于:%d",b-a);
return 0;
}
我在想能不能把两个判断合并在一起,可是我不会,有没有知道的铁子分享一下?
这是我的程序:
- #include <stdio.h>
- void main()
- {
- int i, j, k = 0, max, min;
- for (i = 100;i < 200;i++)
- {
- for (j = 2;j < 200;j++)
- {
- if (i % j == 0)
- break;
- }
- if (i == j)
- {
- if (k == 0)
- {
- min = i; // 第一个素数,必定是最小的
- k++;
- }
- else
- max = i; // 这个最大值是不断地刷新的
- }
- }
- printf("100 ~ 200 区间内最小的素数是 %d, ", min);
- printf("最大素数是:%d, 两者的差是 %d", max,max - min);
- printf("\n");
- }
复制代码
|
|