C语言第六讲-三种结构-顺序结构选择结构循环结构.
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
三项说明:
• 无论条件是否为真,总要先判断(执行)一遍条件 • 如果语句只有一条,则大括号可以省略 • 关于程序的缩排
选择结构(二)
B、
if(condition){ statements1; } else { statements2; } /*双分支选择结构*/
功能:首先判断condition是否为真, 如果为真,则执行statements1, 否则,执行statements2
?
输入学生百分制成绩,转换成等级制输出 三项说明: •无论条件是否为真,总要先判断(执行)一遍 •如果语句只有一条,则大括号可以省略 •程序的缩排
选择结构(四)
E、switch(常量表达式){ case 常量1: statements1; break; case 常量2: statements2; break; case 常量3: statements3; break; case 常量4: statements4; break; default: statements5; break;
选择结构(一)
选择结构能够使程序根据条件做出相应的判断,使程序选择执行某一段代码块, 它使程序具有了智能
A:
if(condition){ statements; } /*单分支选择结构*/
?
输入年份,判断是否是闰年 输入字符检测
功能:首先判断条件是否为真,如果为真,则执行语句; 否则,什么也不做, 继续往下执行
第六讲 三种结构
目标
掌握条Βιβλιοθήκη Baidu运算符和逗号表达式 顺序结构 选择结构 循环结构
条件运算符
条件运算符是C语言中唯一的一个三目运算符 表达式1?表达式2:表达式3; 例如: int a=2,b; b=a>0?++a:a; printf(“%d\n”,b); b=a<0?++a:a; printf(“%d\n”,b);
? int a=2,b; b=a>0?0:1;
逗号表达式
用逗号连接的表达式称为逗号表达式 逗号表达式的值是最后一个表达式的值 例如:int a=2,b=3,c=4; c=(a+b,b+c,c-a); /*不要给a,b赋值*/ printf(“%d\n”,c); /*c=2*/
顺序结构
顺序结构是程序设计中的三种基本结构之一
for循环的变体形式
1、省略init语句 原因: 初始化已经完成 例如: int a=1,b=0; for(;a<10;a++)b+=a; printf(“%d\n”,b); 注意:分号不能省 3、省略step语句 原因: 控制变量每次变化不一样 例如: int a,b=0; for(a=1;a<10;){ b+=a; if(a==3)a+=2; else a++; } printf(“%d\n”,b); 注意:分号不能省
?
计算5!
推广
计算任意数的阶乘
四项说明:
•无论条件是否为真,总要先判断(执行)一遍
•在跳出循环体之前,还要再执行一遍条件 •如果语句只有一条,则大括号可以省略 •程序的缩排
循环结构(二)
B、 do{ statements; } while(condition);
/*直到型循环*/ 功能:先执行循环体statements, 然后再判断条件; 如果为真,则继续执行; 否则,跳出循环体
例如:#include”stdio.h” void main(){ int a=1234,b; b=a%10*1000; b+=a/10%10*100; b+=a/100%10*10; b+=a/1000; printf(“%d”,b); }
又如: #include”stdio.h” main(){ int i,j,k,n; printf(“‘water flower’number is:”); for(n=100;n<1000;n++){ i=n/100;/*分解出百位*/ j=n/10%10;/*分解出十位*/ k=n%10;/*分解出个位*/ if(i*100+j*10+k==i*i*i+j*j*j+k*k*k){ printf(“%-5d”,n); } } printf(“\n”); }
? 对两个数据按升序排序并输出
三项说明:
输入两个数,输出其中的最大数(最小数)
• 无论条件是否为真,总要先判断(执行)一遍条件 • 如果语句只有一条,则大括号可以省略 • 关于程序的缩排
选择结构(三)
C、 if(condition1){ statements1; } else if(condition2){ statements2; } else if(condition3){ statements3; } else if(condition4){ statements4; } . . . /*至多执行一句*/ D、 if(condition1){ statements1; } else if(condition2){ statements2; } else if(condition3){ statements3; } else if(condition4){ statements4; } else { statements5; } /*必然执行一句*/
注意
例如:
#include”stdio.h” void main(){ int a=1,sum=0; do{ sum+=a; a++; } while(a<101); printf(“The sum is:%d”,b); }
循环结构(三)
C、 for(init;condition;step){ statements; }
功能: 1、首先执行init语句 2、判断condition 3、如果为真,则执行statements;如果为假,则跳出 4、将statements执行完后,再执行step;转第二步
说明:
• 两个分号,在任何情况下,一个都不能少 • 大多数情况下,要避免构成死循环 • 如果语句只有一条,则大括号可以省略 • 程序的缩排
?
1、输入等级制分数,转化为 百分制输出 2、制作一个简单的菜单
}
循环结构(一)
A、 while(condition){ statements; } /*当型循环*/ 求1—100的和 推广 功能:首先判断条件是否为真,如果为真, 则执行语句块,执行完毕后, 再次判断条件是否为真; 如果为假,则跳出循环体。 求数轴任意区间的数的和
• 无论条件是否为真,总要先判断(执行)一遍条件 • 如果语句只有一条,则大括号可以省略 • 关于程序的缩排
选择结构(二)
B、
if(condition){ statements1; } else { statements2; } /*双分支选择结构*/
功能:首先判断condition是否为真, 如果为真,则执行statements1, 否则,执行statements2
?
输入学生百分制成绩,转换成等级制输出 三项说明: •无论条件是否为真,总要先判断(执行)一遍 •如果语句只有一条,则大括号可以省略 •程序的缩排
选择结构(四)
E、switch(常量表达式){ case 常量1: statements1; break; case 常量2: statements2; break; case 常量3: statements3; break; case 常量4: statements4; break; default: statements5; break;
选择结构(一)
选择结构能够使程序根据条件做出相应的判断,使程序选择执行某一段代码块, 它使程序具有了智能
A:
if(condition){ statements; } /*单分支选择结构*/
?
输入年份,判断是否是闰年 输入字符检测
功能:首先判断条件是否为真,如果为真,则执行语句; 否则,什么也不做, 继续往下执行
第六讲 三种结构
目标
掌握条Βιβλιοθήκη Baidu运算符和逗号表达式 顺序结构 选择结构 循环结构
条件运算符
条件运算符是C语言中唯一的一个三目运算符 表达式1?表达式2:表达式3; 例如: int a=2,b; b=a>0?++a:a; printf(“%d\n”,b); b=a<0?++a:a; printf(“%d\n”,b);
? int a=2,b; b=a>0?0:1;
逗号表达式
用逗号连接的表达式称为逗号表达式 逗号表达式的值是最后一个表达式的值 例如:int a=2,b=3,c=4; c=(a+b,b+c,c-a); /*不要给a,b赋值*/ printf(“%d\n”,c); /*c=2*/
顺序结构
顺序结构是程序设计中的三种基本结构之一
for循环的变体形式
1、省略init语句 原因: 初始化已经完成 例如: int a=1,b=0; for(;a<10;a++)b+=a; printf(“%d\n”,b); 注意:分号不能省 3、省略step语句 原因: 控制变量每次变化不一样 例如: int a,b=0; for(a=1;a<10;){ b+=a; if(a==3)a+=2; else a++; } printf(“%d\n”,b); 注意:分号不能省
?
计算5!
推广
计算任意数的阶乘
四项说明:
•无论条件是否为真,总要先判断(执行)一遍
•在跳出循环体之前,还要再执行一遍条件 •如果语句只有一条,则大括号可以省略 •程序的缩排
循环结构(二)
B、 do{ statements; } while(condition);
/*直到型循环*/ 功能:先执行循环体statements, 然后再判断条件; 如果为真,则继续执行; 否则,跳出循环体
例如:#include”stdio.h” void main(){ int a=1234,b; b=a%10*1000; b+=a/10%10*100; b+=a/100%10*10; b+=a/1000; printf(“%d”,b); }
又如: #include”stdio.h” main(){ int i,j,k,n; printf(“‘water flower’number is:”); for(n=100;n<1000;n++){ i=n/100;/*分解出百位*/ j=n/10%10;/*分解出十位*/ k=n%10;/*分解出个位*/ if(i*100+j*10+k==i*i*i+j*j*j+k*k*k){ printf(“%-5d”,n); } } printf(“\n”); }
? 对两个数据按升序排序并输出
三项说明:
输入两个数,输出其中的最大数(最小数)
• 无论条件是否为真,总要先判断(执行)一遍条件 • 如果语句只有一条,则大括号可以省略 • 关于程序的缩排
选择结构(三)
C、 if(condition1){ statements1; } else if(condition2){ statements2; } else if(condition3){ statements3; } else if(condition4){ statements4; } . . . /*至多执行一句*/ D、 if(condition1){ statements1; } else if(condition2){ statements2; } else if(condition3){ statements3; } else if(condition4){ statements4; } else { statements5; } /*必然执行一句*/
注意
例如:
#include”stdio.h” void main(){ int a=1,sum=0; do{ sum+=a; a++; } while(a<101); printf(“The sum is:%d”,b); }
循环结构(三)
C、 for(init;condition;step){ statements; }
功能: 1、首先执行init语句 2、判断condition 3、如果为真,则执行statements;如果为假,则跳出 4、将statements执行完后,再执行step;转第二步
说明:
• 两个分号,在任何情况下,一个都不能少 • 大多数情况下,要避免构成死循环 • 如果语句只有一条,则大括号可以省略 • 程序的缩排
?
1、输入等级制分数,转化为 百分制输出 2、制作一个简单的菜单
}
循环结构(一)
A、 while(condition){ statements; } /*当型循环*/ 求1—100的和 推广 功能:首先判断条件是否为真,如果为真, 则执行语句块,执行完毕后, 再次判断条件是否为真; 如果为假,则跳出循环体。 求数轴任意区间的数的和