当前位置: 代码迷 >> C语言 >> 求助!if和else if 应用问题!
  详细解决方案

求助!if和else if 应用问题!

热度:377   发布时间:2008-02-03 22:32:54.0
求助!if和else if 应用问题!
#include <stdio.h>
int main(void)
{
  int m=1;
  int n=4;

  
  printf("请输入碳原子数!\n");
  printf("n(C)=");
  scanf("%d",&m);
  printf("请输入氢原子数!\n");
  printf("n(H)=");
  scanf("%d",&m);
   
  if(n==(2*m+2))
  {
       printf("此物质是烷烃!\n");
  }
  else if (n==(2*m))
  {
     printf("此物质为烯烃!\n");
      
  }
  else if (n==(2*m-2))
  {
        printf("此物质为炔烃!\n");
  }
  else if (n==(2*m-6))
  {
        printf("此物质为苯!\n");
  }
   
  else
  {
        printf("对不起!我不知道!");
  }
     
   
     
}

*******************************************
大家好!
我做了一个程序是高二化学的!
当n=2*m+2,此物质为烷烃!
当n=2*m此物质为烯烃
当n=2*m-2此物质为炔烃
当n=2*m-6此物质为苯!

    请教各位:
if后判断应该怎样写!

谢谢!
搜索更多相关的解决方案: else  printf  应用  物质  

----------------解决方案--------------------------------------------------------
求助!
----------------解决方案--------------------------------------------------------
我也是菜鸟
哥们,我也很菜,不过我却看出些不对劲来。

你的碳原子和氢原子怎么都输入m啊?

另外,你的if~else语句之后,你想表述什么?

其实if~else语句之后完全可以结束了,因为你想表述的分支都已经表达完毕了啊。


说出我自己的想法,如有不对,请多包涵。
----------------解决方案--------------------------------------------------------
另外,你如果想把M、N分别赋值,也就不必赋初值了,那样多麻烦,而且没用啊。
本帖最近评分记录
  • hangeng +2 我很赞同 2008-2-3 22:56

谈笑声中话天地,清茶浊酒品江湖。
昔日豪杰今安在?中华代有人才出!
2008-02-03 14:53:23
hangeng

等 级:论坛游民
帖 子:424
专家分:39
注 册:2007-7-23
  得分:0 
谢谢!
我自己楞是没看出来!
谢谢!
----------------解决方案--------------------------------------------------------
一开始就是错
void main()
{
int n,m;
printf("请输入碳原子数!\n");
scanf("%d",&n);
printf("请输入氢原子数!\n");
scanf("%d",&m);
后面的差不多啦

}
----------------解决方案--------------------------------------------------------
忘了说!
我用的是 DEVC++4.9.9.2
----------------解决方案--------------------------------------------------------
#include <stdio.h>
int main(void)
{
  int m,n;
  fh:printf("请输入碳原子数:n(C)=\n");
  scanf("%d",&m);
  printf("请输入氢原子数:n(H)=\n");
  scanf("%d",&n);  
  if(n==(2*m+2))
    printf("此物质是烷烃!\n");
  else if (n==(2*m))  
    printf("此物质为烯烃!\n");
  else if (n==(2*m-2))
    printf("此物质为炔烃!\n");
  else if (n==(2*m-6))
   printf("此物质为苯!\n");   
  else
    printf("对不起!您输入错误,请重新输入!");
  goto fh;     
}

LZ你好,按照你的意思改了一下,不过不知道对不对。您参考一下。
----------------解决方案--------------------------------------------------------
用switch
----------------解决方案--------------------------------------------------------
  相关解决方案