判断一个整数是不是素数,我这样子调用函数,为什么最后得到的都是“不是素数”

#include
#include
int main()
{
int n,f,i;
int s(int n);
printf("请输入一个整数:\n");
scanf("%d",&n);
{
if(i<=sqrt(n))
printf("该整数不是素数\n");
else
printf("该整数是素数\n");
}
return 0;
}
int s(int)
{int temp,i,n;
for(i=2;i<=sqrt(n);i++)
if(n%i==0);
temp=n;
return (temp);
}

4个回答

函数不是需要在主函数外面先声明吗?for循环下的语句应该加”{}”吧!

qq_38352092
qq_602612418 加了以后还是得到“不是素数”
2 年多之前 回复

#include
#include
int main()
{
int n, f, i;
int s(int n);
printf("请输入一个整数:\n");
scanf("%d", &n);
i = s(n);
if (i == 0)
printf("该整数不是素数\n");
else
printf("该整数是素数\n");
return 0;
}

int s(int n)
{
int i;
for (i = 2;i <= sqrt(n);i++)
{
if (n % i == 0)
return 0; //不是素数
}
return 1; //是素数
}

Caipta
游穆族人 回复qq_602612418:我这个就是在你的基础上改的,子函数应该是判断素数吧,所以判断完成后返回他是不是素数就ok了,主函数中设置一个int值对子函数的返回值进行性接收,你的代码子函数判断那块,让要判断的数n依次对i取模就好,至于子函数中的temp我其实没太懂你是怎么想的,,,你分析下我的代码应该就明白了,就是你的思路。
2 年多之前 回复
qq_38352092
qq_602612418 如果要在我这个的基础上修改,应该怎么改?
2 年多之前 回复

我刚刚把你的代码考下来试了一下

你试试把s函数中
if (n % i == 0)
return 0; //不是素数
修改一下
if ((n % i) == 0)
return 0; //不是素数

应该存在运算符优先级的情况

if(n%i==0)后面加了;,导致判断条件没什么作用了。去掉;。
int s(int n)
{
int temp=0,i;
for(i=2;i<=sqrt(n);i++)
if(n%i==0)
temp=n;
return (temp);
}
试试这样行不行。

