当前位置: 代码迷 >> C语言 >> if 语句的问题
  详细解决方案

if 语句的问题

热度:201   发布时间:2007-01-02 16:17:29.0
~~`7楼的程序能帮LZ实现3种输出~~
----------------解决方案--------------------------------------------------------

你并没有在程序中要求输入数字,而是直接给定了X=1,所以它只能有一种情况,那就是X=1,而不是你想表达的三种情况:小于2、等于2、大于2。
所以你应该有个输入函数scanf,根据输入的数值,从而判断是输出“OK”还是“quite”。
真确程序应该是:
#include<stdio.h>
main()
{
int x;
scanf("%d",&x); /*输入函数,从键盘获得一个数值给x*/
if(x==2)
/*要分清赋值号和等于号*/
printf("OK");
else if(x<2)
printf("%d\n",x);
else printf("quite");
getch();
}


----------------解决方案--------------------------------------------------------
我是楼上的,刚才忘了对第四行加以注释了,现注释如下:
int x; /*在这里,不要给x赋初值*/
----------------解决方案--------------------------------------------------------
LS的int x; /*在这里,不要给x赋初值*/   是可以,不必要.
----------------解决方案--------------------------------------------------------
看了还是有点不懂啊
那个if 后怎么有两个else 最后的那个是与那个关联的啊
我知道else 和他最近的 if 是一对啊
后面的那个是什么意思 不懂?
请指教、

----------------解决方案--------------------------------------------------------
首先这个程序不是你自己写的吗?
如果以源程序为原型则if-else的配对关系如下:蓝与蓝配对,红与红配对
main()
{ int x=1;
if(x=2)
printf("OK");
else if(x<2)
printf("%d\n",x);
else printf("quite");
}

----------------解决方案--------------------------------------------------------

可以简单理解成最后一个else就是否则一切的意思,就是当上述条件全为假时,则执行最后一个 else后的语句。


----------------解决方案--------------------------------------------------------
  相关解决方案