首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

比较2个数的大小,结果出不来,出了一个随机数,不知道错哪了,请高手帮忙

2012-12-17 
比较2个数的大小,结果出不来,出了一个随机数,不知道哪里错了,请高手帮忙本帖最后由 fyrtl 于 2012-11-26 2

比较2个数的大小,结果出不来,出了一个随机数,不知道哪里错了,请高手帮忙
本帖最后由 fyrtl 于 2012-11-26 21:04:13 编辑 #include <stdio.h>
void main ()
{ int max(int x,int y);
int (*p)(int x,int y);//定义指向函数的指针

int a,b,c;
p=max;
scanf("%d,%d",&a,&b);
c=(*p)(a,b);
printf("a=%d,b=%d,max=%d\n",a,b,c);
}
int max (int x,int y)
{ int z;
if (x>y)z=x;
else z=y;
return z;
}
[最优解释]
你的程序是对的

这样好一点

#include <stdio.h>
int max(int x,int y);
void main ()

int (*p)(int x,int y);
int a,b,c;
p=max;
scanf("%d,%d",&a,&b);
c=(*p)(a,b);
printf("a=%d,b=%d,max=%d\n",a,b,c);
}
int max (int x,int y)

return x>y?x:y;
}

[其他解释]
输入的时候注意两个数据之间要加逗号
[其他解释]
int max(int x,int y);
声明放到main函数外面试试
[其他解释]
输入格式是
5,3
莫忘记 , 逗号了
[其他解释]
引用:
输入格式是
5,3
莫忘记 , 逗号了

正解,出现这个错误是你输入时候两个数据之间没有加逗号,导致b并没有接受到正确的输入值,所以b没有赋初值,所以是一个随机的值
[其他解释]
输入的时候要和scanf里面的格式完全一样

热点排行