#include
#include
fun ( double *a, *b )
{
if ( a * b > 0.0 ) //应为if(*a**b>0.0)
return 1;
else return 0;
}
main( )
{ double n , m;
printf ("Enter n , m : "); scanf ("%lf%lf", &n, &m );
printf( "\nThe value of function is: %d\n", fun ( &n, &m ) );
}
题二:
#include
#include
#define N 20
fun ( int *a, int n, int *odd, int *even )
{
int i,k;
*odd=*even=0;
for(i=0;i
k=*(a+i)%2;
if(k)
*odd+=*(a+i);
slse
*even+=*(a+i);
}
}
main( )
{ int a[N]={1,9,2,3,11,6}, i, n=6, odd, even;
printf ( "The original data is : \n" );
for ( i = 0; i < n; i ++ ) printf ( "%5d", *(a+i) );
printf("\n\n");
fun ( a, n, &odd, &even );
printf ( "The sum of odd numbers: %d\n", odd );
printf ( "The sum of even numbers: %d\n", even );
}
一、
int fun ( double *a, *b ) //指明返回值类型
{
if ( (*a) * (*b) > 0.0 ) //a,b是指针的地址,带*号才是它的值
return 1;
else return 0;
}
二、
fun ( int *a, int n, int *odd, int *even )
{
int i;
*odd=0;
*even=0;
for(i=0;i
if(*a%2==0)
*odd=*odd + *(a+i);
else
*even=*even + *(a+i);
}
}