github_38391605
LeiMPro 你的n是形参,要传递过来,你是在s()函数重新定义的。
2 年多之前 回复
github_38391605
LeiMPro 你的n是形参,要传递过来,你是在是()
2 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
调用函数 判断该数是不是素数
#include&lt;stdio.h&gt; int main() { int abc(int y); //声明函数 int a=2,b; scanf("%d",&amp;b); abc(a,b); //调用函数abc getchar(); getchar(); return 0; } int abc(int x,int y) { for(x=2;x&lt;=y;x++) ...
判断一个整数是否是素数
素数: 只能被1和自身整除的数。1既不是偶数也不是素数 static bool prime(int number) { if( number &amp;lt; 2) return false; for(int i = 2; i*i &amp;lt;= number; i++) { if(number % i == 0) return false; } return ...
判断整数是否是素数
n若为素数,输出1;否则,输出0。bool f(int n) { int m = 2; while(n % m != 0) { m++; } if(m == n) { return true; } return false; }main() { int n; while(cin>>n)
判断输入的整数是不是质数(素数)
/*判断输入的整数是不是质数(素数)*/ #include&lt;stdio.h&gt; int main() { int num; int i = 2; printf("请输入一个整数\n"); scanf("%d",&amp;num); if(num == 1) //如果是1...
判断n 是不是素数
package com.zcc.blog; public class Prime { public static void main(String[] args) { for (int i = 1; i if(isPrime(i)){ System.out.print(i+" "); } } } /**  * 判断n 是不是素数  * @param n  */
判断一个数是不是素数
判断一个数是不是素数 枚举法,为了提高效率,只需要循环这个数的开方次。 #define _CRT_SECUSE_NO_WARINGS 1 #include #include #include #include int is_prime(int num) { int i; for (i = 2; i <= sqrt(num); i++) { if (num%i == 0)
大数判断是不是素数
int sushu(long long num) { long long m=0; if(num == 1) return 0; if(num ==2|| num==3 ) return 1 ; if(num %6!= 1&amp;amp;&amp;amp;num %6!= 5) return 0 ; int tmp =sqrt( num); for(int i=...
判断一个数是不是素数?
#include&amp;lt;stdio.h&amp;gt;#include&amp;lt;math.h&amp;gt;int main(){ int prime(int); int a; printf(&quot;请输入一个数:\n&quot;); scanf(&quot;%d&quot;,&amp;amp;a);    if(prime(a))    printf(&quot;%d是素数\n&quot;,a); else printf(&quot;%d不是素数\n&quot;,a); }int pr
判断是不是素数的问题?
void is_prime(int n)rnrn int i,x;rn x=sqrt(n);rn for(i=2;i<=x;i++)rn rn if ((n%i)==0)rn printf("%d is not a prime.\n",n);rn break;rn rn rn if (i>x) printf("%d is a prime.\n",n);rnrnrn我想问一下, x=sqrt(n)中求N的平方根干什么啊? rn
PHP之判断是不是素数
判断是否是素数 素数能被1和它本身整除的 function checknumber($number){ for($i=2;$i<=sqrt($number);$i++){ if($number%$i==0){ return 0; } return 1; } }
判断是不是素数
判断i是否是宿素数,是输出,不是不输出 for(j = 2; j {     if(0 == i%j)         break; } if(j == i)     printf("%d\n",i)
素数的实现,质数,判断一个数是不是素数
徐权 素数 质数 判断 C语言
函数:判断是不是闰年;判断是不是素数
函数:判断是不是闰年;判断是不是素(质)数
判断一个数是不是质数(素数)
质数:只能被1和本身整除的数,2是最小的质数。以下是Java实现的判断一个数是否是质数的代码。class isPrime{ public boolean isPrimeNumber(int num){ if(num&amp;lt;=2||num%2==0){ return false; } for(int i=3;i&amp;lt;M...
判断输入的数是不是素数
除了1和本身,不存在整除的数,最小的素数是2 public class PrimeNum { public static void main(String[] args) { Scanner scan = new Scanner(System.in); System.out.println("Please input a number!"); int a = scan.nextIn...
2017判断是不是对称素数
#include #include #include int main() {     int a,b,v=1,d;     while(v     {         scanf("%d",&a);         int sum=0;         b=a;         while(a)         {             sum=sum*10+a%
Delphi 判断是不是素数.rar
Delphi 判断是不是素数,一个简单的数字问题吧,数学 学的好的,肯定知道什么是素数了,了解本代码,首先需要知道什么是素数,然后才知道怎么判断素数,本代码就是其中一种判断素数的方法,不是太复杂,核心代码部分如下:   if (edit1.Text='1')or(edit1.Text='2')or(edit1.Text='3') then    begin    label2.Caption:='是素数';    end    else    begin    for i:=2 to trunc(sqrt(p)) do    begin    if frac(p/i)=0 then    begin    label2.Caption:='不是素数';    break;    end    else    begin    label2.Caption:='是素数';    end;    end;    end;
C++ 判断一个数是不是素数
题目:判断一个数是不是素数,1 &amp;lt; N &amp;lt;= 50000 思路:判断n是否整除(求余是否等于0)大于1而小于sqrt(n)中的任何一个数,如果有则不是素数,否则是素数 实现代码: // 判断一个数是不是素数,1 &amp;lt; N &amp;lt;= 50000 #include &amp;lt;iostream&amp;gt; #include &amp;lt;cmath&amp;gt; using nam...
判断一个数是不是素数和回文数
 1.判断一个数是不是回文数    function huiNum(num){      var str = num.toString();      var len =str.length;      var i=0,j=len-1;      while(i&amp;lt;len &amp;amp;&amp;amp; j&amp;gt;=0){        if(str[i]!=str[j]){          retu...
筛选法判断一个整数为素数(java)
用java实现 用筛选法判断一个整数为素数 稍加更改,也可判断一个整数以内的所有素数
经典算法之判断一个整数是否为素数
经典算法之判断一个整数是否为素数     1 /** 2 算法一点一点来_判断一个数是否为素数 3 作者: 小布丁 4 时间:2017-1-3 08:47 5 输入:一个整数 6 输出: 0(不是素数)或1(是素数) 7 */ 8 #include 9 10 /**************S 被称为笨蛋的做法************/ 11 int isPrime(int
判断一个整数是否为素数算法
素数:n%i==0,那就可以判断n是非素数。 算法的复杂度,依赖i的取值范围,如果是2~n那就是O(N)。如果是2~sqrt(N),复杂度就是O(sqrt(N))。   package dayscode; import java.util.Scanner; /** * 判断是否为素数,也就是一个整数只能被1和自己整除。1不是素数 */ public class Prime { ...
判断一个整数是否为素数
用的是vs 2010版本编写的C++程序,判断一个整数是否为素数。
Java:"判断一个整数是否是素数"
问题描述:对于大于 1的数,如果除了 1 和它本身,它不能再被其它正整数整除,那么我们说它是一个质数。晓萌想判断一个数是不是质数,希望找你写个程序,帮助她进行判断。 思路:2~√n import java.util.Scanner; public class test { public static void main(String[] args) { ...
实现一个函数,判断一个数是不是素数
程序代码: #define _CRT_SECURE_NO_WARNINGS 1 #include&amp;lt;stdio.h&amp;gt; #include &amp;lt;windows.h&amp;gt; void judg_prime(int num) { int n = 0; if (num &amp;lt;= 1) printf(&quot;%d不是素数\n&quot;, num); for (n = 2; n &amp;lt;=...
实现一个函数,判断一个数是不是素数。
#define _CRT_SECURE_NO_WARNINGS 1 #include #include int prime(int X) { int i = 0; for (i = 1; i { if (X%i != 0) return 1; else return 0; } } int main() { int a = 0; printf("请输入数字:");
输入一个正整数,判断是不是素数(C++)
输入一个正整数,判断是不是素数(C++) 设和和我一样的初学者看。
素数-判断一个数是否是素数
最简答的思路,首先将1,2,3单独判断,然后对于一个数循环判断,循环的结束为(int)Math.sqrt(n) import java.util.*; public class Sushu2 { public static void main(String args[]){ Scanner in=new Scanner(System.in); int n=...
相关热词 c#入门推荐书 c# 解码海康数据流 c# xml的遍历循环 c# 取 查看源码没有的 c#解决高并发 委托 c#日期转化为字符串 c# 显示问号 c# 字典对象池 c#5.0 安装程序 c# 分页算法