当前位置: 首页 > news >正文

day1数据结构,关键字,内存空间存储与动态分区,释放

小练习

在堆区空间连续申请5个int类型大小空间,用来存放从终端输入的5个学生成绩,然后显示5个学生成绩,再将学生成绩升序排序,排序后,再次显示学生成绩。显示和排序分别用函数完成(两种排序方法)

要求:用malloc和free完成

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int *put(int *p);//输出成绩声明
int *swap(int *p);//冒泡排序函数声明
int *swap2(int *p);//选择排序声明
int main(int argc, const char *argv[])
{int *p=(int *)malloc(sizeof(int)*5);//申请5个int类型堆空间for(int i=0;i<5;i++){scanf("%d",p+i);//输入成绩}printf("你输入的成绩为:");put(p);//调用输出函数swap(p);//调用冒泡排序函数//swap2(p);//调用选择排序函数printf("排序升序后的值为:");put(p);return 0;free(p);//释放内存p=NULL;//指针指向空,避免野指针 
}
int *put(int *p)//输出函数
{for(int i=0;i<5;i++){printf("%d ",*(p+i));}putchar(10);
}
int *swap(int *p)//冒泡排序
{int temp;for(int i=0;i<5;i++)for(int j=0;j<4-i;j++){if(*(p+j)>*(p+j+1)){temp=*(p+j);*(p+j)=*(p+j+1);*(p+j+1)=temp;}}
}
int *swap2(int *p)//选择排序
{int temp;int min;for(int i=0;i<5;i++){min=i;for(int j=i+1;j<5;j++){if(*(p+min)>*(p+j))min=j;}temp=*(p+min);*(p+min)=*(p+i);*(p+i)=temp;}
}

运行截图

相关文章:

day1数据结构,关键字,内存空间存储与动态分区,释放

小练习 在堆区空间连续申请5个int类型大小空间&#xff0c;用来存放从终端输入的5个学生成绩&#xff0c;然后显示5个学生成绩&#xff0c;再将学生成绩升序排序&#xff0c;排序后&#xff0c;再次显示学生成绩。显示和排序分别用函数完成&#xff08;两种排序方法&#xff0…...

1_linux系统网络性能如何优化——几种开源网络协议栈比较

之前合集《计算机网络从入门到放弃》第一阶段算是已经完成了。都是理论&#xff0c;没有实操&#xff0c;让“程序猿”很难受&#xff0c;操作性不如 Modbus发送的报文何时等到应答和 tcp通信测试报告单1——connect和send。开始是想看linux内核网络协议栈的源码&#xff0c;然…...

【问题记录】07 MAC电脑,使用FileZilla(SFTP)连接堡垒机不成功

项目场景&#xff1a; 使用MAC电脑&#xff0c;以子账号&#xff08;非root&#xff09;的形式登录&#xff0c;连接堡垒机CLB&#xff08;传统型负载均衡&#xff09;&#xff0c;使用FileZilla&#xff08;SFTP&#xff09;进行FTP文件传输。 问题描述&#xff1a; MAC电脑…...

前端报错npm ERR cb() never called问题

环境使用node版本v14.21.3&#xff0c;npm版本6.14.18 1.问题描述 1.1使用npm install后报错 npm ERR! cb() never called!npm ERR! This is an error with npm itself. Please report this error at: npm ERR! ? ? <https://npm.community>npm ERR! A complete log…...

康谋方案 | 多源相机数据采集与算法集成测试方案

目录 一、相机组成 二、多源相机采集与测试方案 三、应用案例分享 四、结语 在智能化技术快速发展当下&#xff0c;图像数据的采集与处理逐渐成为自动驾驶、工业等领域的一项关键技术。高质量的图像数据采集与算法集成测试都是确保系统性能和可靠性的关键。随着技术的不断进…...

Graspness 端到端抓取点估计 | 环境搭建 | 模型推理测试

在复杂场景中实现抓取检测&#xff0c;Graspness是一种端到端的方法&#xff1b; 输入点云数据&#xff0c;输出抓取角度、抓取深度、夹具宽度等信息。 开源地址&#xff1a;https://github.com/rhett-chen/graspness_implementation?tabreadme-ov-file 论文地址&#xff1…...

交换机是如何避免数据碰撞的(详细解释 + 示例)

交换机是如何避免数据碰撞的&#xff08;详细解释 示例&#xff09; 1. 独立冲突域 交换机的每个端口都形成一个独立的冲突域。这意味着通过交换机连接的每个设备都拥有自己的通信通道&#xff0c;互不干扰。 示例&#xff1a; 假设一个交换机有4个端口&#xff0c;分别连接…...

魅族手机刷官方系统

