数字分类 C语言

2023-11-07

给定一系列正整数,请按要求对数字进行分类,并输出以下 5 个数字:

  • A1​ = 能被 5 整除的数字中所有偶数的和;
  • A2​ = 将被 5 除后余 1 的数字按给出顺序进行交错求和,即计算 n1​−n2​+n3​−n4​⋯;
  • A3​ = 被 5 除后余 2 的数字的个数;
  • A4​ = 被 5 除后余 3 的数字的平均数,精确到小数点后 1 位;
  • A5​ = 被 5 除后余 4 的数字中最大数字。

输入格式:

每个输入包含 1 个测试用例。每个测试用例先给出一个不超过 1000 的正整数 N,随后给出 N 个不超过 1000 的待分类的正整数。数字间以空格分隔。

输出格式:

对给定的 N 个正整数,按题目要求计算 A1​~A5​ 并在一行中顺序输出。数字间以空格分隔,但行末不得有多余空格。

若分类之后某一类不存在数字,则在相应位置输出 N

输入样例 1:

13 1 2 3 4 5 6 7 8 9 10 20 16 18

输出样例 1:

30 11 2 9.7 9

输入样例 2:

8 1 2 4 5 6 7 9 16

输出样例 2:

N 11 2 N 9

碎碎念念

一开始没认真看题目,以为输入的都是要分类的数字,后来经过各种问题排查,发现了输入的第一个数字是分类数字的数目。这就简单了。

对于输出N的情况,设五个tag;

一个循环,不用数组,读一个判断一个。

代码

#include<stdio.h>
int main()
{
	int i,t,tag1=0,tag2=0,tag3=0,tag4=0,tag5=0,a1=0,a2=0,a3=0,a5=0,count2=0,count4=0,n;
	float sum4=0,a4=0;
	scanf("%d",&t);
	for(i=0;i<t;i++)
	{
		scanf("%d",&n);
		if(n%10==0)
		{
			a1=a1+n;
			tag1=1;
		}
		else if(n%5==1)
		{
			tag2=1;
			count2++;
			if(count2%2==1)
			a2=a2+n;
			else
			a2=a2-n;
		}
		else if(n%5==2)
		{
			tag3=1;
			a3++;
		}
	    else if(n%5==3)
		{
			tag4=1;
			sum4=sum4+n;
			count4++;
		}
		else if(n%5==4)
		{
			tag5=1;
			if(a5<n)
			a5=n;
		}		
	}
	if(tag1==0)
	printf("N ");
	else
	printf("%d ",a1);
	if(tag2==0)
	printf("N ");
	else
	printf("%d ",a2);
	if(tag3==0)
	printf("N ");
	else
	printf("%d ",a3);
	if(tag4==0)
	printf("N ");
	else
	{
		a4=sum4/count4;
		printf("%.1f ",a4);
	}
	if(tag5==0)
	printf("N");
	else
	printf("%d",a5);
}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

数字分类 C语言 的相关文章

  • 基于Cordova插件创建app及打包成apk

    基于Cordova插件创建app及打包成apk 1 配置开发环境 一 下载并安装node js npm功能可以使用 二 利用npm安装cordova插件 三 配置JAVA ANDROID GRDLE的系统环境 1 java jdk jre设
  • ThreadLocal与局部变量

    ThreadLocal和线程局部变量有什么区别 我们先看一段代码 如下 public class ThreadLocalLearn static ThreadLocal
  • 华为OJ:ip地址与整数之间的转换

    原理 ip地址的每段可以看成是一个0 255的整数 把每段拆分成一个二进制形式组合起来 然后把这个二进制数转变成 一个长整数 举例 一个ip地址为10 0 3 193 每段数字 相对应的二进制数 10 00001010 0 00000000

