xdoj综合,数字分解排序,文件排序,股票


数字分解排序


问题描述    
输入一个9位以内的正整数n,按数值从高到低的顺序输出n的各位数字。
输入说明    
一个正整数n(0<n<1000000000)
输出说明    
按数值从高到低的顺序输出n的各位数字,数字之间用空格隔开
输入样例    
564391
输出样例    
9 6 5 4 3 1

#include <stdio.h>
#include <stdlib.h>

int cmp(const void* a,const void* b)
{
    int* A = (int*) a;
    int* B = (int*) b;
    return *B - *A;
}

int main() 
{
    long int  n=0,n1=0;
    int i=0,d=0;
    scanf("%ld",&n);
    n1=n;
    
    for(i=0;n>=10;i++)
    {
        n/=10;
    }
    d=i+1;
    int num[d]={0};
    for(i=0;i<d;i++)
    {
        num[i]=n1%10;
        n1/=10;
    }
    
    qsort(num,d,sizeof(num[0]),cmp);
    
    for(i=0;i<d;i++)
    {
        printf("%d ",num[i]);
    }

    return 0;
}
 


文件排序


问题描述
操作系统中在查找文件时会按照某个规则对文件排序,例如下图为按照文件修改日期逆序排
序(最后修改的排在最前面)。
但目前操作系统不支持同时按照多个字段进行排序。现在请你写一个程序能够同时按照修改
日期和文件大小对文件进行排序,排序规则为:
1. 日期优先,最后修改的排在前面
2. 当修改日期相同时,大的文件排在前面。

输入说明
第一行为一个数字 n,n 表示共有 n 个待排序的文件, 1≤ n≤ 100。
接下来是 n 行,每行包含一个文件的修改日期和文件大小,这两个字段之间用空格分隔。
文件修改日期包含年、月、日,表示年、月、日的整数之间用“/”分隔,格式为“年/月/
日”。年份的数值在 1960-2018 之间;月份的数值在 1-12 之间;日的数值在 1-31 之间。
文件大小是一个不超过 100000000 的整数。
输入数据中没有完全相同的日期和文件大小。
输出说明
将输入数据按题目描述的规则排序后输出,每行输出一个文件的修改日期和文件大小。
输入样例
8
2018/1/8 1024
2012/10/31 256
2014/10/29 300
2012/10/31 457
2014/10/27 512
2011/10/27 95
2014/11/3 1102
2017/11/24 1535
输出样例
2018/1/8 1024
2017/11/24 1535
2014/11/3 1102
2014/10/29 300
2014/10/27 512
2012/10/31 457
2012/10/31 256
2011/10/27 95

#include <stdio.h>
#include <stdlib.h>

typedef struct{
    int year;
    int month;
    int day;
    long int space;
}files;

int cmp(const void* a,const void* b)
{
    files* A = (files*) a;
    files* B = (files*) b;
    if(A->year == B->year)
    {
        if(A->month == B->month)
        {
            if(A->day == B->day)
            {
                return B->space - A->space;
            }
            return B->day - A->day;
        }
        
        return B->month - A->month;
    }
    
    return B->year - A->year;
}

int main() 
{
    int n=0,i=0;
    scanf("%d",&n); 
    files file[n];
    
    for(i=0;i<n;i++)
    {
        scanf("%d/%d/%d",&file[i].year,&file[i].month,&file[i].day);
        scanf("%ld",&file[i].space);
    }
    
    qsort(file,n,sizeof(file[0]),cmp);
    
    for(i=0;i<n;i++)
    {
        printf("%d/%d/%d %ld",file[i].year,file[i].month,file[i].day,file[i].space);
        printf("\n");
    }
    
    return 0;
}


股票


题目描述:
小明热爱炒股,经过一番分析之后,他决定投入一笔资金买入一定数量的某只股票。
之后连续n天,他每天都关注这支股票并进行交易,但不会追加资金,即他只会用卖股票的钱买入股票。
现在给出他首次买入股票时的价格和数量,以及其后每天股票的价格和他的交易数量,
请计算n天之后他的资产(股票总值 + 现金)。
输入描述:
输入数据由若干行构成,第一行为三个正整数m,p,n。
m表示首次买入股票数量(0<m<10000),p表示首次买入价格(0<p<=100),n表示之后进行股票交易的天数(0<n<50)。
其后是n行数据,每行包括两个整数k和d,k表示当天交易数量(-10000<k<10000),
正数表示买入,负数表示卖出;d表示当天股票价格(0<d<=100)。
输出描述:
输出一个整数表示n天后小明的资产(股票总值 + 现金)。
输入样例:
100 10 5
-30 12
-30 18
20 12
30 10
20 12
输出样例:
1440

