麻烦帮忙在TC环境下编写程序
领会并牢固掌握素数算法,深入循环结构设计。从键盘输入一个大于3的正整数,输出距离该数最近的素数。根据输入的数不同,此问题可能有一个答案(或者比输入的数大或者比输入的数小)...
领会并牢固掌握素数算法,深入循环结构设计。从键盘输入一个大于3的正整数,输出距离该数最近的素数。根据输入的数不同,此问题可能有一个答案(或者比输入的数大或者比输入的数小),也可能需要输出两个值(一个比输入的数大,一个比输入的数小,两个距离输入的数一样近)。
展开
展开全部
先写一个判断是不是素数的函数,然后再主程序中调用比较就可以了/
#include "math.h"
int susu(int num){
int i,k,leap=1;
k=sqrt(num+1);
for(i=2;i<=k;i++){
if(num%i==0){
leap=0;
break;
}
else
leap=1;
}
return leap;
}
main()
{
int i,num;
int min=0,max=0;
printf("\nEnter number:");
scanf("%d",&num);
if(susu(34))
printf("34 is leap");
for(i=2;i<=num;i++){
if(susu(i))
min=i;
}
if(min)
printf("\nmin susu =%d",min);
for(i=(num+1);i;i++){
if(susu(i)){
max=i;
break;
}
}
printf("\nmax susu =%d",max);
getch();
}
#include "math.h"
int susu(int num){
int i,k,leap=1;
k=sqrt(num+1);
for(i=2;i<=k;i++){
if(num%i==0){
leap=0;
break;
}
else
leap=1;
}
return leap;
}
main()
{
int i,num;
int min=0,max=0;
printf("\nEnter number:");
scanf("%d",&num);
if(susu(34))
printf("34 is leap");
for(i=2;i<=num;i++){
if(susu(i))
min=i;
}
if(min)
printf("\nmin susu =%d",min);
for(i=(num+1);i;i++){
if(susu(i)){
max=i;
break;
}
}
printf("\nmax susu =%d",max);
getch();
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询