帮忙看下这c++程序哪儿有问题?

来源:百度知道 编辑:UC知道 时间:2024/05/24 07:30:12
#include<iostream.h>

int max(int x,int y)
{
int a,b,c;
if(a>b)
{
c=a;
}
else
{
c=b;
}
return(c);
}

int main ()
{
int x,y,z;
cout<<"要比较的一个数字\n";
cin>>x;
cout<<"要比较的另一个数字\n";
cin>>y;
z=max(x,y);
cout<<"大的数字是:"<<z<<endl;
system("pause");
}

编译没问题,结果是错的..

#include<iostream>
using namespace std;

int max(int x,int y)
{

if(x>=y)
{
return x;
}

else
{
return y;
}

}

int main ()
{
int x,y,z;
cout<<"要比较的一个数字\n";
cin>>x;
cout<<"要比较的另一个数字\n";
cin>>y;
z=max(x,y);
cout<<"大的数字是:"<<z<<endl;
system("pause");
return 1;
}
abc没有初始化,另外没有判断相等的情况

int max(int x,int y)
{
int c;
if(x>y)
{
c=x;
}
else
{
c=y;
}
return(c);
}
你传的X,Y都没有用到,不出错才怪.

当然有问题
你比来比去的其实只是在栈上的整数,它的值是不确定的
所以你得出来的结果是不对的
int max(int x,int y)
{
int a,b,c;
if(a>b)
{
c=a;
}
else
{
c=b;
}
return(c);
}
这个你有用到函数的形参进行比较吗?

正确的如下 你可以试下
#includ