沈阳航空航天大学 10/12 工程训练试题
目录
- 求三角形面积
- 找出能够组成的最大三位数
- 计算天数
- 一个简单计算器
- 求两个正整数的最小公倍数
1.求三角形面积
【问题描述】输入任意三角形的三边长,不考虑构不成三角形情况,求三角形面积。
求三角形面积的公式为:
area=sqrt(s(s-a)(s-b)(s-c)), 其中 sqrt 为开根号函数,s=(a+b+c)/2。
【输入形式】输入三角形的三条边长,以回车结束。
【输出形式】三角形面积,保留小数点后2位。
【样例输入】3.1 4.2 5.17
【样例输出】6.51
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<math.h>
int main()
{
float a, b, c, s, area;
scanf("%f %f %f", &a, &b, &c);
s = (a + b + c) / 2;
area = sqrt(s * (s - a) * (s - b) * (s - c));
printf("%.2f\n", area);
return 0;
}
//SAU-计科2304-NineSense
//仅供参考 学习还需自己努力
2.找出能够组成的最大三位数
【问题描述】输入三个正整数,这三个整数数值范围在0到9之间,且互不相同,请找出由这三个整数组成的最大三位整数。
【输入形式】输入三个整数,不考虑输入错误的情况,数据之间用单个空格隔开。
【输出形式】输出组成的最大三位整数。
【样例输入】1 2 3
【样例输出】321
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int a, b, c, m;
scanf("%d %d %d", &a, &b, &c);
if (a < b)
{
m = a;
a = b;
b = m;
}
if (a < c)
{
m = a;
a = c;
c = m;
}
if (b < c)
{
m = b;
b = c;
c = m;
}
printf("%d%d%d", a, b, c);
return 0;
}
//SAU-计科2304-NineSense
//仅供参考 学习还需自己努力
3.计算天数
【问题描述】输入年、月、日,用程序计算一下该日期是这一年的第几天。
【输入形式】输入三个整数,分别表示年、月、日,数与数之间用空格隔开。
【输出形式】输出计算的结果
【样例输入】2015 2 1
【样例输出】32
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main()
{
int days[12] = { 31,28,31,30,31,30,31,31,30,31,30,31 };
int m, sum, year, mouth, day;
sum = 0;
scanf("%d %d %d", &year, &mouth, &day);
if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0))
days[1] = 29;
for (m = 1; m < mouth; m++)
sum = sum + days[m - 1];
sum = sum + day;
printf("%d", sum);
return 0;
}
//SAU-计科2304-NineSense
//仅供参考 学习还需自己努力
4.一个简单计算器
【问题描述】一个简单计算器,根据用户输入的操作数和操作类型进行算术运算,最后打印计算结果。
【输入形式】2*2
【输出形式】4.000000
【样例输入】输入数据中没有空格
#include<stdio.h>
int main()
{
float x, y, z = 0;
char n;
scanf("%f%c%f", &x, &n, &y);
switch (n)
{
case '+': z = x + y; break;
case '-': z = x - y; break;
case '*': z = x * y; break;
case '/': z = x / y; break;
}
printf("%f", z);
return 0;
}
//SAU-计科2304-NineSense
//仅供参考 学习还需自己努力
5.求两个正整数的最小公倍数
【问题描述】输入两个正整数,编写函数实现求这两个正整数的最小公倍数。
【输入形式】输入两个正整数。
【输出形式】输出最小公倍数。
【样例输入】2 4
【样例输出】4
【样例输入】12 23
【样例输出】276
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
int main()
{
int lcm,m,n;
scanf ("%d%d",&m,&n);
int t;
if (m < n)
{
t = m;
m = n;
n = t;
}
for (t = m; t <= m * n; t += m)
{
if (t % n == 0)
break;
}
lcm = t;
printf("%d",lcm);
return 0;
}
//SAU-计科2304-NineSense
//仅供参考 学习还需自己努力