深圳大学计软《程序设计基础》课后实验三:选择结构

A. 最最最简单的计算器(选择)

题目描述

一个最简单的计算器,支持+, -, *, / 四种运算。仅需考虑输入输出为整数的情况,数据和运算结果不会超过int表示的范围。

输入

输入只有一行,共有三个参数,其中第1、2个参数为整数,第3个参数为操作符(+,-,*,/)。

输出

输出只有一行,一个整数,为运算结果。然而:

  1. 如果出现除数为0的情况,则输出:Divided by zero!
  2. 如果出现无效的操作符(即不为 +, -, *, / 之一),则输出:Invalid operator!

输入样例1

1 2 +

输出样例1

3

AC代码

#include<stdio.h>
int main()
{
    
    
	int a,b;
	int c;
	char z;
	scanf("%d%d %c",&a,&b,&z);
	if(z=='+')
	{
    
    
		c=a+b;
		printf("%d",c);
	}
	else if(z=='-')
	{
    
    
		c=a-b;
		printf("%d",c);
	}
	else if(z=='*')
	{
    
    
		c=a*b;
		printf("%d",c);
	}
	else if(z=='/')
	{
    
    
		if(b==0)
			printf("Divided by zero!");
		else
		{
    
    
		c=a/b;
		printf("%d",c);
		}
	}
	else
		printf("Invalid operator!");
	return 0;
}

B. 收集瓶盖赢大奖(选择)

题目描述

某饮料公司最近推出了一个“收集瓶盖赢大奖”的活动:如果你拥有10个印有“幸运”、或20个印有“鼓励”的瓶盖,就可以兑换一个神秘大奖。

现分别给出你拥有的印有“幸运”和“鼓励”的瓶盖数,判断是否可以去兑换大奖

输入

一行,包含两个整数,分别是印有“幸运”和“鼓励”的瓶盖数,用一个空格隔开

输出

一行。若可以兑换大奖,输出1,否则输出0。

输入样例1

11 19

输出样例1

1

扫描二维码关注公众号,回复: 17289593 查看本文章

AC代码

#include<stdio.h>
int main()
{
    
    
	int a,b;
	scanf("%d%d",&a,&b);
	if(a>=10||b>=20)
		printf("1");
	else
		printf("0");
	return 0;
}

C. 算命先生

题目描述

最近荷黛缘小姐姐喜欢上了一个男生叫彭于晏,但是不知道自己和人家有没有缘分,现在她请你来为她算生辰八字。

我们知道两个人是否有缘分是把两个人的年月日加起来看他们是否有相同的奇偶性。

输入

两行输入。

第一行是荷黛缘小姐姐的生辰

第二行是彭于晏的生辰

输出

如果两个人有缘分就输出“YES”(不包含双引号)

否则输出“NO”

输入样例1

1/1/1
2/2/2

输出样例1

NO

输入样例2

2019/12/01
2017/2/3

输出样例2

YES

AC代码

#include<stdio.h>
int main()
{
    
    
	int y1,y2,m1,m2,d1,d2;
	int sum1,sum2;
	scanf("%d/%d/%d",&y1,&m1,&d1);
	scanf("%d/%d/%d",&y2,&m2,&d2);
	sum1=y1+m1+d1;
	sum2=y2+m2+d2;
	if((sum1%2)==(sum2%2))
		printf("YES");
	else
		printf("NO");
	return 0;
 }

D. 计算邮资(选择)

题目描述

根据邮件的重量和用户是否选择加急计算邮费。计算规则:重量在1000克以内(包括1000克), 基本费8元。超过1000克的部分,每500克加收超重费4元,不足500克部分按500克计算;如果用户选择加急,多收5元。

输入

输入一行,包含整数和一个字符,以一个空格分开,分别表示重量(单位为克)和是否加急。如果字符是y,说明选择加急;如果字符是n,说明不加急。

输出

输出一行,包含一个整数,表示邮费。

输入样例1

1200 y

输出样例1

17

AC代码

#include<stdio.h>
int main()
{
    
    
	int w;
	int m;
	char a;
	scanf("%d %c",&w,&a);
	if(w<=1000)
		m=8;
	else
	{
    
    
		int i=(w-1000)%500;
		if(i==0)
			m=8+(w-1000)/500*4;
		else
			m=8+(w-1000)/500*4+4;
	}
	if(a=='y')
		m=m+5;
	printf("%d",m);
	return 0;
}

E. 骑车与走路(选择)

题目描述

在深大校园里,没有自行车,上课办事会很不方便。但实际上,并非去办任何事情都是骑车快,因为骑车总要找车、开锁、停车、锁车等,这要耽误一些时间。假设找到自行车,开锁并车上自行车的时间为27秒,停车锁车的时间为23秒。步行每秒行走1.2米,骑车每秒行走3.0米。请判断走不同的距离去办事,是骑车快还是走路快。

输入

输入一行,包含一个数(浮点数),表示一次办事要行走的距离,单位为米。

输出

输出一行,如果骑车快,输出一行"Bike";如果走路快,输出一行"Walk";如果一样快,输出一行"All"。

输入样例1

120

输出样例1

Bike

AC代码

#include<stdio.h>

int main()
{
    
    
	float n;	
	scanf("%f",&n);
	double w, b;	
	w = n / 1.2;
	b = n / 3.0 + 23 + 27;
	if (w > b)	
	{
    
    
		printf("Bike");
	}
	else if (w == b)	
	{
    
    
		printf("All");
	}
	else    
	{
    
    
		printf("Walk");
	}
	return 0;
}

猜你喜欢

转载自blog.csdn.net/weixin_46655675/article/details/134114159