电子学会一级-4逻辑表达式与条件分支

1.4 逻辑表达式与条件分支

09:判断能否被3,5,7整除

题解

多分支条件判断

if(boolean_expression 1){
   // 当布尔表达式 1 为真时执行
}
else if( boolean_expression 2){
   // 当布尔表达式 2 为真时执行
}
else if( boolean_expression 3){
   // 当布尔表达式 3 为真时执行
}
else{
   // 当上面条件都不为真时执行
}
#include<bits/stdc++.h>
using namespace std;

int n;
int main(){
	cin>>n;
	if(n%3==0 && n%5==0 && n%7==0){
		cout<<"3 5 7";
	}else if(n%3==0 && n%5==0){
		cout<<"3 5";
	}else if(n%3==0 && n%7==0){
		cout<<"3 7";
	}else if(n%5==0 && n%7==0){
		cout<<"5 7";
	}else if(n%3==0){
		cout<<"3";
	}else if(n%5==0){
		cout<<"5";
	}else if(n%7==0){
		cout<<"7";
	}else{
		cout<<"n";
	}
	return 0;
}

10:有一门课不及格的学生

题解

多分支条件判断

有一门不及格的学生,可以借助一个变量统计所有一个学生不及格科目数

再判断这个变量是否为1

#include<bits/stdc++.h>
using namespace std;

int chinese,math;
int main(){
	cin>>chinese>>math;
	int ret=0;
	if(chinese<60){
		ret++;
	}
	if(math<60){
		ret++;
	}
	if(ret==1){
		cout<<1;
	}else{
		cout<<0;
	}
	return 0;
}

12:骑车与走路

题解

多分支条件判断

先计算到达时间,时间小的快

再通过多分支判断三种情况

#include<bits/stdc++.h>
using namespace std;

float dis,tBike,tWalk;
int main(){
	cin>>dis;
	tBike = dis/3.0;
	tWalk = (dis-(1.2*50))/1.2;
	if(tBike<tWalk){
		cout<<"Bike";
	}else if(tBike>tWalk){
		cout<<"Walk";
	}else{
		cout<<"All";
	}
	return 0;
}

13:分段函数

题解

多分支条件判断

分段函数

#include<bits/stdc++.h>
using namespace std;
float x,y;
int main(){
	cin>>x;
	if(x>=0 && x<5){
		y=-x+2.5;
	}else if(x<10){
		y=2-1.5*(x-3)*(x-3);
	}else{
		y=x/2-1.5;
	}
	printf("%.3f",y);
	return 0;
}
posted @ 2022-03-04 09:49  new-code  阅读(49)  评论(0编辑  收藏  举报