在主函数中通过循环调用isprime()函数输出300—500之间的素数,每输出10个素数后换行。isprime()定义在前,主函数在后。
#include<iostream>#include<cmath>#include<iomanip>using namespace std;int isprime(int n){ int k,i,j=0;for(n=301;n<=500;n=n+2){k=int(sqrt*n);for(i=2;i<=k;i=i++)if(n%i==0){return 0;break;}else return 1;}j=j+1;if(j%10==0)cout<<endl;return n;}int main(){ int q,w; for(w=300;w<=500;w++) q=isprime(int w); cout<<q<<endl;
return 0;
int isPrime(int num) {
int divisor = 3;
int testLimit = num;
if (num < 2)
return 0;
if ( num < 4 )
return 1;
if (num % 2 == 0)
return 0;
while ( testLimit >= divisor )
{
if ( num % divisor == 0 )
return 0;
testLimit = num / divisor;
divisor += 2;
}
return 1;
}
return的用法:
return的作用是结束正在运行的函数,并返回函数值。return后面可以跟一个常量,变量,或是表达式。
函数的定义一般是这样的,例如:
int a(int i)//第一个int是函数的返回值的类型,也就是return后面跟的值的类型,a是函数的名称,括号里的是传递给函数的参数,int是参数的类型,i是参数的名字
{
...//省略函数体内容
return b;//b必须与函数头的返回值一致(此处为int型)
}
简单函数举例:
int addOne(int b)
{
return b+1;
}
该函数的作用是取得一个数,将这个数加上1,再将结果返回
调用时这样:
int result=addOne(2);//此时result的值为3
函数括号里的参数也可以为变量或能算出值的表达式
以上就是一个基本的函数,一般的函数都有返回值,也就是return后面跟的值,返回值可以为各种数据类型,如:int,float,double,char,a[](数组),*a(指针),结构或类(c++)
但不是所有函数都有返回值,如果某个函数无返回值,那么返回值的位置则为“void”关键字,此时函数体中无返回值,即无return的值。但是函数中也可出现return,即一个空的return句子,其作用是使函数立即结束,如void print()//括号中为空表示无传递参数、
{
printf("a");
printf("b");
return;//函数执行到此处结束
printf("c");
}//该函数只执行到return语句处,即屏幕上输出的为"ab"