语法没有问题,算法也可以
比较不正确,可能是你输入时的问题,请注意输入格式,严格按照以下方式:
数字,数字,数字
如果还不行的话就是你编译器的问题或者人品问题!呵呵
#include
void main()
{
int max(int x,int y,int z);
int a,b,c,d;
scanf("%d,%d,%d",&a,&b,&c);
d=max;
printf("max=%d",d);
}
int max(int x,int y,int z)
{
int w;
if(x>y) w=x;
else w=y;
if(x>z) w=x;
else w=z;
return(w);
}
这个是我的作业不知道对你有帮助没有!!!!!!!!
你的程序对啊`
可能是你输入数字时有误 `
你要和scanf里面保持一至
比如
scanf("%d,%d,%d",&a,&b,&c);
这个输入数时`三个数字只能用数字隔开``
scanf("%d %d %d",&a,&b,&c);
如果是这样你就要用空格把三个数字隔开`
#include
using namespace std;
template
swap1(T *p1,T *p2)
{
T &p;
p=*p1;
*p1=*p2;
*p2=p;
}
void main()
{
int n1,n2,n3;
cout<<"请输入三个整数:\n";
cin>>n1>>n2>>n3;
if (n1
if (n1
if (n2
cout<<"排序后为:"<
cout<<"请输入三个浮点数:\n";
cin>>e1>>e2>>e3;
if(e1
if(e1
if(e2
cout<<"排序后为:"<
写了个模板。运行了没问题的
我刚也运行了你的程序,没发现问题,能正确输出。可能是你自己输入数字出现问题了吧,能说下你怎么输入数字的吗?
另外,要比较三个数大小还有很多方法,比如#include
void main()
{
int a,b,c,max;
scanf("%d,%d,%d",&a,&b,&c);
if(a>b)
if(a>c) max=a;
else max=c;
else
if(b>c) max=b;
else max=c;
printf("最大数为max=%d",max);
}