随机推荐

  • html5里js里怎么写入sql语句,SQL语句在JavaScript中的应用

    有兴趣的朋友可以 QQ 85302520 联系我 或者 Email gongji at qq dot com 已经开放了 SVN checkout 地址 http code google com p jsql javascript sour
  • 无限级分类在DataGrid和DropDownList中的体现

    实现效果 Datagrid Dropdownlist 实现效果 Datagrid Dropdownlist 实现步骤 1 创建表 CREATE TABLE dbo mulType TypeId int IDENTITY 1 1 NOT NU
  • Qt树形控件QTreeView使用1——节点的添加删除操作 复选框的设置

    QtreeView是ui中最常用的控件 Qt中QTreeWidget比QTreeView更简单 但没有QTreeView那么灵活 QTreeWidget封装的和MFC的CTreeCtrl很类似 没有mvc的特点 1 QStandardIte
  • ps换证件照背景颜色

    日常工作生活学习中经常会用到各种不同底色的证件照 手上的证件照底色不符合要求怎么办呢 以红色底色的证件照换蓝色底色证件照为例 我们一起来看看如何用ps换证件照背景颜色 下面是原始的红底证件照 我们用ps photoshop 打开该红底证件照
  • 智慧监狱解决方案-最新全套文件

    智慧监狱解决方案 最新全套文件 一 建设背景 二 思路架构 三 建设方案 四 获取 智慧监狱全套最新解决方案合集 一 建设背景 智慧监狱 是 数字法治 智慧司法 信息系统建设的重要组成部分 其主要内容是在现有监狱信息建设的基础上 充分利用大
  • 【MM32F5270开发板试用】五、rt-thread 利用SPI接口驱动SD卡

    篇文章来自极术社区与灵动组织的MM32F5270开发板评测活动 更多开发板试用活动请关注极术社区网站 作者 Magicoe是攻城狮 之前SPI接的是个2 4寸的小屏幕 鉴于MM32F5270片上没有SDIO接口用的是SPI拓展的SD卡 反正
  • InputStream

    在java中InputStream是字节输入流 用来将文件中的数据读取到java程序中 InputStream是所有字节输入流的顶层父类 是一个抽象类 如果要用 需要使用子类 最常用的子类 FileInputStream 构造方法 File
  • Gogs服务重启及邮件相关配置

    如何重启Gogs服务 简单粗暴地说 其实也就两步 关闭服务 gt gt 开启服务 1 关闭服务 获得启动服务的进程PID 根据使用端口查找进程ID 如配置Gogs使用的web端口为3102 则输入命令lsof i 3102 即可查看占用该端
  • 网口压线顺序_网线线序排列以及八字口诀

    网线线序排列以及八字口诀 普通网线线序一般都是按照橙白 橙 绿白 蓝 蓝白 绿 棕白 棕这个顺序排列 的 也就是 568B 线序标准 而通常情况下百兆网络自用到其中的四根线 若是只有四根线 的 则任选四根 做线时对应水晶头的 1 2 3 6
  • AD软件画电路图笔记

    最近使用AD软件画了一个arduino的板子 自己画原理图库 pcb库 原理图 pcb图 以及后来打板和原材料购买 和后来的硬件电路焊接 及硬件电路测试和烧录程序 这是我整个流程下来记的笔记 分享给大家 一 AD软件新建项目 1 两库 原理
  • Flutter Android端启动白屏

    问题描述 Flutter 应用在 Android 端上启动时会有一段很明显的白屏现象 白屏的时长由设备的性能决定 设备性能越差 白屏时间越长 问题分析 其实启动白屏的问题在Android原生应用上也是一个常见问题 大致是因为从用户点击 La
  • GameofMir引擎架设传奇服务器【2:登录器配置】

    工具 1 gom引擎自带的登录器 这里没有自带的登录器 游戏运行不了 里面带有一些密码和UI相关的文件 2 绿盟配置器 当然也可以用其他的 这里使用的绿盟的免费版本 都解压后开始配置 这里进入绿盟的文件夹 把这几个文件复制到gom自带的登录
  • C关键字volatile

    其实我想看的 想做笔记的就是就是那个汇编例子 看来汇编例子有助于了解啊 以前听人说过 高手都能将每一句C语言对应一句汇编语言 C语言关键字volatile 1 C语言关键字volatile C语言关键字volatile 注意它是用来修饰变量
  • 【maven】scalac:error while loading <root>,Error accessing

    1 概述 今天运行flink程序 编译时报如下错误 意思是访问maven下载的jar包出错 但是这个jar包已经下载好了 于是我进入jar包所在的路径 发现该包的大小只有1KB 感觉是下载有问题 于是删除该jar包 然后在pom中reimp
  • 5款linux下的笔记软件

    Evernote是一个很好的笔记软件 但是却没有linux版本 下面介绍5款linux下最好的笔记软件 1 Springseed Springseed 是 Jono Cooper 和 Michael Harker 一起开发的 是一个使用非常
  • Python手册(Standard Library)--datetime+time+calendar

    文章目录 datetime datetime timedelta datetime date datetime datetime datetime time python中时间日期格式化符号 time time struct time 时间
  • transformer论文_Transformer相关论文阅读笔记

    最近在使用Transformer模型跑任务 正好加入了同学组织的一个暑期文献打卡群 于是决定假期每天读一篇文献 主要关于近两年对于Transformer模型应用的论文 阅读论文的笔记分享给大家 7月18日 R transformer Rec
  • 安装pytorch-metric-learning

    https github com KevinMusgrave pytorch metric learning pytorch metric learning的github官方网址 安装pytorch metric learning 1 直接
  • vite遇见跨域怎么解决

    1 找到vite config js 2 找到defineConfig下面的server proxy 代理名称 target 地址 changeOrigin true rewrite path gt path replace 代理名称 3
  • 数字分类 C语言

    给定一系列正整数 请按要求对数字进行分类 并输出以下 5 个数字 A1 能被 5 整除的数字中所有偶数的和 A2 将被 5 除后余 1 的数字按给出顺序进行交错求和 即计算 n1 n2 n3 n4 A3 被 5 除后余 2 的数字的个数 A