欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 房产 > 建筑 > 全国青少年信息学奥林匹克竞赛(信奥赛)备考实战之分支结构(多分支结构)

全国青少年信息学奥林匹克竞赛(信奥赛)备考实战之分支结构(多分支结构)

2025/5/16 17:36:39 来源:https://blog.csdn.net/ALISHENGYA/article/details/144619145  浏览:    关键词:全国青少年信息学奥林匹克竞赛(信奥赛)备考实战之分支结构(多分支结构)

在C++中,单分支结构(if语句)通常用于简单的条件判断,只有if条件为真的情况下执行花括号里面语句块;双分支结构(if-else)允许程序在if条件为真时执行if后面的语句块,在if条件为假的情况下,执行else后面的语句块;在更复杂的情况下,可能需要根据多个条件来决定哪一段代码,这时就需要扩展if-else语句,使用多个else if块来实现多分支结构,多分支结构功能强大,具体格式如下:


if(condition1){//如果condition1为真,则执行这里的代码语句1;……
}else if(condition2){//如果condition1为假,condition2为真,则执行这里的代码语句2;……
}else if(condition3){//如果condition1、condition2为假,condition3为真,则执行这里的代码语句3;……
}
……
else if(conditionn){//如果condition1、condition2、……conditionn-1为假,conditionn为真,则执行这里的代码语句n;……
}else{//如果condition1、condition2、……conditionn为假,则执行这里的代码语句n+1;……
}

在多分支结构中,各个表达式按顺序求值,直到找到某个表达式的值为真,则执行与其相关的语句,并由此结束整个if语句,即跳过后续所有的条件检查。需要注意的是"else if"表达的情况是指排除在它之前条件表达式的情况后,再判断当前的表达式是否成立。

实战训练1—将某一门课程的成绩转换为等级输出

问题描述:

一个学生的成绩如果大于等于90,程序会输出“优秀”,如果成绩大于等于80小于90,程序输出“良好”,如果大于等于70小于80,程序输出“中等”,如果大于等于60小于70,程序输出“及格”,如果小于60,程序输出“不及格”。

输入格式:

一行一个整数score,0<=score<=100

输出格式:

输出成绩对应的等级。

输入输出样例:

输入样例1

输出样例1

95

优秀

输入样例2

输出样例2

89

良好

输入样例3

输出样例3

73

中等

输入样例4

输出样例4

60

及格

输入样例5

输出样例5

56

不及格

问题分析:

根据题目需要首先定义一个变量score,并从键盘上输入score的值,针对score的取值范围,需要多个条件来判断并执行对应的语句,这时需要if-else if多分支结构来处理,具体程序如下:


#include<bits/stdc++.h>
using namespace std;
int main() {int score;//定义成绩变量score cin>>score;//输入变量score的值 if(score>=90){ //成绩的范围:90<=score<=100 cout<<"优秀"<<endl; }else if(score>=80){//成绩的范围:80<=score<90cout<<"良好"<<endl; }else if(score>=70){//成绩的范围:70<=score<80cout<<"中等"<<endl;}else if(score>=60){//成绩的范围:60<=score<70cout<<"及格"<<endl;}else{//成绩的范围:score<60cout<<"不及格"<<endl;}return 0;
}

实战训练2—整数比较大小

问题描述:

输入两个整数,比较它们的大小

输入格式:

一行包含两个整数a和b,中间用单个空格隔开。

输出格式:

一个字符。

若a 的值大于 b的值,输出 > ;若a的值等于b的值,输出 = ;若a的值小于b的值,输出 < 。

输入及输出样例:

输入样例1

输出样例2

1000 1000

=

输入样例2

输出样例2

-124  2

<

输入样例3

输出样例3

500 240 

>

具体程序如下:


#include<bits/stdc++.h>
using namespace std;
int main() {int a,b;//定义变量a和b cin>>a>>b;//输入变量a和b的值 if(a>b){//判断a是否大于b cout<<'>'<<endl;}else if(a==b){//判断a和b是否相等 cout<<'='<<endl;}else{//否则a小于b cout<<'<'<<endl;}return 0;
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词