代码都是按照顺序来运行的,这个我们称为顺序结构。
在这其中如果我们要做如果.......否则....的语句来进行条件判断(if...else...)
下面来看个例子
#include <stdio.h>
int main()
{int age;
printf("请输入年龄:");
scanf("%d",&age);
if(age<18)
{printf("对不起您是未成年用户不可以观看");
}
else{printf("尊敬的用户欢迎使用");
}
return 0;
}
运行结果
以上是输入小于18的运行结果
以上是输入大于18的运行结果
在用scanf的时候一定要有&这个取地址运算符
当然在这个简单的小程序里面,有很多我们需要注意的地方:
1.a=b与a==b不一样,a=b表示的是赋值而a==b表示的是a=b的时候显示真否则返回假(在判断语句中使用)
2.在if 跟else后边不加;
3.在scanf使用之前先要printf输出提示输入的东西
当然在使用if跟else的时候也可以单独使用if来进行运行,代码如下图
#include <stdio.h>
int main()
{int a;
int b;
int max;
printf("请输入a=\n");
scanf("%d",&a);
printf("请输入b=\n");
scanf("%d",&b);
max=a;//假设最大值是a
if(b>a) max=b;//如果b>a则最大值更改为b
printf("%d和%d最大值是:%d\n",a,b,max) ;
return 0;
}
在这段代码里面先把输入a的值赋给max,然后判断a跟b的大小如果a>b则输出a,否则就输出b
如果要使用多个判断语句使用方法如下:
if(判断条件1){
语句块1
} else if(判断条件2){
语句块2
}else if(判断条件3){
语句块3
}else if(判断条件m){
语句块m
}else{
语句块n
}
举个例子,写一段代码如下(先判断用户是否成年然后再判断是否是会员在这里定义一个会员密钥来判断是否是会员8008)
#include <stdio.h>
int main()
{int age;
int vip;
printf("请输入你的年龄",age);
scanf("%d",&age);
if(age<18)
{printf("对不起您不可以观看");}
else
printf("请输入四位会员密钥");
scanf("%d",&vip);
if(vip==8008)
{printf("尊敬的会员欢迎观看");}
else
{printf("对不起,请您购买密钥后观看");}
return 0;}
三种运行情况如下图
在使用 if 语句时还应注意以下两点:
- 在 if 语句中,判断条件必须用括号括起来。
- 语句块由
{ }
包围,但要注意的是在}
之后不需要再加分号;
(当然加上也没错) - 使用if else的时候可以嵌套使用(C语言规定,else 总是与它前面最近的 if 配对的
- 下面看一个举例
#include <stdio.h> int main() { int a,b; printf("请输入a=\n"); scanf("%d",&a); printf("请输入b=\n"); scanf("%d",&b); if(a!=b)//!=表示不等于 { if(a>b) printf("a>b\n"); else printf("a<b\n"); } else {printf("a=b\n"); } return 0; }
运行图片如下