【黑马程序员】【C语言】选择结构-if语句
来源:互联网 发布:淘宝上怎么做虚拟充值 编辑:程序博客网 时间:2024/05/16 09:56
1.if的第1种结构
if(条件)
{
语句1;
语句2;
......
}
如果if右边小括号()中的条件成立,也就是为“真”时,就会执行大括号{}中的语句;
如果条件为假,就不执行大括号{}中的语句。这里的if是关键字。
C语言规定所有非0值都为“真”
2.if的第2种结构
if(条件1)
{
语句1;
语句2;
......
}
else
{
}
如果if右边小括号()中的条件成立,也就是为“真”时,就会执行大括号{}中的语句,
如果条件为假,就执行else中{}里面的语句。
3.if的第3种结构
if(条件1)
{
语句1;
语句2;
......
}
else if(条件2)
{
}
else if(条件3)
{
}
else if(条件4)
{
}
else
{
}
如果if右边小括号()中的条件1成立,也就是为“真”时,就会执行大括号{}中的语句,
如果条件1不成立就判断条件2成不成立,成立就执行不成立就继续往下走判断条件3,以此类推
如果如果所有的条件为假,就执行else中{}里面的语句。
注意:这么多大括号中,只有1个大括号内的代码会被执行。
4.if的第4种结构
如果if后面大括号{}中只有一行代码时,可以省略大括号。
if (条件)
语句1;
为了保证代码的可读性,不建议省略大括号!!!
5.语句嵌套
if语句内部是可以嵌套其他if语句的,如下面的例子
int a = 7;
if ( a > 0 )
{
printf("a的值大于0\n");
if ( a<9 )
{
printf("a的值小于9");
}
}
6.注意
1》
千万不要在if的小括号后面添加分号
if ( a>8 );
2》
假设本来是想判断a是否为0,那么本应该写if (a == 0),若误写成了if (a = 0),那将是一件非常可怕的事情,因为编译器又不报错,这样的BUG就难找了。因此,像a==0这样的表达式,最好写成0==a,若误写成0=a,编译器会直接报错。
// 不推荐
if (a == 0) {
}
// 推荐
if (0 == a) {
}
3》
在C语言中,可以不保存关系运算的结果。
int a = 10;
a > 10;
a == 0;
这里又是一个陷阱,假设你的本意是想给a赋值为0,那么本应该写a = 0; ,若误写成a == 0; ,那将又是一个非常难找的BUG,因为编译器根本不会报错。
7.练习
1 /* 2 输入一个整数score代表分数,根据分数输出等级(A-E)(用两种方式) 3 A:90~100 4 B:80~89 5 C:70~79 6 D:60~69 7 E:0~60 8 */ 9 10 #include <stdio.h>11 12 int main()13 {14 // 1.提示输入15 printf("请输入分数值:\n");16 17 // 2.接收输入18 int score;19 scanf("%d", &score);20 21 // 3.判断等级 (性能最高)22 if (score>=90 && score<=100) { // [90, 100]23 printf("A\n");24 } else if (score>=80) { // [80, 89]25 printf("B\n");26 } else if (score>=70) { // [70, 79]27 printf("C\n");28 } else if (score>=60) { // [60, 69]29 printf("D\n");30 } else { // (-∞, 59]31 printf("E\n");32 }33 34 /* 性能中等35 if (score>=90 && score<=100) { // [90, 100]36 printf("A\n");37 } else if (score>=80 && score<=89) { // [80, 89]38 printf("B\n");39 } else if (score>=70 && score<=79) { // [70, 79]40 printf("C\n");41 } else if (score>=60 && score<=69) { // [60, 69]42 printf("D\n");43 } else { // (-∞, 59]44 printf("E\n");45 }*/46 47 /* 性能最差48 if (score>=90 && score<=100) { // [90, 100]49 printf("A\n");50 }51 52 if (score>=80 && score<=89) { // [80, 89]53 printf("B\n");54 }55 56 if (score>=70 && score<=79) { // [70, 79]57 printf("C\n");58 }59 60 if (score>=60 && score<=69) { // [60, 69]61 printf("D\n");62 }63 64 if (score<=59) { // (-∞, 59]65 printf("E\n");66 }*/67 return 0;68 }
- 【黑马程序员】【C语言】选择结构-if语句
- 黑马程序员------C语言-----流程控制(选择结构:if,switch)
- 【黑马程序员】【C语言】选择结构-switch语句
- 黑马程序员__选择结构if语句_switch语句
- 黑马程序员---C语言学习笔记之分支结构if语句与switc语句的详解
- C语言的选择结构 (if 语句 和 switch 语句)
- 黑马程序员--C语言-选择结构
- C语言(11)------选择结构if-else语句
- 黑马程序员---c语言中的分支语句 switch与if
- 黑马程序员-C语言选择结构,循环结构
- 黑马程序员--c语言:选择结构、循环结构、函数
- 黑马程序员------C语言-----选择结构和循环结构总结
- 【黑马程序员】C语言基础-分支结构(选择结构)
- 黑马程序员--iOS基础--C语言知识点---选择语句
- 黑马程序员-IOS-C语言基础-选择结构
- 黑马程序员-IOS学习笔记-C语言基础选择结构
- 黑马程序员——c语言学习---选择结构
- 黑马程序员——简析c语言的选择结构
- 【黑马程序员】【C语言】变量
- 视频切割的精确定位问题
- 直接插入排序算法
- 股票的强弱分析 RSI
- Android音乐编程:管理音频焦点
- 【黑马程序员】【C语言】选择结构-if语句
- C语言第一天
- iOS后台模式开发指南
- Windows下载Android源码
- 【黑马程序员】【C语言】选择结构-switch语句
- hdu3672 Caves 树形dp
- 利用Android studio快速搭建安卓开发环境
- [Leetcode]Combination Sum
- having用法