if的用法

if用法举例:求分数的等级

 1 # include <stdio.h>
 2 
 3 int main(void)
 4 {
 5     float score; //score分数
 6 
 7     printf("请输入您的考试成绩: ");
 8     scanf("%f", &score);
 9 
10     if (score > 100)
11         printf("这是做梦!\n");
12     else if (score>=90 && score<=100) //不能写成 90<=score<=100
13         printf("优秀!\n");
14     else if (score>=80 && score<90)
15         printf("良好!\n");
16     else if (score>=60 && score<80)
17         printf("及格!\n");
18     else if (score>=0 && score<60)
19         printf("不及格! 继续努力!\n");
20     else  //注意最后一个else后面没有表达式了
21         printf("输入的分数过低,不要如此自卑!\n");
22     
23     return 0;
24 }

对任意3个数进行排序:

 1 # include <stdio.h>
 2 
 3 int main(void)
 4 {
 5     int a, b, c;  //等价于:  int a; int b; int c;
 6     int t;
 7 
 8     printf("请输入三个整数(中间以空格分隔): ");
 9     scanf("%d %d %d", &a, &b, &c);
10     
11     //编写代码完成a是最大值  b是中间值  c是最小值
12     
13     if (a < b)
14     {
15         t = a;
16         a = b;
17         b = t;
18     }
19 
20     if (a < c)
21     {
22         t = a;
23         a = c;
24         c = t;
25     }
26 
27     if (b < c)
28     {
29         t = b;
30         b = c;
31         c = t;
32     }
33     
34     printf("%d %d %d\n", a, b, c);
35 
36     return 0;
37 }

为什么最后一个else后面不加表达式?

 1 # include <stdio.h>
 2 
 3 int main(void)
 4 {
 5     if (1 > 2)
 6         printf("AAAA\n");
 7     else if (1 > 5)
 8         printf("BBBB\n");
 9     else (5 > 10);  //无实际意义的语句
10         printf("CCCC\n");
11 
12         /*
13             else (5 > 10);  //无实际意义的语句
14                 printf("CCCC\n");
15         
16             等价于
17             else 
18                 (5 > 10);  //无实际意义的语句
19             printf("CCCC\n");
20         */
21 
22 
23     return 0;
24 }
25 /*
26     总结:
27 if (表达式1)
28     A;
29 else if (表达式2)
30     B;
31 else if (表达式3)
32     C;
33 else (表达式4);  
34     D;
35 
36 这样写语法不会出错,但逻辑上是错误的
37 
38 else (表达式4);  
39     D;
40 等价于
41 else 
42     (表达式4);  
43 D;
44 
45 */

for和if的嵌套使用:求1到100之间所有的能被3整除的数字之和

 1 # include <stdio.h>
 2 
 3 int main(void)
 4 {
 5     int i;
 6     int sum = 0;  // =0不能省
 7 
 8     for (i=3; i<=100; ++i)
 9     {
10         if (i%3 == 0)//如果 i能被3整除
11             sum = sum + i;
12         printf("sum = %d\n", sum);
13     }
14     
15     return 0;
16 }

 

posted @ 2015-05-28 17:21  moon1992  阅读(246)  评论(0编辑  收藏  举报