搜索
查看: 3226|回复: 9
打印 上一主题 下一主题

新手的又一个问题来了。。。

[复制链接]
跳转到指定楼层
楼主
发表于 2012-7-5 15:48:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1啊哈币
本帖最后由 rosynirvana 于 2014-9-29 22:45 编辑

问题真多啊。。

  1. #include <stdio.h>
  2. int main()
  3. {
  4.   int a,b,c;
  5.   scanf("%d %d",&a,&b);
  6.   if(a>b)
  7.   c=a, printf("%d",c);
  8.   if(a==b) printf("一样大");
  9.   else c=b,
  10.   printf("%d",c);
  11.   sleep (8000);
  12.   return 0;
  13. }
复制代码


只要输入的数字 a比b大  就会显示错误。。。  什么原因?

最佳答案

查看完整内容

语法和逻辑都有错误,多个语句都在if中的时候要用{}。括起来。 [mw_shl_code=c,true]#include int main() { int a,b; scanf("%d %d",&a,&b); if(a>b) { printf("%d",a); } else if(a==b) printf("一样大"); else { printf("%d",b); } sleep (8000); return 0; }[/mw_shl_code]
沙发
发表于 2012-7-5 15:48:28 | 只看该作者
语法和逻辑都有错误,多个语句都在if中的时候要用{}。括起来。
[mw_shl_code=c,true]#include <stdio.h>
int main()
{
    int a,b;
    scanf("%d %d",&a,&b);
    if(a>b)
    {
        printf("%d",a);
    }
    else if(a==b)
        printf("一样大");
    else
    {
         printf("%d",b);
    }
    sleep (8000);
        return 0;
}[/mw_shl_code]
板凳
 楼主| 发表于 2012-7-5 16:58:13 | 只看该作者
admin 发表于 2012-7-5 15:57
语法和逻辑都有错误,多个语句都在if中的时候要用{}。括起来。
[mw_shl_code=c,true]#include
int main( ...

为什么11行  上下没有加{ }?  不需要么?
地板
发表于 2012-7-5 17:01:45 | 只看该作者
bazyu 发表于 2012-7-5 16:58
为什么11行  上下没有加{ }?  不需要么?

if 下面只有一个语句时可以不用{},否则要加{}
5#
发表于 2012-7-5 17:11:44 | 只看该作者
ahac_wuleicity 发表于 2012-7-5 17:01
if 下面只有一个语句时可以不用{},否则要加{}

正解,不仅if,else,while,for都是的
6#
 楼主| 发表于 2012-7-5 17:37:10 | 只看该作者
ahac_wuleicity 发表于 2012-7-5 17:01
if 下面只有一个语句时可以不用{},否则要加{}

十分感谢!~ 凑够十个字好辛苦~
7#
发表于 2012-7-7 16:50:13 | 只看该作者
admin 发表于 2012-7-5 17:11
正解,不仅if,else,while,for都是的

以及struct template union class enum . . .
8#
发表于 2014-9-29 22:54:15 | 只看该作者
Primer_Plus 发表于 2012-7-7 16:50
以及struct template union class enum . . .

C里面没有template
而且template的大括号不还是function或者class的括号

lz的问题是语义上的
输入3 2
第一个if符合条件,第二个if的else分支也符合条件,两个都输出所以就变成32了
只要在第二个 if前面加个else就行了
9#
发表于 2014-10-12 08:02:06 | 只看该作者
#include <stdio.h> int main() {     int a,b,c;         scanf ("%d%d",&a,&b);     if (a>b){     c=a;     printf("%d",c);         }     if (a==b){ printf("一样大");         }     else {c=b;     printf("%d",c);     }         system("pause");         return 0; }
10#
发表于 2018-9-14 20:35:30 | 只看该作者
int main()
{
    int a,b;
    scanf("%d %d",&a,&b);
    if(a>b)
    {
        printf("%d",a);
    }
    else if(a==b)
        printf("一样大");
    else
    {
         printf("%d",b);
    }
    sleep (8000);
        return 0;
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表