我爱helloworld 发表于 2018-9-25 12:17:08

新手学C问题请教

问题:将三个数从小到大输出
代码:#include <stdio.h>
void main()
{
      int a,b,c,max1,max2,max3;
      scanf("%d,%d,%d",&a,&b,&c);
      if (a>b&&a>c)
                if (b>c)
                        max1=a,max2=b,max3=c;
                else
                        max1=a,max2=c,max3=b;
      else (b>a&&b>c)
                if (a>c)
                        max1=b,max2=a,max3=c;
                else
                        max1=b,max2=c,max3=a;
      printf("%d,%d,d%\n",max1,max2,max3);
}
给我出现这个?

gpf谦默 发表于 2018-9-25 12:35:53

检查一下符号是不是中文的;
把scanf()这个函数里面的逗号去掉

scanf("%d%d%d",&a,&b,&c);

claws0n 发表于 2018-9-25 12:43:21

多行的判断式,要大括号
#include <stdio.h>
void main()
{
      int a,b,c,max1,max2,max3;
      scanf("%d,%d,%d",&a,&b,&c);
      if (a>b&&a>c)
      {
                if (b>c)
                        max1=a,max2=b,max3=c;
                else
                        max1=a,max2=c,max3=b;
      }
      else if (b>a&&b>c)
       {
                if (a>c)
                        max1=b,max2=a,max3=c;
                else
                        max1=b,max2=c,max3=a;
       }
      printf("%d,%d,d%\n",max1,max2,max3);
}
没有上机,应该就这些

我爱helloworld 发表于 2018-9-25 13:20:32

gpf谦默 发表于 2018-9-25 12:35
检查一下符号是不是中文的;
把scanf()这个函数里面的逗号去掉



没有用,还是错误

我爱helloworld 发表于 2018-9-25 13:21:41

claws0n 发表于 2018-9-25 12:43
多行的判断式,要大括号
#include
void main()


谢谢,运行没有错误了,但是测试结果有些出路

我爱helloworld 发表于 2018-9-25 13:22:58

运行的结果不符合题目转换{:5_107:}

claws0n 发表于 2018-9-25 13:42:26

我爱helloworld 发表于 2018-9-25 13:22
运行的结果不符合题目转换

每个 if 跟 else 加上 {   }

claws0n 发表于 2018-9-25 18:25:14

我爱helloworld 发表于 2018-9-25 13:22
运行的结果不符合题目转换

还有最后一行
printf("%d,%d,%d\n",max1,max2,max3);
页: [1]
查看完整版本: 新手学C问题请教