从魅族官网下载固件 https://flyme.cn/firmware.html 找到自己的型号&#xff0c;里面有历史版本、最新版&#xff0c;按照需求下载。 下载的是update.zip&#xff0c;改名就不能升级了 方法1 直接点击下载的update.zip包就可以升级。 方法2 将文件移动到文件管理的根目录&a…...

女人想要的,是那份懂她的情绪价值

女人想要的&#xff0c;是那份懂她的情绪价值 在情感的世界里&#xff0c;我们常常听到这样的声音&#xff1a;“我不需要你帮我解决问题&#xff0c;我只希望你能懂我。”这句话&#xff0c;简单却深刻&#xff0c;它揭示了女性在情感需求上的一个独特面向——她们渴望的&…...

[python SQLAlchemy数据库操作入门]-10.性能优化:提升 SQLAlchemy 在股票数据处理中的速度

哈喽,大家好,我是木头左! 当处理大量数据时,如股票数据,默认的ORM操作可能会显得效率低下。本文将探讨如何通过一些技巧和策略来优化SQLAlchemy ORM的性能,从而提升其在股票数据处理中的速度。 1. 选择合适的数据类型 在定义模型时,选择合适的数据类型对于性能至关重要…...

【网络取证篇】取证实战之PHP服务器镜像网站重构及绕密分析

【网络取证篇】取证实战之PHP服务器镜像网站重构及绕密分析 在裸聊敲诈、虚假理财诈骗案件类型中&#xff0c;犯罪分子为了能实现更低成本、更快部署应用的目的&#xff0c;其服务器架构多为常见的初始化网站架构&#xff0c;也称为站库同体服务器&#xff01;也就是说网站应用…...

[python]使用 Pandas 处理 Excel 数据:分割与展开列操作

在数据处理的过程中&#xff0c;时常需要对 Excel 表格中的数据进行清洗与转换&#xff0c;下面介绍使用 Python 中的 Pandas 库对 Excel 文件中的数据进行操作&#xff0c;具体包括分割列、展开数据、清除空格以及格式转换等操作。 目标&#xff1a; 读取一个没有表头的 Exc…...

单片机的选择因素

在选择单片机型号时&#xff0c;需要根据具体的应用需求来选择合适的单片机。单片机&#xff08;Microcontroller Unit, MCU&#xff09;是一种将计算机的主要部分集成在一个芯片上的微型计算机&#xff0c;它通常包括处理器、存储器、输入/输出接口等。随着技术的发展&#xf…...

软件测试兼容性测试丨分布式测试与多设备管理

本文将从分布式测试的概念、重要性以及实施方法入手&#xff0c;紧接着探讨多设备管理的必要性和管理策略&#xff0c;最后分析其对软件测试行业的前景与影响。 分布式测试简介 什么是分布式测试&#xff1f; 分布式测试是指将测试任务分散到不同的计算机或者设备上进行&…...

Linux驱动开发(13):输入子系统–按键输入实验

计算机的输入设备繁多&#xff0c;有按键、鼠标、键盘、触摸屏、游戏手柄等等&#xff0c;Linux内核为了能够将所有的输入设备进行统一的管理&#xff0c; 设计了输入子系统。为上层应用提供了统一的抽象层&#xff0c;各个输入设备的驱动程序只需上报产生的输入事件即可。 下…...

微服务篇-微服务保护:使用 Sentinel 来实现请求限流、线程隔离、服务熔断和 Fallback 备用方案的使用

&#x1f525;博客主页&#xff1a; 【小扳_-CSDN博客】 ❤感谢大家点赞&#x1f44d;收藏⭐评论✍ 文章目录 1.0 微服务保护 1.1 请求限流方案 1.2 线程隔离方案 1.3 服务熔断方案 2.0 Sentinel 2.1 Sentinel 安装 2.2 微服务整合 3.0 Sentinel-请求限流 4.0 Sentinel-线程隔离…...

vscode 排除文件夹搜索

排除的文件夹 node_modules/,dist/...

设计模式学习之——装饰者模式

装饰者模式&#xff08;Decorator Pattern&#xff09;是一种结构型设计模式&#xff0c;它允许你动态地向一个现有的对象添加新的行为&#xff0c;同时又不改变其结构。 一、定义与特点 定义&#xff1a;装饰者模式动态地将责任附加到对象上。若要扩展功能&#xff0c;装饰者…...

【Vulkan入门】10-CreatePipeline

目录 先叨叨Git信息关键代码TestPipeline::Initialize() 编译运行 先叨叨 到上篇为止已经创建了FrameBuffer和RenderPass。建立Pipeline的先决条件已经具备。本篇就来创建Pipeline。 Git信息 repository: https://gitee.com/J8_series/easy-car-uitag: 10-CreatePipelineurl…...

