🔥个人主页:@草莓熊Lotso
🎬作者简介:C++研发方向学习者
📖个人专栏: 《C语言》 《数据结构与算法》《C语言刷题集》
⭐️人生格言:生活是默默的坚持,毅力是永久的享受。
前言:本篇博客是刷题集中的第三篇,题目都是一些比较基础的IO型题目,适合C语言初学者。特别声明一下,这里提供的答案和思路都并非唯一,仅供参考。
目录
1.计算体重指数
题目链接:计算体重指数__牛客网
题目描述:
题目示例:
代码演示:
#include <stdio.h>
int main()
{
int k=0;
int c=0;
scanf("%d %d",&k,&c);
float c_m=c/100.0;
float bmi=k/(c_m*c_m);
printf("%.2f",bmi);
return 0;
}
题目解析:
- 本题需要注意题目所给到的体重指数计算方法以及单位转换的问题
- 还有 / 号,左右两边的操作数必须有一个是浮点数,结果才会是浮点数
- 再就是直接按要求计算就行了,记得保留两位小数
2. 计算三角形的周长和面积
题目链接:计算三角形的周长和面积_牛客题霸_牛客网
题目描述:
题目示例:
代码演示:
#include <stdio.h>
#include<math.h>
int main()
{
int a=0;
int b=0;
int c=0;
scanf("%d %d %d",&a,&b,&c);
double circumference=a+b+c;
double p=(a+b+c)/2.0;
double area=sqrt(p*(p-a)*(p-b)*(p-c));
printf("circumference=%.2lf area=%.2lf",circumference,area);
}
题目解析:
- 这一题计算周长很简单,3个边相加就行
- 如果需要计算面积的话就得借助海伦公式了(直接点击,可以跳转到相关界面了解一下)
- 知道公式之后,直接代入就可以了
3.计算球体的体积
题目链接:计算球体的体积_牛客题霸_牛客网
题目描述:
题目描述:
代码演示:
#include <stdio.h>
int main()
{
double r=0.0;
double pai=3.1415926;
scanf("%lf",&r);
double v=(4.0/3.0)*pai*(r*r*r);
printf("%.3lf",v);
return 0;
}
题目解析:
- 这题照着公式写代码就可以了,相关信息题目都给了
- 注意这里用float类型精度是不够的,得用double类型,对浮点数在内存中的存储感兴趣的可以看看下面这篇博客
4.成绩输入输出
题目链接:成绩输入输出_牛客题霸_牛客网
题目描述:
题目示例:
代码演示:
#include <stdio.h>
int main()
{
int score1=0;
int score2=0;
int score3=0;
scanf("%d %d %d",&score1,&score2,&score3);
printf("score1=%d,score2=%d,score3=%d",score1,score2,score3);
}
题目解析:
- 这题很简单,根据题目要求输入输出就行了
- 这里也是可以用数组存起来然后输入输出的,大家可以自己试一下
5. 变种水仙花数
题目链接:变种水仙花_牛客题霸_牛客网
题目描述:
代码演示:
#include <stdio.h>
int main()
{
int i=0;
for(i=10000;i<=99999;i++)
{
int n=0;
int sum=0;
int temp=i;
for(n=10000;n>=10;n/=10)
{
sum+=(temp/n)*(temp%n);
}
if(sum==i)
{
printf("%d ",i);
}
}
return 0;
}
题目解析:
- 我们分析题目可以看出,变种水仙花数求和的每一项都是对同一个数(10/100/1000……)取模或者整除取商
- 这样的话,我们只要生成10,100……这些数字,再用被判断的数字对它们取模或者整除取商,乘起来,然后相加计算和就行
- 最后得出的和sum如果等于被判断数字本身,那就是变种水仙花数了
6. kiki算数
题目链接:kiki算数_牛客题霸_牛客网
题目描述:
题目示例:
代码演示:
#include <stdio.h>
int main()
{
int a=0;
int b=0;
scanf("%d %d",&a,&b);
int c=(a+b)%100;
printf("%d",c);
return 0;
}
题目解析:
- 这题也比较简单,先计算出a+b的值,然后根据题目要求超过100取最后两位的话直接模100就行了,而且就算没超过模上100也不会有影响
7.浮点数的个位数字
题目链接:浮点数的个位数字_牛客题霸_牛客网
题目描述:
题目示例:
代码演示:
#include <stdio.h>
int main()
{
double a=0;
scanf("%lf",&a);
int n=(int)a;
printf("%d",n%10);
return 0;
}
题目解析:
- 这题首先就是输入之后先想办法把浮点数的小数位去掉,直接定义一个int类型的变量n,再把a强制类型转换为int类型,这里就剩整数位了
- 后面就很简单了,模个10就能得出对应的个位数
8. 你能活多少秒
题目链接:你能活多少秒_牛客题霸_牛客网
题目描述:
题目示例:
代码演示:
#include <stdio.h>
#include<math.h>
int main()
{
int age=0;
int year_s=3.156*pow(10,7);
scanf("%d",&age);
long long live=age*year_s;
printf("%lld",live);
return 0;
}
题目解析:
- 这题比较简单,根据题目要求计算就行了,用你的年龄乘以一年多少秒
- 这里秒后面有个10的7次方,可以用pow函数(记得带对应头文件),也可以用E7来表示
往期回顾:
结语: 本篇文章就到此结束了,C语言刷题集专栏中的第三篇的题目比前面两篇要难一点,涉及到了一些小的知识点,适合刚学完C语言的朋友们拿来练手,巩固知识点,提升自己的代码能力。