| 
 | 
 
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册  
 
x
 
下面我的代码除了把分数i定义为float类型,而课堂代码为int i,其他的没什么不同,为什么我的代码无论输什么分数,最后打印结果都是E呢? 
 
 
- #include <stdio.h>
 
  
- int main()
 
 - {
 
 -         float i;
 
 -         
 
 -         printf("学生的分数是:");
 
 -         scanf("%.1f", &i);
 
 -         
 
 -         if(i>=90)
 
 -         {
 
 -                 printf("A\n");
 
 -         }
 
 -         
 
 -         else if(80<=i&&i<90)
 
 -         {
 
 -                 printf("B\n");
 
 -         }
 
 -         
 
 -         else if(70<=i&&i<80)
 
 -         {
 
 -                 printf("C\n");
 
 -         }
 
 -         
 
 -         else if(60<=i&&i<70)
 
 -         {
 
 -                 printf("D\n");
 
 -         }
 
 -         
 
 -         else
 
 -         {
 
 -                 printf("E\n");
 
 -         }
 
 -         
 
 -         return 0;
 
 - }
 
  复制代码 
这两行一样吗?一定要仔细看,答案是不一样 
-         //scanf("%.1f", &i);
 
 -         //scanf("%.lf", &i);
 
  复制代码 
- #include <stdio.h>
 
  
- int main()
 
 - {
 
 -         float i;
 
 -         
 
 -         printf("学生的分数是:");
 
 -         //scanf("%.1f", &i);
 
 -         //scanf("%.lf", &i);
 
 -         scanf("%f", &i);
 
 -         
 
 -         if(i>=90)
 
 -         {
 
 -                 printf("A\n");
 
 -         }
 
 -         
 
 -         else if(80<=i&&i<90)
 
 -         {
 
 -                 printf("B\n");
 
 -         }
 
 -         
 
 -         else if(70<=i&&i<80)
 
 -         {
 
 -                 printf("C\n");
 
 -         }
 
 -         
 
 -         else if(60<=i&&i<70)
 
 -         {
 
 -                 printf("D\n");
 
 -         }
 
 -         
 
 -         else
 
 -         {
 
 -                 printf("E\n");
 
 -         }
 
 -         
 
 -         return 0;
 
 - }
 
 
  复制代码 
 
 
 |   
 
 
 
 |