C++11 (一)

一、 C11的发展历史 C11是C 的第二个主要版本&#xff0c;并且是从 C98 起的最重要更新。 它引入了大量更改&#xff0c;标准化了既有实践&#xff0c;并改进了对C程序员可用的抽象。在它最终由IS0在2011年8月12日采纳前&#xff0c;人们曾使用名称“C0x”&#xff0c;因为它曾…...

Grafana 地图本土化方案:使用高德地图API平替GeoMap地图指南

[ 知识是人生的灯塔&#xff0c;只有不断学习&#xff0c;才能照亮前行的道路 ] &#x1f4e2; 大家好&#xff0c;我是 WeiyiGeek&#xff0c;一名深耕安全运维开发&#xff08;SecOpsDev&#xff09;领域的技术从业者&#xff0c;致力于探索DevOps与安全的融合&#xff08;De…...

csharp基础....

int[][] jaggedArray new int[3][]; jaggedArray[0] new int[] { 1, 2 }; jaggedArray[1] new int[] { 3, 4, 5 }; jaggedArray[2] new int[] { 6, 7, 8, 9 }; 嵌套 反转和排序 List<int> list new List<int> { 1, 2, 3, 4, 5 }; list.Reverse(); Cons…...

三十五、面向对象底层逻辑-Spring MVC中AbstractXlsxStreamingView的设计

在Web应用开发中&#xff0c;大数据量的Excel导出功能是常见需求。传统Apache POI的XSSF实现方式在处理超大数据集时&#xff0c;会因全量加载到内存导致OOM&#xff08;内存溢出&#xff09;问题。Spring MVC提供的AbstractXlsxStreamingView通过流式处理机制&#xff0c;有效…...

vue3:十五、管理员管理-页面搭建

一、页面效果 实现管理员页面,完成管理员对应角色的中文名称显示,实现搜索栏,表格基本增删改查,分页等功能 二、修改问题 1、修改搜索框传递参数问题 (1)问题图示 如下图,之前搜索后,传递的数据不直接是一个value值,而是如下图的格式 查询可知这里传递的数据定义的是…...

嵌入式链表操作原理详解

嵌入式链表操作原理详解 链表是嵌入式软件开发中最基础的数据结构之一&#xff0c;其设计采用嵌入式链表节点的思想&#xff0c;实现了高度通用的链表管理机制。以下是核心原理和操作的全面解析&#xff1a; 一、基础数据结构 struct list_head {struct list_head *next, *pr…...

Vscode下Go语言环境配置

前言 本文介绍了vscode下Go语言开发环境的快速配置&#xff0c;为新手小白快速上手Go语言提供帮助。 1.下载官方Vscode 这步比较基础&#xff0c;已经安装好的同学可以直接快进到第二步 官方安装包地址&#xff1a;https://code.visualstudio.com/ 双击一直点击下一步即可,记…...

MS8551/MS8552/MS8554 单电源、轨到轨输入输出、高精度运放,可替代AD8551/AD8552/AD8554

MS8551/MS8552/MS8554 单电源、轨到轨输入输出、高精度运放&#xff0c;可替代AD8551/AD8552/AD8554 简述 MS8551/8552/8554 是轨到轨输入输出的高精度运算放大器&#xff0c;它有极低的输入失调电压和偏置电流&#xff0c;单电源电压范围为 1.8V 到 5V 。 MS8551/8552/85…...

vue3+TS+eslint9配置

记录eslint升级到9.x的版本之后遇到的坑 在 ESLint 9 中&#xff0c;配置方式发生了变化。Flat Config 格式&#xff08;eslint.config.js 或 .ts&#xff09;不再支持 extensions 选项。所以vscode编辑器中的 extensions 需要注释掉&#xff0c;要不然保存的时候不会格式化。…...

AI Agent 架构设计:ReAct 与 Self-Ask 模式对比与分析

一、引言 (一) AI Agent 技术发展背景 &#x1f680; AI Agent 的演进是一场从“遵循指令”到“自主决策”的深刻变革。早期&#xff0c;以规则引擎为核心的系统&#xff08;如关键词匹配的客服机器人&#xff09;只能在预设的流程上运行。然而&#xff0c;大语言模型的崛起为…...

Riverpod与GetX的优缺点对比

Riverpod 与 GetX 的优缺点对比 在 Flutter 开发领域,Riverpod 和 GetX 都是备受关注的状态管理与依赖注入框架,它们各有优劣,适用于不同的开发场景。以下从多个维度详细对比二者的优缺点。 一、Riverpod 的优缺点 (一)优点 架构清晰,数据流向明确:基于 Provider 模…...