#include <stdio.h>


int main() 
{
    int num=0,pr=0,d=0,i=0;
    scanf("%d%d%d",&num,&pr,&d);
    int Num[d]={0};
    int Pr[d]={0};
    for(i=0;i<d;i++)
    {
        scanf("%d%d",&Num[i],&Pr[i]);
    }
    
    int w1=0,sum=0,w2=0;
    for(i=0;i<d;i++)
    {
        sum+=Num[i];
    }
    sum+=num;
    w1=sum*Pr[d-1];//计算最后一天股票的总资产
    sum=0;//清零,下一步还要用 
    for(i=0;i<d;i++)
    {
        sum+=(-1)*Num[i]*Pr[i];
    }
    w2=sum;//计算最后一天现金的总资产
    
    printf("%d",w1+w2); 
    
    return 0;
}

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

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

相关文章

BIOMOD2提供运行多达10余种物种分布模拟模型

随着生物多样性全球大会的举办&#xff0c;不论是管理机构及科研单位、高校都在积极准备&#xff0c;根据国家林草局最新工作指示&#xff0c;我国将积极整合、优化自然保护地&#xff0c;加快推进国家公园体制试点&#xff0c;构建以国家公园为主体的自然保护地体系。针对我国…

Text visualization : pipeline,wordle,phrase net,word tree

Text visualization&#xff08;文本可视化&#xff09;是一种将文本数据转换为可视形式的技术&#xff0c;以便更好地理解和分析文本内容。以下是可能会涉及的几个知识点&#xff1a; 1. Pipeline&#xff08;流程图&#xff09;&#xff1a;Pipeline是指将文本可视化的过程划…

网络安全B模块(笔记详解)- 数字取证

数据分析数字取证-attack 1.使用Wireshark查看并分析Windows 7桌面下的attack.pcapng数据包文件,通过分析数据包attack.pcapng找出恶意用户的IP地址,并将恶意用户的IP地址作为Flag(形式:[IP地址])提交; 解析:http.request.method==POST ​ Flag:[172.16.1.102] 2.继续…

SM2——适用于前后端(java+vue)公用的SM2国密加解密传输

目录 一、SM2国密加解密算法1.1、pom文件引入依赖包1.2、SM2加解密工具类1.3、测试类 一、SM2国密加解密算法 1.1、pom文件引入依赖包 <dependency><groupId>org.bouncycastle</groupId><artifactId>bcprov-jdk18on</artifactId><version>…

Maple2023安装包下载及安装教程

Maple 2023下载链接&#xff1a;https://docs.qq.com/doc/DUkFJY1NkTk9mZnBM 1.选中下载好的安装包&#xff0c;鼠标右键解压到“Maple 2023”文件夹 2.选中setup-windows.exe&#xff0c;鼠标右击选择“以管理员身份运行” 3.点击“OK” 4.点击“Next” 5.选择I accept the ag…

中科驭数鄢贵海新年演讲:数字经济下的算力基础先行,DPU自主创新力量大有可为

近日&#xff0c;中科驭数创始人、CEO鄢贵海受邀在北京电视台《金融街午餐会》新年特别活动中发表新年演讲。 鄢贵海在新年演讲中提到&#xff0c;在21世纪头30年&#xff0c;我们不可思议地经历了三次重要的科技变革&#xff0c;分别是互联网的普及、移动互联网的崛起、以及人…

C++面向对象高级编程(侯捷)笔记2

侯捷C面向对象高级编程 本文是学习笔记&#xff0c;仅供个人学习使用&#xff0c;如有侵权&#xff0c;请联系删除。 如果你对C面向对象的组合、继承和委托不了解&#xff0c;对什么是拷贝构造、什么是拷贝赋值和析构不清楚&#xff0c;对类设计中的Adapter、pImpl、Template…

AJAX(一)

一、AJAX简介 AJAX全称为 Asynchronous JavaScript And XML,就是异步的JS和XML。 通过AJAX可以在浏览器中向服务器发送异步请求&#xff0c;最大的优势&#xff1a;无刷新获取数据 AJAX不是新的编程语言&#xff08;使用的js)&#xff0c;而是一种将现有的标准组合在一起使用的…

探索Spring最常用的30个注解

目录 1-10 Spring常用注解解析11-20 Spring进阶注解深度解析21-30 Spring进阶注解深度解析结语 前言&#xff1a; 欢迎来到探索Spring注解的奇妙之旅&#xff01;在这篇博客中&#xff0c;我们将深入研究Spring框架中最常用的30个注解&#xff0c;揭示它们的作用和用法&#x…

