【C语言刷题】牛客网编程入门130题--精选题目(编程初学者赶紧进来!!!)

牛客编程入门130题–精选(一)

前言

在这里插入图片描述

 

 

  以下题目来自牛客网的编程入门训练题库(<—),题库适合大一大二学生,题目有难有易,主要偏向入门。

  不过里面还是有很多不错的题目,节约时间,没时间刷完的同学可以点击以下OJ链接,以下题目是博主做完亲选出的题目。

  有些题目提供多种解法,希望帮助到你。以下题目博主均用C语言解题,大家也可以模仿思路使用其他编程语言。

 

 

在这里插入图片描述


 

题目OJ链接

  1. T19.反向输出数字

  2. T22.你能活多少秒

  3. T26.计算三角形的面积

  4. T27.计算球体体积

  5. T38.变种水仙花

  6. T46.判断原因还是辅音

  7. T51.判断三角形

  8. T53.二元一次方程

  9. T68.打印X

  10. T78.筛选法求素数

     

1.反向输出数字

T19.反向输出数字

题目描述

将一个四位数,反向输出。

输出描述:

针对每组输入,反向输出对应四位数。

示例:

输入:

1234

输出:

4321

 

思路一 – 递归思路

例如:逆序打印1234可分为:打印个位4 + 逆序打印123

即先打印个位部分,再打印逆序打印除去个位的数字

参考代码:

#include <stdio.h>

void ReversePrint(int n)
{
   
	if(n > 9)//如果是两位数
    {
   
        printf("%d",n%10);
        ReversePrint(n / 10);
    }
    else
    {
   
        printf("%d",n);
    }
}

int main()
{
   
	int num = 0;
    while(~scanf("%d", &num))//针对多组测试用例
    {
   
        ReversePrint(num);
    }
	return 0;
}

 

思路二:

迭代思想(非递归,循环)

例如:1234,每次取出他的个位进行打印即可

而取出个位的操作:%10/10即可完成

#include<stdio.h>

int main()
{
   
	int n = 0;
	while (~scanf("%d", &n))
	{
   
		while (n)
		{
   
			printf("%d", n % 10);
			n /= 10;
		}
	}
	return 0;
}

 

2.你能活多少秒?

T22.你能活多少秒?

题目描述:

问题:一年约有 3.156×107 s,要求输入您的年龄,显示该年龄合多少秒。

数据范围: 0 < age < 200

 

输入描述:

一行,包括一个整数age。

输出描述:

一行,包含一个整数,输出年龄对应的秒数。

示例1

输入:

20

输出:

631200000

 

思路:

年龄 * 3.156×107 s == 你一辈子活了多少秒

但是需要考虑的东西:

  1. 3.156×107 s怎么表示(浮点型的表示方法)

  2. 200岁的人活的秒数已经超过了int范围,造成溢出,可参考整形家族

参考代码:

#include <stdio.h>

int main()
{
   
	long long k = 3.156E7;//long long类型,防止溢出
	int age = 0;
	scanf("%d", &age);
	printf("%lld", age*k);
	return 0;
}

 

3.计算三角形的面积

T26.计算三角形的面积

描述

根据给出的三角形3条边a, b, c,计算三角形的周长和面积。

数据范围: 0 < a,b,c≤100000

 

输入描述:

一行,三角形3条边(能构成三角形),中间用一个空格隔开。

输出描述:

一行,三角形周长和面积(保留两位小数),中间用一个空格隔开,输出具体格式详见输出样例。

示例1

输入:

3 3 3

输出:

circumference=9.00 area=3.90

 

思路:

海伦公式(之前还以为这个公式是海伦推出来的)

可能你可以利用几何知识,求解直角三角形,等腰三角形的面积

但是仅仅知道三条边,利用几何知识是不够的,而大佬阿基米德帮我们推出了一个知道三条边即可计算面积的海伦公式。

在这里插入图片描述
在这里插入图片描述

公式非常便于记忆

参考代码:

#include <stdio.h>

#include<math.h>

int main()
{
   
	float a = 0.0f, b = 0.0f, c = 
  • 67
    点赞
  • 109
    收藏
    觉得还不错? 一键收藏
  • 57
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 57
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值