关于c语言编程问题:有3个整数a,b,c,有键盘输入,输出其中最大的数
void main()
{ int a,b,c;
printf("a ,b, c ");
scanf ("%a%b%c",&a,&b,&c);
if (a>b)
if (b>c) printf("%d",a);
else
{ if (b>c) printf("%d",b);
else printf("%d",c) };
程序可以运行,但是无法显示结果,请问这是怎么回事?麻烦解答下! 展开
我的思路是a>b 1,若成立 (1)b>c 则 输出a
2,若不成立 (1)假如 b>c ①成立 则输出b ② 不成立 输出 c
你可以按我的思路看看我的代码吗 我只想知道我的代码哪儿错了
程序如下:#include <stido.h>
void main()
{ int a,b,c;
printf("a ,b, c ");
scanf ("%a%b%c",&a,&b,&c); //这里改成scanf("%d%d%d",&a,&b,&c);
if (a>b)
if (b>c) printf("%d",a); //此处if...else...嵌套混乱出了问题
else
{ if (b>c) printf("%d",b);
else printf("%d",c) };
int main()
{
int a,b,c;
printf("请输入a,b,c:");
scanf("%d%d%d",&a,&b,&c);
if(a>=b&&a>=c)printf("%d",a);
else if(b>=a&&b>=c)printf("%d",b);
else if(c>=a&&c>=b)printf("%d",c);
return 0;
}
错的有点多
#include
int main()
{
int a,b,c;
printf("请输入a,b,c:");
scanf("%d%d%d",&a,&b,&c);
if(a>=b&&a>=c)printf("%d",a);
else if(b>=a&&b>=c)printf("%d",b);
else if(c>=a&&c>=b)printf("%d",c);
return 0;
}
可以按照我的思路,是我的代码尽量变动不大的改动吗
可能的确和你代码最接近的就是楼上的算法了。你的原意是a>b且b>c吧,那就要用&&