微信好友添加频繁的原因

01 微信好友添加频繁的原因 1. 添加好友的频率太高&#xff1a;短时间内添加多个好友&#xff0c;系统会认为账号被盗&#xff0c;从而限制用户添加好友&#xff1b; 2. 频繁的发送好友请求&#xff1a;在短时间内连续发送好友请求&#xff0c;也会导致微信限制操作&#xff0…

使用Gitea搭建自己的git远程仓库

Gitea 为什么需要自建仓库 原因只有一个&#xff1a;折腾。其实国内的码云加上github已经足够用了。 官方原话 Gitea 的首要目标是创建一个极易安装&#xff0c;运行非常快速&#xff0c;安装和使用体验良好的自建 Git 服务。我们采用 Go 作为后端语言&#xff0c;这使我们…

【数据结构】——期末复习题题库(5)

&#x1f383;个人专栏&#xff1a; &#x1f42c; 算法设计与分析&#xff1a;算法设计与分析_IT闫的博客-CSDN博客 &#x1f433;Java基础&#xff1a;Java基础_IT闫的博客-CSDN博客 &#x1f40b;c语言&#xff1a;c语言_IT闫的博客-CSDN博客 &#x1f41f;MySQL&#xff1a…

JMeter与Allure的完美结合:打造高效、易读的性能测试报告

随着互联网的快速发展&#xff0c;软件性能测试已经成为软件开发过程中不可或缺的一环。为了提高测试效率和报告质量&#xff0c;许多测试团队开始寻求自动化测试工具和报告生成工具的结合。在这篇文章中&#xff0c;我们将介绍如何将JMeter与Allure结合使用&#xff0c;以实现…

com.gexin.platform 依赖下载问题

打包时报错显示&#xff1a; com.gexin.platform:gexin-rp-sdk-http:pom:4.1.1.4 failed to transfer from http://0.0.0.0/ 解决办法&#xff1a; 1、在idea中找到maven中的设置的settings.xml 2、根据路径找到settings.xml文件&#xff0c;添加以下内容 <mirror><…

遇到无序多变请求怎么办,可以试试责任链模式

责任链模式&#xff08;Chain Of Responsibility Design Pattern&#xff09;&#xff0c;也叫做职责链&#xff0c;是将请求的发送和接收解耦&#xff0c;让多个接收对象都有机会处理这个请求。当有请求发生时&#xff0c;可将请求沿着这条链传递&#xff0c;直到有对象处理它…

知识点积累

2024.01.02 1. 正向代理/反向代理 遇见场景&#xff1a;在客户端获取接口&#xff0c;拿着接口去后端代码查询不到该接口&#xff0c;实际结果在前端代码查询到了该接口&#xff0c;然后开始接触正向代理、反向代理。 &#xff08;1&#xff09;正向代理&#xff1a;指代理服…

UDP通信(服务器-客户端)

一、 UDP服务器-客户端通信 UDP&#xff08;User Datagram Protocol&#xff09;是一种面向无连接的传输层协议&#xff0c;它提供了一种简单的、不可靠的数据传输服务。与TCP&#xff08;Transmission Control Protocol&#xff09;不同&#xff0c;UDP不建立连接&#xff0c;…

基于Kettle开发的web版数据集成开源工具(data-integration)-部署篇

目录 &#x1f4da;第一章 前言&#x1f4d7;背景&#x1f4d7;目的&#x1f4d7;总体方向 &#x1f4da;第二章 下载编译&#x1f4d7;下载&#x1f4d7;编译 &#x1f4da;第三章 部署&#x1f4d7;准备工作&#x1f4d5; 安装数据库&redis&consul&#x1f4d5; 修改…

鼠标驱动框架:模拟键盘按键

/* 参考: drivers\hid\usbhid\usbmouse.c */ #include <linux/kernel.h> #include <linux/slab.h> #include <linux/module.h> #include <linux/init.h> #include <linux/usb.h> #include <linux/input.h> #include <linux/hid.h>st…

计算机毕业设计-------基于JSP+Servlet的毕业生离校管理系统

需求分析 使用JSPServletMysql技术设计一个毕业生离校管理系统, 整个系统采用BS架构, 为高校方便进行毕业生离校流程进行统一的离校流程, 极大的减少了大量学生同时离校的过程中杂乱的情况, 整个系统分为学生, 教务处, 辅导员, 图书馆, 宿管, 财务处, 系办公室, 管理员登等角色…