C语言刷题训练DAY.8

news2024/11/19 10:33:04

1.计算单位阶跃函数

 解题思路:

这个非常简单,只需要if else语句即可完成

解题代码:

#include <stdio.h>

int main()
{
	int t = 0;
	while(scanf("%d",&t)!=EOF)
	{
		if (t > 0)
			printf("1\n");
		else if (t < 0)
			printf("0\n");
		else
			printf("0.5\n");
	}
	return 0;
}

2.三角形判断

 解题思路:

首先我们要判断他是不是三角形,三角形的判断公式是任意两条边之和要大于第三条边。

解题代码:

#include<stdio.h>
int main()
{
	int a = 0;
	int b = 0;
	int c = 0;
	while ((scanf("%d %d %d", &a, &b, &c) != EOF))
	{	//判断是不是三角形
		if (a + b > c && a + c > b && b + c > a)
		{	//判断是不是等腰三角形
			if (a == b && b == c)
				printf("Equilateral triangle!\n");
			//判断是不是等边三角形
			else if (a == b || a == c||b==c)
				printf("Isosceles triangle!\n");
			//是其他三角形
			else 
				printf("Ordinary triangle!\n");

		}
        //不是三角形
		else
			printf("Not a triangle!");
	}
	return 0;
}


3.衡量人体胖瘦程度

 

解题思路:

首先我们要知道BIM的公式:体质指数(BMI)=体重(千克)/身高(米)×身高(米)

再利用if else语句判断即可。

解题代码:

#include<stdio.h>
int main()
{
	//体重
	int s = 0;
	//身高 厘米
	int t = 0;
	while ((scanf("%d %d", &s, &t)) != EOF)
	{
		//身高 米
		double m = (t / 100.0);
		double BIM = (s / (m * m));
		if (BIM < 18.5)
		{
			printf("Underweight\n");
		}
		else if (BIM >= 18.5 && BIM <= 23.9)
		{
			printf("Normal\n");
		}
		else if (BIM > 23.9 && BIM <= 27.9)
		{
			printf("Overweight\n");
		}
		else
		{
			printf("Obese\n");
		}	
	}
	return 0;
}

4.计算一元二次方程

 

解题思路:

这里稍微要用到点数学知识,我们再用if else判断即可。

解题代码:

#include <math.h>
int main()
{
    float a = 0.0;
    float b = 0.0;
    float c = 0.0;
    while (scanf("%f %f %f", &a, &b, &c) == 3)
    {
        if (a == 0)
        {
            printf("Not quadratic equation\n");
        }
        else
        {
            float deta = b * b - 4 * a * c;
            if (deta >= 0)
            {
                float result1 = (-b + sqrt(deta)) / (2 * a);
                float result2 = (-b - sqrt(deta)) / (2 * a);
                if (deta > 0)
                {
                    printf("x1=%.2f;x2=%.2f\n", result2, result1);
                }
                else
                {
                    if (result1 == 0)
                    {
                        printf("x1=x2=0.00\n");
                    }
                    else
                    {
                        printf("x1=x2=%.2f\n", result1);
                    }
                }
            }
            else
            {
                float shibu = (-b) / (2.0 * a);
                float xubu = (sqrt(-deta)) / (2.0 * a);
                if(xubu < 0)
                {
                    xubu = -xubu;
                    printf("x1=%.2f-%.2fi;x2=%.2f+%.2fi\n", shibu, xubu, shibu, xubu);
                }
                else
                {
                    printf("x1=%.2f-%.2fi;x2=%.2f+%.2fi\n", shibu, xubu, shibu, xubu);
                }
            }
        }
    }
    return 0;
}


5.获得月份天数

 

解题思路:

闰年的判断:

1.能被4整除,并且不能被100整除

2.能被400整除是闰年 

解题代码:

#include<stdio.h>
int main()
{
	int y = 0;
	int m = 0;
	int days[12] = { 31,28,31,30,31,30,31,31,30,31,30,31 };
	while ((scanf("%d %d", &y, &m)) != EOF)
	{
		int day = days[m - 1];
		if ((y % 4 == 0 && y % 100 != 0) || (y % 400 == 0))
		{
			if (m == 2)
			{
				day++;
			}
		}
		printf("%d\n", day);
	}
	return 0;
}


