C语言程序基础实验2——求三个数的最大值、百分值转换成其相应的等级、三个数排序、分段函数、输入0~6的数字,输出对应星期的英文、实现简单数值运算


知识摘要

  1. switch函数的用法(case、break、default)
  2. %.2f 输出小数点后2位(详见题目4)

题目1:选择结构习题:求三个数的最大值

内容详情

题目1:
输入提示:输入仅一行,输入3个整数
输出提示:输出仅一行,输出3个数中的最大值
输入样本:3 2 6
输出样本:max=6

程序源码

#include <stdio.h>
#include <stdlib.h>
int main()
{ 
	int a,b,c,t,max;
	scanf("%d%d%d",&a,&b,&c);
	if (a > b)
		t = a;
	else
		t = b;
	if (t > c)
		max = t;
	else
		max = c;
	printf("max=%d\n",max);
	return 0;
} 

题目2:选择结构习题:百分值转换成其相应的等级

内容详情

题目2:
输入提示:输入仅一行,输入一个百分制的整数分数
输出提示:输出仅一行,输出其对应的字符信息
输入样本:85
输出样本:good

程序源码

#include <stdio.h>
#include <stdlib.h>
int main()
{ 
	int score;
	scanf("%d",&score);
		if (score == 100)
	printf("excellent");
	else
		switch ((int)score / 10)	//(int)强制转换为整型
		{
		case 9 : printf("excellent");break;
		case 8 : printf("good");break;
		case 7 : printf("middle");break;
		case 6 : printf("pass");break;
		default : printf("fail");break;
		}
	return 0 ;
} 

题目3:选择结构习题:三个数排序

内容详情

题目3:
输入提示:输入仅一行,输入三个整数。
输出提示:输出仅一行,按从大到小顺序输出这三个整数。
输入样本:2 4 3
输出样本:4>3>2

程序源码

#include <stdio.h>
#include <stdlib.h>
int main()
{ 
	int a,b,c,t;
	scanf("%d%d%d",&a,&b,&c);
	if (a < b)
	{
		t = b; b = a; a = t;
	}
	if(a < c)
	{
		t = c; c = a;a = t;
	}
	if (c > b)
	{
		t = c; c = b; b = t;
	}
	printf("%d>%d>%d",a,b,c);
	return 0;
} 

题目4:选择结构习题:分段函数

内容详情

题目4:
输入提示:输入仅一行,输入一个数值。
输出提示:输出仅一行,输出相应的数据值(小数点后保留2位有效位)或no definition(两单词中间有一空格)。
输入样本:1
输出样本:y=0.84

程序源码

#include <stdio.h>
#include <stdlib.h>
int main()
{ 
	float x,y;
	scanf("%f",&x);
	if (x < 0||x>= 40)
		printf("no definition");
	else
		{
			switch ((int)x/10)
			{
				case 0 : y = sin(x);break;
				case 1 : y = cos(x);break;
				case 2 : y = exp(x) - 1;break;
				case 3 : y = log(x + 1);break;
			}
			printf("y=%.2f",y);
		}
	return 0;
} 

题目5:选择结构习题:输入0~6的数字,输出对应星期的英文

内容详情

题目5:
输入提示:输入任意一个整数。
输出提示:如果输入的整数在0~6之间,将输出对应星期的英文,否则输出
“Error”。
输入样本:0
输出样本:Sunday

程序源码

#include <stdio.h>
#include <stdlib.h>
int main()
{ 
	int x;
	scanf("%d",&x);
	if (0<=x&&x<=6)
	{
		switch (x)
		{
			case 0 : printf("Sunday");break;
			case 1 : printf("Monday");break;
			case 2 : printf("Tuesday");break;
			case 3 : printf("Wednesday");break;
			case 4 : printf("Thursday");break;
			case 5 : printf("Friday");break;
			case 6 : printf("Saturday");break;
		}
	}
	else
		printf("Error");
	return 0;
} 

题目6:选择结构习题:实现简单数值运算

内容详情

题目6:
输入提示:输入有两行,第一行为两个实数,两个实数之间用逗号分隔;第二行输入一个运算符
输出提示:输出仅一行,输出相应的运算式及计算结果,或输出input error(两单词中间有一空格)。
输入样本:11,5.9
+
输出样本:11.00+5.90=16.90

程序源码

#include <stdio.h>
#include <stdlib.h>
int main()
{ 
	float a,b,c;
	char x;
	scanf("%f,%f\n",&a,&b);
	scanf("%c",&x);
	if(x =='/' && b == 0)
		printf("input error");
	else if (x != '+' && x != '-' && x != '*' && x != '/')
		printf("input error");
	else
		{
			switch (x)
			{
				case '+' : c = a + b;break;
				case '-' : c = a - b ;break;
				case '*' : c = a * b ;break;
				case '/' : c = a / b ;break;
			}
			printf("%.2f%c%.2f=%.2f",a,x,b,c);
		}
	return 0;
} 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值