C语言程序,急

来源:百度知道 编辑:UC知道 时间:2024/06/02 20:32:51
#include<stdio.h>
void main()
{
int a,b,c,m;
scanf("%d,%d,%d",&a,&b,&c);
if(a==b)
{
m=a;
if (m>c)
printf("最大值是a=b=%d",m);
else
printf("最大值是c=%d",c);
}
else if(a>b)
{
m=a;
if(a>c)
printf("最大值是a=%d",a);
else if(a==c)
printf("最大值是a=c=%d",a);
else
printf("最大值是c=%d",c);
}
else
{
m=b;
if(b>c)
printf("最大值是b=%d",b);
else if(b==c)
printf("最大值是b=c=%d",b);
else
printf("最大值是c=%d",c);
}

if(a==b)
{
m=a;
if (m>c)

else
printf("最大值是c=%d",c);
}

里面的printf("最大值是a=b=%d",m); 的逗号是中文标点,不行!!

其实你只是想求3个数中的最大值,也不用那么麻烦吧!

第一点:printf("最大值是a=b=%d",m);
里面的逗号要改成英文输入状态下的逗号。
第二点:原句可以改成完全用不着m:
if(a==b)
{
if (a>c)
printf("最大值是a=b=%d",a);
第三点:下面的m=a和m=b都去掉。
就可以了。

很繁杂。。可以试着用函数

太麻烦了,是不是3个数中,输出最大数啊?
本来想给你写代码的
但我太久没用过了,有的地方都忘了
但我可以给你说说思路,不用这么麻烦的
输入3个数,两两相比
if (a<b) {a=b}
if (a<c) {a=c}
if (b<c) {b=c}
printf("d%",a)
这样就可以了,最后不管输入什么a都是最大的
试下吧,太久没用了,不知道格式对不对,但思路你能明白吗?

用数组
int a[3], flag, tmp;
scanf("%d%d%d", &a[0], &a[1], &a[2]); //此处也可循环
tmp = a[0];

for (flag = 0;flag < 3;flag++)
{
if (a[flag] >= a[0])
{
tmp = flag;
a[0] = a[flag];
}
}

printf("