当前位置:   article > 正文

C语言刷题——lesson6_c语言在一行中输入两个整数,以空格隔开

c语言在一行中输入两个整数,以空格隔开

1. BC52-衡量人体胖瘦程度

题目描述

在计算BMI(BodyMassIndex ,身体质量指数)的案例基础上,判断人体胖瘦程度。BMI中国标准如下表所示。(BMI = 体重的kg数/身高米数的平方)

img

输入描述:

多组输入,每一行包括两个整数,用空格隔开,分别为体重(公斤)和身高(厘米)。
  • 1

输出描述:

针对每行输入,输出为一行,人体胖瘦程度,即分类。
  • 1

示例1

输入

80 170
60 170
90 160
50 185
  • 1
  • 2
  • 3
  • 4

输出

Overweight
Normal
Obese
Underweight
  • 1
  • 2
  • 3
  • 4

参考代码:

#include <stdio.h>
int main()
{
   
	float weight = 0.0;
	float hight = 0.0;
	while (scanf("%f %f", &weight, &hight) != EOF)
	{
   
		float bmi = weight / (hight * hight / 100 / 100);
		if (bmi < 18.5)
		{
   
			printf("Underweight\n");
		}
		else if (bmi >= 18.5 && bmi <= 23.9)
		{
   
			printf("Normal\n");
		}
		else if (bmi > 23.9 && bmi <= 27.9)
		{
   
			printf("Overweight\n");
		}
		else {
   
			printf("Obese\n");
		}
	}
	return 0;
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32

答案解析:

  1. 多组输入

  2. 浮点数除法要保证除号的两端至少有一个浮点数

2. BC53-计算一元二次方程

题目描述

从键盘输入a, b, c的值,编程计算并输出一元二次方程ax2 + bx + c = 0的根,当a = 0时,输出“Not quadratic equation”,当a ≠ 0时,根据△ = b2 - 4ac的三种情况计算并输出方程的根。

输入描述:

多组输入,一行包含三个浮点数a, b, c,以一个空格分隔,表示一元二次方程ax2 + bx + c = 0的系数。

输出描述:

针对每组输入,输出一行,输出一元二次方程ax2 + bx +c = 0的根的情况。

如果a = 0,输出“Not quadratic equation”;

如果a ≠ 0,分三种情况:

△ = 0,则两个实根相等,输出形式为:x1=x2=…。

△ > 0,则两个实根不等,输出形式为:x1=…;x2=…,其中x1 <= x2。

△ < 0,则有两个虚根,则输出:x1=实部-虚部i;x2=实部+虚部i,即x1的虚部系数小于等于x2的虚部系数,实部为0时不可省略。实部= -b / (2a),虚部= sqrt(-△ ) / (2a)

所有实数部分要求精确到小数点后2位,数字、符号之间没有空格。

示例1

输入

2.0 7.0 1.0
  • 1

输出

x1=-3.35;x2=-0.15
  • 1

示例2

输入

0.0 3.0 3.0
  • 1

输出

Not quadratic equation
  • 1

示例3

输入

1 2 1
  • 1

输出

x1=x2=-1.00
  • 1

示例4

输入

2 2 5
  • 1

输出

x1=-0.50-1.50i;x2=-0.50+1.50i
  • 1

示例5

输入

1 0 1
  • 1

输出

x1=0.00-1.00i;x2=0.00+1.00i
  • 1

参考代码:

#include <stdio.h>
#include <math.h>
int main()
{
   
	double a = 0.0;
	double b = 0.0;
	double c = 0.0;
	while (scanf("%lf %lf %lf", &a, &b, &c) != EOF)
	{
   
		if (a == 0)
		{
   
			printf("Not quadratic equation\n");
		}
		else
		{
   
			double disc = b * b - 4 * a * c;
			if (disc == 0.0)
			{
   
				//有两个相等的实根
				if (b == 0 && c == 0)//不然会显示-0.0!
					printf("x1=x2=0.00\n");
				else
					printf("x1=x2=%.2lf\n", (-b) / (2 * a));
			}
			else if (disc > 0.0)
			{
   
				//有两个不相等的实根
				
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/码创造者/article/detail/878021
推荐阅读
相关标签
  

闽ICP备14008679号