上一篇介绍了二维阵列的概念,基本上阵列的使用方法都不会差太多,应该不算太难理解?
这次我们来介绍程序设计中很重要的--「if条件式」!
在日常生活中大家一定都有做过选择,不管是参考商品价格来考虑要不要购买,或是交友软件以条件来筛选交友对象,甚至是考卷不会写於是掷骰子写答案,基本上我们都做过各式各样的选择,但这样的「条件选择」在程序中也同样被需要。
通常我们会依照资料的内容,不管是分数高低、年龄大小、兴趣,来对资料进行不同的处理後输出结果。
所以这时「if & else if & else条件式」就是很好用的语法了,如同以下例子:
if (score == 100){
printf("A++\n");
}
else if (score >= 95){
printf("A+\n");
}
else if (score >= 90){
printf("A\n");
}
else if (score >= 80){
printf("B\n");
}
else if (score >= 70){
printf("C\n");
}
else if (score >= 60){
printf("D\n");
}
else {
printf("F\n");
}
当我们需要依照学生分数,给予不同结果时,我们会设下许多条件就像以上的应用方法,而它的流程则像是这样的:
(1) 层层执行:条件式的规则一定要记住,不一定要钜细靡遗但一定由松而紧,因为程序是由上而下一行行执行的,条件式也是由上而下层层判断的,所以上面已经基本筛选过的情况下,其下的条件不一定要列的极细。
(2) 唯有条件为真(true)时,条件内的区块才被执行
(3) 执行完符合条件的区块後,会跳出整个条件式外,不会再继续执行判断。
(4) if & else if & else?
a. 只有if
if (k == 1){
printf("Bingo!\n");
}
b. 只有if、else
if (k == 1){
printf("Bingo!\n");
}
else {
printf("Noting.\n");
}
c. 只有if、else if
if (k == 2){
printf("Nice!\n");
}
else if (k == 1){
printf("Cool!\n");
}
d. if、else if、if混合
if (k == 3){
printf("Perfect!\n");
}
else if (k == 2){
printf("Great!\n");
}
else if (k == 1){
printf("Cool!\n");
}
else{
printf("miss.\n");
}
e. 使用逻辑:
开头的判断式一定为if,而後面是否有更多条件则看情况使用else if、else,但在使用else的情况该判断式一定压尾,虽然不一定构成语法错误但关乎执行逻辑。
因为else不限定任何条件,且前面有提到只要整个if条件式中,任意条件符合且进入区块执行完,则会直接跳出整个条件式外继续执行,倘若else之後还有else if判断式,则永远不可能被执行。
#include <stdio.h>
#include <string.h>
int main(void)
{
int score;
printf("input your score: %d", &score);
scanf("%d", &score);
if (score == 100){
printf("A++\n");
}
else if (score >= 95){
printf("A+\n");
}
else if (score >= 90){
printf("A\n");
}
else if (score >= 80){
printf("B\n");
}
else if (score >= 70){
printf("C\n");
}
else if (score >= 60){
printf("D\n");
}
else {
printf("F\n");
}
return 0;
}
<<: JS 45 - 是否要离开网站?可能无法储存您所做的变更。
RegScanner 今天来认识看名字应该是注册表扫描?的小工具.... RegScanner 是可...
前言: 经过多次的测试和训练 val_accuracy 在最後几乎都是处於0.6500左右的状态 所...
嗨!昨天做好首页的图片轮播了 可能大家会疑惑 什麽时候才会串接api? 其实我个人习惯是把前端页面都...
hi!昨天说完mapping大概的概念之後,今天就来实际做做看吧! 这次是参考这个连结的程序码进行...