max函数里你根本没有对*p1和*p2作比较,应该这样写:
int max(int *p1,int *p2)
{
if(*p1>*p2)
return *p1;
else
return *p2;
}
另外,main函数中的
if(a>b)
max(p1,p2);
删掉,因为根本没用。
int max(int *p1,int *p2)
{
int temp;
temp=*p1;
return(temp);
}
你之前那个函数根本没有进行比较,
改成
int max(int *p1,int *p2)
{
int temp;
if(*p1>*p2)
temp=*p1;
else
temp=*p2;
return(temp);
}
/*#include
void main()
{
int max(int *p1,int *p2);
int a,b,c;
int *p1,*p2,*p3;
scanf("%d %d",&a,&b);
p1=&a;
p2=&b;
p3=&c;
if(a>b) /*这样其实只能比较一开始输入的第一个值大于第二个值。。*/
{ /*注意加了挂号*/
max(p1,p2);
c=max(p1,p2); /*原先没有进行比较,c总是等于第一个数*/
}
printf("%d",*p3);
}
int max(int *p1,int *p2)
{
int temp; temp=*p1;
return(temp);
} */
#include
void main()
{
int max(int *p1,int *p2);
int a,b,c;
int *p1,*p2,*p3;
scanf("%d %d",&a,&b);
p1=&a;
p2=&b;
p3=&c;
if(a>b) /*当输入第一个值小于第二个输入的值时*/
c=max(p1,p2);
else
c=b;
printf("%d",*p3);
}
int max(int *p1,int *p2)
{
int temp;
temp=*p1;
return temp;
}
# include
void main()
{
int a,b,max;
scanf("%d,%d",&a,&b);
max=a;
if (max max=b;
printf("%d",max);
}
这个程序可以比较两个数的大小
你要通过调用函数实现应该可以用以下代码:
#include"stdio.h"
int max(int a,int b)
{
return ((a)>(b)?(a):(b));
}
void main()
{
int a,b;
int c;
scanf("%d %d",&a,&b);
c=max(a,b);
printf("%d\n",c);
}