fuze11 发表于 2020-5-25 21:09:42

求大神看看

#include <stdio.h>
main()
{
        int a,b,c,ch;
        printf("输出");
        scanf("%d%d%d",a,b,c);
        while((ch=getchar())=='\n');
        {
                        if(a>b>c)
                {
                        printf("a");
                }
                if(b>a>c)
                {
                        printf("b");
                }
                if(c>a>b)
                {
                        printf("c");
                }       
       
       
        }       
}这个程序没有输出
然后我还有一个问题 putchar('\n')是什么意思

永恒的蓝色梦想 发表于 2020-5-25 21:19:19

然后我还有一个问题 putchar('\n')是什么意思放置一个换行符

fuze11 发表于 2020-5-25 21:21:13

永恒的蓝色梦想 发表于 2020-5-25 21:19
放置一个换行符

谢谢大神,那这个程序错在哪里呢

sunrise085 发表于 2020-5-25 21:29:29

语法错误有一处。逻辑错误有两种四处,给你标记出来了
#include <stdio.h>
main()
{
    int a,b,c,ch;
    printf("输出");
    scanf("%d%d%d",&a,&b,&c);//scanf需要给变量地址,而不是变量名
    while((ch=getchar())=='\n');//这里有个分号,所以while循环没有意义
    {
      if(a>b && b>c)//C语言中不能连续比较大小,那样得到的不是你想要的结果
      {
            printf("a");
      }
      if(b>a && a>c)//同上
      {
            printf("b");
      }
      if(c>a && a>b)//同上
      {
            printf("c");
      }
    }      
}

永恒的蓝色梦想 发表于 2020-5-25 21:32:59

sunrise085 发表于 2020-5-25 21:29
语法错误有一处。逻辑错误有两种四处,给你标记出来了

所以你还是没删去第7行的分号

sunrise085 发表于 2020-5-25 21:35:11

永恒的蓝色梦想 发表于 2020-5-25 21:32
所以你还是没删去第7行的分号

是没删掉。那个分号给他留着,让他看看,有没有循环其实是一样的 ,只不过是有循环就可以多打印几遍同一个字符而已。
页: [1]
查看完整版本: 求大神看看