C语言之数学运算练习题
第1关:能否构成三角形
100
- 任务要求
- 参考答案
- 评论5
任务描述
本关需要完成判断三个边长能否构成三角形的小程序。
相关知识
任意两边之和大于第三边即可构成三角形。
关系运算符
==
检查两个操作数的值是否相等,如果相等则条件为真;
!=
检查两个操作数的值是否相等,如果不相等则条件为真;
>
检查左操作数的值是否大于右操作数的值,如果是则条件为真;
<
检查左操作数的值是否小于右操作数的值,如果是则条件为真;
>=
检查左操作数的值是否大于或等于右操作数的值,如果是则条件为真;
<=
检查左操作数的值是否小于或等于右操作数的值,如果是则条件为真。
编程要求
请仔细阅读右侧代码,根据方法内的提示,在Begin - End
区域内进行代码补充,具体任务如下:
输入三个数,判断这三个数能否构成三角形的三条边。
要求:
输出1
表示能够构成一个三角形。
输出0
表示不能构成一个三角形。
测试说明:
测试输入:1.0 2.0 3.0
。 预期输出:0
。
注意:提交代码时不能有其他多余的输入输出语句,不要输出其他多余信息。
测试说明
平台会对您的代码进行运行测试,如果实际输出与预期输出相同,则算通关。
验货啦,验货啦,开始你的任务吧!
#include<stdio.h>
int main()
{
/*********begin*********/
double a,b,c;
scanf("%lf %lf %lf",&a,&b,&c);
if(a+b>c&&a+c>b&&b+c>a){
printf("1");
}else{
printf("0");
}
/*********end*********/
}
第2关:三角形的面积
100
- 任务要求
- 参考答案
- 评论5
任务描述
本关你需要根据已知的三边完成计算三角形面积的小程序。
相关知识
海伦公式求面积
已知三角形的三边:a
,b
,c
,半周长 p=1/2(a+b+c)
,则三角形的面积公式s
为:
s=sqrt(p*(p-a)*(p-b)*(p-c))
sqrt
C
库函数 double sqrt(double x)
返回x
的平方根。
参数:
- x 表示浮点值。
返回值:
- 返回
x
的平方根。
例如:
{
printf("Square root of %lf is %lf
", 16.0, sqrt(16.0) );
printf("Square root of %lf is %lf
", 5.0, sqrt(5.0) );
return(0);
}
运行上面的程序,这将产生以下结果:
Square root of 16.000000 is 4.000000
Square root of 5.000000 is 2.236068
编程要求
请仔细阅读右侧代码,根据方法内的提示,在Begin - End
区域内进行代码补充,具体任务如下:
输入为三角形的三边(double
,保证输入的数据能构成三角形),请输出三角形的面积,并保留2
位小数。
注意:
-
先判断是否可以构成三角形,即任意两边之和大于第三边,可以构成三角形情况下再计算,可以增加严谨性,提高程序健壮性;
-
若不能构成三角形,则输出“无法构成三角形”。
测试输入:3 4 5
。
预期输出:面积:6.00
。
测试输入:8 12 20
。
预期输出:无法构成三角形
。
测试说明
平台会对您的代码进行运行测试,如果实际输出与预期输出相同,则算通关。
验货啦,验货啦,开始你的任务吧!
#include<stdio.h>
#include<math.h>
int main()
{
/********begin*********/
int a,b,c;
float p,s;
scanf("%d %d %d",&a,&b,&c);
if(a+b>c&&a+c>b&&b+c>a){
p=(float)1/2*(a+b+c);
s=(float)sqrt(p*(p-a)*(p-b)*(p-c));
printf("面积:%.2f",s);
}else{
printf("无法构成三角形");
}
/*********end*********/
return 0;
}
第3关:奇数,偶数,素数
100
- 任务要求
- 参考答案
- 评论5
任务描述
本关需要完成判断一个整数是奇数、偶数或是素数的小程序。
相关知识
奇数
奇数,又称单数,整数中不能被2
整除的数是奇数,奇数的个位为1
,3
,5
,7
,9
。奇数可用2k
+1表示,这里k
就是整数。
偶数
偶数,又称双数,整数中,能被2
整除的数是偶数,偶数的个位为2
,4
,6
,8
,0
。偶数可用2k
表示,这里k
就是整数。
素数
质数又称素数。一个大于1
的自然数,除了1
和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数。
编程要求
请仔细阅读右侧代码,根据方法内的提示,在Begin - End
区域内进行代码补充,具体任务如下:
任意给一个整数,判断该数是奇数还是偶数,是偶数的话直接输出;若是大于1
的奇数,判其是否是素数,是素数的话输出素数,否则输出奇数。
举例说明: 测试输入:8
。 预期输出:偶数
。
测试输入:9
。 预期输出:奇数
。
测试输入:7
。 预期输出:素数
。
测试说明
平台会对您的代码进行运行测试,如果实际输出与预期输出相同,则算通关。
验货啦,验货啦,开始你的任务吧!
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
/*********begin*********/
int n,i,isPrime;
scanf("%d",&n);
if(n%2==0){
printf("偶数");
}else{
if(n>1){
for(i=2;i<n;i++){
isPrime=1;
if(n%i==0){
isPrime=0;
break;
}
}
if(isPrime){
printf("素数");
}else{
printf("奇数");
}
}else{
printf("奇数");
}
}
/*********end*********/
return 0;
}
第4关:函数sqrt的应用
100
- 任务要求
- 参考答案
- 评论5
任务描述
本关请完成计算指定公式输出结果的小程序。
相关知识
sqrt
功能:计算一个非负实数的平方根。
比如:计算16
的平方根,sqrt(16)
就可以了。
编程要求
请仔细阅读右侧代码,根据方法内的提示,在Begin - End
区域内进行代码补充,具体任务如下:
输入a
和b
的值,根据公式计算出最终的X
的值。其中 a≠b
详情:
测试举例:
测试输入:20.6 10.2
。 预期输出:X=2.14
。
测试说明
平台会对您的代码进行运行测试,如果实际输出与预期输出相同,则算通关。
验货啦,验货啦,开始你的任务吧!
#include<stdio.h>
#include<math.h>
int main()
{
/*********begin*********/
float a,b,X;
scanf("%f %f",&a,&b);
X=(b+sqrt(pow(b,2)+2*a))/(a-b);
printf("X=%.2f",X);
/*********end*********/
}
相关文章
- iOS开发之SQLite--C语言接口规范(三)——Binding Values To Prepared Statements
- 链表详解(C语言)
- C语言/C++常见习题问答集锦(六十八) 之二叉搜索树揭秘
- C语言/C++常见习题问答集锦(一)
- [C语言]进阶|数据类型: 整数, 浮点, 逻辑, 类型转换和条件运算
- ZZNUOJ_C语言1075:聚餐人数统计(完整代码)
- ZZNUOJ_C语言1115:数组最小值(完整代码)
- ZZNUOJ_用C语言编写程序实现1200:数组的距离(附完整源码)
- 【C语言项目设计】小学生系统测验
- 大数乘法(C语言实现)
- (char*)&x C语言中的&和*的详解
- 【重温经典C语言】~c语言中%x、%c、%d、%x等等等、c语言取地址符&的作用、C语言中的 联合体