6.简单计算器

 

 

解题思路:

这里我们要确定好输入格式和打印格式,其他的按照题目要求来即可。

解题代码:

#include<stdio.h>
int main()
{
	double a = 0;//第一个操作数
	double b = 0;//第二个操作数
	char ch = 0;//运算符
	while ((scanf("%lf %c %lf", &a, &ch, &b)) != EOF)//输入
	{
		if (ch == '+' || ch == '-' || ch == '*' || ch == '/')//判断是不是+—*/
		{
			if (ch == '+')
				printf("%.4lf%c%.4lf=%.4lf", a, ch, b, a + b);
			else if (ch == '-')
				printf("%.4lf%c%.4lf=%.4lf", a, ch, b, a - b);
			else if (ch == '*')
				printf("%.4lf%c%.4lf=%.4lf", a, ch, b, a * b);
			else
			{
				if (b == 0.0)
					printf("Wrong!Division by zero!\n");
				else
					printf("%.4lf%c%.4lf=%.4lf", a, ch, b, a / b);
			}
		}
		else
			printf("Invalid operation!\n");

	}
	return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/898419.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

LVS-DR集群(一台LVS,一台CIP,两台web,一台NFS)的构建以及LVS-DR模式工作原理和特点

一.LVS-DR工作模式原理和特点 1.工作模式 2.模式特点 二.构建环境 1.五台关闭防火墙&#xff0c;关闭selinux&#xff0c;拥有固定IP&#xff0c;部署有http服务的虚拟机&#xff0c;LVS设备下载ipvsadm工具&#xff0c;NFS 设备需要下载rpcbind和nfs-utils 2.实现功能 3…

win11调整屏幕亮度

1.右键打开 2.显示更多选项 3.NVIDIA控制面板 4.调整桌面颜色设置 5.亮度

linux 搭建 nexus maven私服

环境&#xff1a; 必须在 linux 环境下&#xff0c;并且已安装 jdk 下载 访问百度网盘链接: https://pan.baidu.com/s/1fHGmQ2jRUAsXyPom2KL8Mw?pwd0000 提取码: 0000 官网下载 Download Archives - Repository Manager 3 (sonatype.com) 部署 &#xff1a; 进入目录&#…

Echarts:象形柱图实现水塔水位的动画、水球图和液位柱子图

一、象形柱图 1、vue中使用象形柱图 效果图&#xff1a; 2、代码实现 <template><div :class"className" :style"{height:height,width:width}"/></template> <script>import echarts from echarts require(echarts/theme/macar…

论文浅尝 | KRACL-利用图上下文和对比学习的稀疏KG补全

笔记整理&#xff1a;李娟&#xff0c;浙江大学博士&#xff0c;研究方向为知识图谱表示学习 论文链接&#xff1a;https://arxiv.org/pdf/2208.07622.pdf 代码链接&#xff1a;https://github.com/TamSiuhin/KRACL 介绍 知识图谱&#xff08;KG&#xff09;通常是不完整的&…

注意力机制——SENet原理详解及源码解析

&#x1f34a;作者简介&#xff1a;秃头小苏&#xff0c;致力于用最通俗的语言描述问题 &#x1f34a;专栏推荐&#xff1a;深度学习网络原理与实战 &#x1f34a;近期目标&#xff1a;写好专栏的每一篇文章 &#x1f34a;支持小苏&#xff1a;点赞&#x1f44d;&#x1f3fc;、…

【ROS】话题通信--从理论介绍到模型实现(C++)

1.简单介绍 话题通信是ROS中使用频率最高的一种通信模式&#xff0c;话题通信是基于发布订阅模式的&#xff0c;也即:一个节点发布消息&#xff0c;另一个节点订阅该消息。像雷达、摄像头、GPS… 等等一些传感器数据的采集&#xff0c;也都是使用了话题通信&#xff0c;换言之…

windows 配置 Kerberos客户端访问CDH组件

0.背景 想在window机器上访问内网集群的CDH组件(如solr的webui),由于集群配置了Kerberos验证,所以需要配置相关,否则打开webui会有401未授权错误 1. 流程 1.1 windows安装Kerberos客户端 -下载 Windows系统客户端去下面网站按需下载 http://web.mit.edu/kerberos/dist/ 需要…

【力扣】496. 下一个更大元素 I <单调栈、模拟>

【力扣】496. 下一个更大元素 I nums1 中数字 x 的 下一个更大元素 是指 x 在 nums2 中对应位置 右侧 的 第一个 比 x 大的元素。给你两个没有重复元素的数组 nums1 和 nums2 &#xff0c;下标从 0 开始计数&#xff0c;其中nums1 是 nums2 的子集。   对于每个 0 < i <…

喜报 | 擎创再度入围IDC中国FinTech 50榜单

8月16日&#xff0c;2023年度“IDC中国FinTech 50”榜单正式揭晓&#xff0c;擎创科技继2022年入选该榜单后&#xff0c;再次以创新者姿态成功入选&#xff0c;并以技术赋能业务创新&#xff0c;成为中国金融科技领域创新与活力的重要贡献者。 “IDC中国FinTech 50”旨在评选出…

RabbitMq交换机类型介绍

RabbitMq交换机类型介绍 在RabbitMq中&#xff0c;生产者的消息都是通过交换器来接收&#xff0c;然后再从交换器分发到不同的队列&#xff0c;再由消费者从队列获取消息。这种模式也被成为“发布/订阅”。 分发的过程中交换器类型会影响分发的逻辑。 直连交换机&#xff1a…

高校大学生社团管理系统的设计与实现(论文+源码)_kaic

目 录 一、绪论 &#xff08;一&#xff09;选题背景 1、社团管理系统的提出 &#xff08;二&#xff09;系统设计的原则与目标 1、系统设计原则 2、系统设计目标 二、系统关键技术的分析 &#xff08;一&#xff09;JSP技术 &#xff08;二&#xff09;Tomcat简介 1、SERVL…

虚拟机远程连接出现 Connection refused: connect问题(已解决)

如果你也跟我一样出现了这样的问题&#xff0c;并且网上的方法试了都不行&#xff0c;不妨试试我的简单粗暴的方法&#xff0c; 那就是拔网线&#xff0c;我的就是拔网线&#xff0c;重新连接就行了&#xff0c;佛了

Creating a document in Overleaf

1、Uploading a project上传项目 This artcle provides a step-by-step guide showing how to create an Overleaf project by uploading a .zip file containing LaTeX files stored on your local computer 1、Create a .zip file containing your local files (images, bib…

如何优雅的进行接口设计?接口设计的六大原则是什么?

如何优雅的进行接口设计&#xff1f;接口设计的六大原则是什么&#xff1f; 本文关于如何优雅的进行接口设计&#xff1f;接口设计的六大原则是什么&#xff1f; 作为后端开发&#xff0c;不管是什么语言&#xff0c;Java、Go还是C&#xff0c;其背后的后端思想都是类似的。后…

JAVA免杀学习与实验

1 认识Webshell 创建一个JSP文件&#xff1a; <% page import"java.io.InputStream" %> <% page import"java.io.BufferedReader" %> <% page import"java.io.InputStreamReader" %> <% page language"java" p…

【linux基础(四)】对Linux权限的理解

&#x1f493;博主CSDN主页:杭电码农-NEO&#x1f493;   ⏩专栏分类:Linux从入门到开通⏪   &#x1f69a;代码仓库:NEO的学习日记&#x1f69a;   &#x1f339;关注我&#x1faf5;带你学更多操作系统知识   &#x1f51d;&#x1f51d; Linux权限 1. 前言2. shell命…

Linux 进程间通信——共享内存

一、共享内存原理 共享内存为多个进程之间共享和传递数据提供了一种有效的方式。共享内存是先在物理内存上申请一块空间&#xff0c;多个进程可以将其映射到自己的虚拟地址空间中。所有进程都可以访问共享内存中的地址&#xff0c;就好像它们是由malloc分配的一样。如果某个进…

实现一个自动保存高CPU占用现场的简易工具

CPU 使用率在系统监控中是一个非常重要的指标。对于大多数 Web 应用来说&#xff0c;它们往往是 IO 密集型的&#xff0c;因此只会在某些时刻可能会出现 CPU 突然飙升的情况&#xff0c;随后很快就恢复正常。然而&#xff0c;当收到报警并想要排查问题时&#xff0c;CPU 飙升的…