我被调用了多少次
Description
编写一个函数,该函数能够判断传递过来的数是否是素数,并返回自身是被第几次调用。要求不用全局变量。
Input
第一行是整数n,表示下一行数据的个数,1<=n<=1000,每个数据的位数不超过6位。
Output
输出两个整数,用空格隔开。第一个数表示判断出的素数个数,第二个数表示函数被调用的次数。
Sample Input
5
1 2 3 4 5
1 2 3 4 5
Sample Output
3 5
AC code:
#include
<
stdio.h
>
#include < math.h >
int isprim( int n)
{
int i;
if (n == 1 )
return 0 ;
else if (n == 2 )
return 1 ;
else
{
for (i = 2 ; i <= sqrt(n); i ++ )
{
if (n % i == 0 )
return 0 ;
}
return 1 ;
}
}
int main()
{
int n,num,t = 0 ;
int prims = 0 ;
scanf( " %d " , & n);
while (n -- )
{
scanf( " %d " , & num);
t ++ ;
if (isprim(num))
prims ++ ;
}
printf( " %d %d " ,prims,t);
return 0 ;
#include < math.h >
int isprim( int n)
{
int i;
if (n == 1 )
return 0 ;
else if (n == 2 )
return 1 ;
else
{
for (i = 2 ; i <= sqrt(n); i ++ )
{
if (n % i == 0 )
return 0 ;
}
return 1 ;
}
}
int main()
{
int n,num,t = 0 ;
int prims = 0 ;
scanf( " %d " , & n);
while (n -- )
{
scanf( " %d " , & num);
t ++ ;
if (isprim(num))
prims ++ ;
}
printf( " %d %d " ,prims,t);
return 0 ;
}