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

实验八 指针2

7-1 利用指针返回多个函数值

分数 30

全屏浏览

切换布局

作者 陈晓梅

单位 广东外语外贸大学

读入n个整数,调用max_min()函数求这n个数中的最大值和最小值。

输入格式:

输入有两行:
第一行是n值;
第二行是n个数。

输出格式:

输出最大值和最小值。

输入样例:

在这里给出一组输入。例如:

5
8 9 12 0 3

输出样例:

在这里给出相应的输出。例如:

max = 12
min = 0
#include<stdio.h>
int *max_min(int *p,int n)
{int i;static int a[2];*a=*(a+1)=*p;for(i=0;i<n;i++){if(*(p+i)>*a){*a=*(p+i);}if(*(p+i)<*(a+1)){*(a+1)=*(p+i);}}return a;
}
int main()
{int n,*p,i;scanf("%d",&n);int a[n];for(i=0;i<n;i++){scanf("%d",&a[i]);}int *m = max_min(a,n);printf("max = %d\nmin = %d\n",*m,*(m+1));return 0;
}

7-2 逆置一维数组

分数 10

全屏浏览

切换布局

作者 usx程序设计类课程组

单位 绍兴文理学院

编写程序,以指针的方式,就地逆置一维数组。

输入格式:

首先输入一个正整数T,表示测试数据的组数,然后是T组测试数据。每组测试数据先输入数据个数n,然后输入n个整数。

输出格式:

对于每组测试,在一行上输出逆置之后的结果。数据之间以一个空格分隔。

输入样例:

2
4 1 2 5 3
5 4 3 5 1 2

输出样例:

3 5 2 1
2 1 5 3 4
#include<stdio.h>
int f(int*a,int n)
{int t=0;for(int i=0;i<n/2;i++){t=*(a+i);*(a+i)=*(a+n-i-1);*(a+n-i-1)=t;}for(int i=0;i<n;i++){if(i==0)printf("%d",*a);elseprintf(" %d",*(a+i));}
}
int main()
{int T,n;scanf("%d",&T);while(T>0){scanf("%d",&n);int a[n];for(int i=0;i<n;i++){scanf("%d",&a[i]);}f(a,n);printf("\n");T--;}return 0;
}

7-3 两数的互换

分数 30

全屏浏览

切换布局

作者 王群芳

单位 合肥师范学院

从键盘任意输入两个整数,用指针作函数参数,编程实现将其交换后再重新输出。

函数接口:

void swap(int *x, int *y)

输入格式:

从键盘输入两个整数。

输出格式:

按输出样例的形式输出交换后的两个整数。

输入样例:

11 22

输出样例:

After swap:22,11
#include<stdio.h>
void swap(int *x,int *y)
{printf("After swap:%d,%d",*y,*x);
}
int main()
{int x,y;scanf("%d %d",&x,&y);swap(&x,&y);return 0;
}

7-4 sdut-C语言实验-虎子的难题

分数 10

全屏浏览

切换布局

作者 马新娟

单位 山东理工大学

稷下英才实验班有个同学叫虎子,有一天虎子刷到了一道编程题:给M(M<=100)组数据,每组数据有N个正整数(N<=100),要求把每组的N个数按升序排成一行。虎子觉得应该用指针和函数实现比较高效,但总是调试不出来,你能帮帮他吗?

输入格式:

输入包括M+1行,第一行是两个正整数M、N;M表示总共多少组数据,下面M行每行包含N个正整数。(输入数据之间会用空格隔开)

输出格式:

输出包括M行,每行分别对应输入中M组数据的升序序列,数与数之间用一个空格隔开。

输入样例:

2 3
1 3 2
4 2 6

输出样例:

在这里给出相应的输出。例如:

1 2 3
2 4 6
#include<stdio.h>
void f(int *q,int n)
{int i,j,t;for(i=0;i<n-1;i++){for(j=i+1;j<n;j++){if(*(q+i)>=*(q+j)){t=*(q+i);*(q+i)=*(q+j);*(q+j)=t;}}}
}
int main()
{int m,n,i,j;scanf("%d %d",&m,&n);int nums[m][n];for(i=0;i<m;i++){for(j=0;j<n;j++){scanf("%d",&nums[i][j]);}}for(i=0;i<m;i++){f(nums[i],n);}for(i=0;i<m;i++){for(j=0;j<n;j++){if(j==0){printf("%d",nums[i][j]);}else{printf(" %d",nums[i][j]);}}printf("\n");}return 0;
}

相关文章:

实验八 指针2

7-1 利用指针返回多个函数值 分数 30 全屏浏览 切换布局 作者 陈晓梅 单位 广东外语外贸大学 读入n个整数&#xff0c;调用max_min()函数求这n个数中的最大值和最小值。 输入格式: 输入有两行&#xff1a; 第一行是n值&#xff1b; 第二行是n个数。 输出格式: 输出最大…...

1 数据库(下):多表设计 、多表查询 + SQL中的with查询语法(MySQL8.0以后版本才支持这种新语法)+ 数据库优化(索引优化)

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、多表设计1 多表设计-概述2 三种多表关系一对多&#xff08;多对一&#xff09;&#xff08;1&#xff09;无外键约束&#xff08;逻辑外键&#xff09;&…...

什么是.net framework,什么是.net core,什么是.net5~8,版本对应关系

我不知道有多少人和我一样&#xff0c;没学习过.netCore&#xff0c;想要学习&#xff0c;但是版本号太多就蒙了&#xff0c;不知道学什么了&#xff0c;这里解释下各个版本的关系 我们一般开始学习微软的时候&#xff0c;都是开始学习的.netframework&#xff0c;常用的就是4…...

vulhub-wordpress靶场

一.主题上传漏洞 来到靶场点击主题选择add new 这里有一个上传主题的地方 我们可以去网上找到wordpress主题下载一个 wordpress模板 网页设计模板 免费 免费下载 - 爱给网 下载完成后对我们有用的东西只有这一个目录&#xff0c;把它拖出来 点开moban目录后&#xff0c;创建…...

安装与配置

《PHP Libxml》是一个在PHP中处理XML和HTML文档的重要库。它提供了丰富的API&#xff0c;支持DOM、SimpleXML和XMLReader等多种解析方式&#xff0c;广泛应用于各种编程语言和项目中。 安装与配置 安装: 在PHP中&#xff0c;libxml扩展通常是默认启用的。如果你需要手动安装&…...

斗鱼Android面试题及参考答案

常用的图片框架有哪些? Glide:是一个快速高效的 Android 图片加载库,专注于平滑滚动。它支持多种图片格式,包括 GIF,具有高效的缓存策略,能自动管理图片的生命周期,避免内存泄漏和 OOM 错误。其 API 简洁易用,可轻松实现图片的加载、显示和缓存等功能,如一行代码即可实…...

Could not install Gradle distribution from 的解决办法

在安装完成AndroidStudio之后,运行工程出现如下错误 Could not install Gradle distribution from https://services.gradle.org/distributions/gradle-6.5-bin.zip. 错误原因是:对应版本的Gradle文件下载失败了,我这里是gradle-6.5-bin.zip,不同版本的android studio也可…...

基于 SensitiveWordBs 实现敏感词过滤功能

在现代的互联网应用中&#xff0c;敏感词过滤已成为一个必不可少的功能&#xff0c;尤其是在社交媒体、评论审核等需要保证内容健康的场景下。本文将基于开源库https://github.com/houbb/sensitive-word&#xff0c;详细讲解如何通过自定义敏感词库和工具类实现高效的敏感词过滤…...

网络安全威胁2024年中报告

下载地址&#xff1a; 网络安全威胁2024年中报告-奇安信...

批次特征组杂记

批次特征组杂记 运维的时候新增了一个批次特征&#xff0c;然后发现不能按照要求跑到之前已经分好的批次特征组。 研究了半天原来是通过布局实现的。 特此记录。...

【HarmonyOS】解决自定义弹框和键盘之间安全距离的问题

【HarmonyOS】解决自定义弹框和键盘之间安全距离的问题 一、问题背景 我们在应用开发评论输入框时&#xff0c;常规的需求样式是&#xff1a;输入框view和键盘贴近&#xff0c;上半部展示信息区的形式&#xff0c;这样的设计&#xff0c;方便用户不割裂的去评论发言。 但是在…...

如何在LabVIEW中更好地使用ActiveX控件?

在LabVIEW中&#xff0c;ActiveX控件可以帮助实现与其他应用程序或第三方组件的集成&#xff08;例如Microsoft Excel、Word、Internet Explorer等&#xff09;。以下是一些建议&#xff0c;帮助您更好地在LabVIEW中使用ActiveX控件&#xff1a; ​ 1. 理解ActiveX控件的基本原…...

【视觉SLAM:四、相机与图像】

相机模型 相机模型是计算机视觉中的重要内容&#xff0c;用于描述真实相机如何将三维世界投影到二维图像平面。以下从多个角度介绍常见的相机模型。 针孔相机模型 针孔相机模型是最简单的相机模型&#xff0c;用数学公式描述从三维世界到二维图像平面的映射关系。核心公式如…...

如何利用无线路由器实现水泵房远程监测管理

水泵站广泛部署应用在工农业用水、防洪、排涝和抗旱减灾等方面&#xff0c;如果水泵站发生异常&#xff0c;往往会对生产生活造成诸多损失&#xff0c;甚至引发安全事故。因此&#xff0c;建立一套高效、可靠的泵站远程监测管理系统至关重要。 方案背景 目前&#xff0c;我国大…...

使用ArcGIS Pro自带的Notebook计算多个遥感指数

在之前的分享中&#xff0c;我们介绍了如何使用ArcPy将GEE下载的遥感影像转为单波段文件。基于前面创建的单波段文件&#xff0c;我们可以一次性计算多种遥感指数&#xff0c;例如NDVI、EVI、NDSI等。我这里直接在ArcGIS Pro中自带的Notebook进行的运行。如下图所示&#xff0c…...

宝塔-firefox(Docker应用)-构建自己的Web浏览器

安装基础软件 宝塔中安装firefox(Docker应用) 。宝塔中需要先安装docker及docker-composefirefox配置安装 点击firefox应用&#xff0c;选择【安装配置】点击右边绿色按钮&#xff0c;进行安装&#xff0c;这一步等待docker-compose根据你的配置初始化docker应用 等待安装 …...

OpenCV-Python实战(8)——图像变换

一、缩放 cv2.resize() img cv2.resize(src*,dsize*,fx*,fy*,interpolation*) img&#xff1a;目标图像。 src&#xff1a;原始图像。 dsize&#xff1a;&#xff08;width&#xff0c;height&#xff09;图像大小。 fx、fy&#xff1a;可选参数&#xff0c;水平/垂直方向…...

存储进阶笔记(二):Linux 存储栈:从 Device Mapper、LVM 到文件系统(2024)

记录一些平时接触到的存储知识。由于是笔记而非教程&#xff0c;因此内容不求连贯&#xff0c;有基础的同学可作查漏补缺之用。 存储进阶笔记&#xff08;一&#xff09;&#xff1a;硬件基础&#xff1a;HDD/SDD、JBOD、RAID 等&#xff08;2024&#xff09; 存储进阶笔记&am…...

Linux(Centos 7.6)基础命令/常用命令说明

1.目录相关命令 命令命令说明pwd用于显示/打印当前目录位置。ls/ll 列出当前目录下的文件或者目录&#xff0c;ll是ls -l的别名&#xff0c;ls仅显示名称&#xff0c;ll会显示详细的目录文件信息。 cd目录切换&#xff0c;常见用法有&#xff0c;cd /切换到根目录&#xff0c;…...

超详细!一文搞定PID!嵌入式STM32-PID位置环和速度环

本文目录 一、知识点1. PID是什么&#xff1f;2. 积分限幅--用于限制无限累加的积分项3. 输出值限幅--用于任何pid的输出4. PID工程 二、各类PID1. 位置式PID&#xff08;用于位置环&#xff09;&#xff08;1&#xff09;公式&#xff08;2&#xff09;代码使用代码 2. 增量式…...

铭豹扩展坞 USB转网口 突然无法识别解决方法

当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…...

C++:std::is_convertible

C++标志库中提供is_convertible,可以测试一种类型是否可以转换为另一只类型: template <class From, class To> struct is_convertible; 使用举例: #include <iostream> #include <string>using namespace std;struct A { }; struct B : A { };int main…...

shell脚本--常见案例

1、自动备份文件或目录 2、批量重命名文件 3、查找并删除指定名称的文件&#xff1a; 4、批量删除文件 5、查找并替换文件内容 6、批量创建文件 7、创建文件夹并移动文件 8、在文件夹中查找文件...

基于数字孪生的水厂可视化平台建设:架构与实践

分享大纲&#xff1a; 1、数字孪生水厂可视化平台建设背景 2、数字孪生水厂可视化平台建设架构 3、数字孪生水厂可视化平台建设成效 近几年&#xff0c;数字孪生水厂的建设开展的如火如荼。作为提升水厂管理效率、优化资源的调度手段&#xff0c;基于数字孪生的水厂可视化平台的…...

unix/linux,sudo,其发展历程详细时间线、由来、历史背景

sudo 的诞生和演化,本身就是一部 Unix/Linux 系统管理哲学变迁的微缩史。来,让我们拨开时间的迷雾,一同探寻 sudo 那波澜壮阔(也颇为实用主义)的发展历程。 历史背景:su的时代与困境 ( 20 世纪 70 年代 - 80 年代初) 在 sudo 出现之前,Unix 系统管理员和需要特权操作的…...

代理篇12|深入理解 Vite中的Proxy接口代理配置

在前端开发中,常常会遇到 跨域请求接口 的情况。为了解决这个问题,Vite 和 Webpack 都提供了 proxy 代理功能,用于将本地开发请求转发到后端服务器。 什么是代理(proxy)? 代理是在开发过程中,前端项目通过开发服务器,将指定的请求“转发”到真实的后端服务器,从而绕…...

算法:模拟

1.替换所有的问号 1576. 替换所有的问号 - 力扣&#xff08;LeetCode&#xff09; ​遍历字符串​&#xff1a;通过外层循环逐一检查每个字符。​遇到 ? 时处理​&#xff1a; 内层循环遍历小写字母&#xff08;a 到 z&#xff09;。对每个字母检查是否满足&#xff1a; ​与…...

MFC 抛体运动模拟:常见问题解决与界面美化

在 MFC 中开发抛体运动模拟程序时,我们常遇到 轨迹残留、无效刷新、视觉单调、物理逻辑瑕疵 等问题。本文将针对这些痛点,详细解析原因并提供解决方案,同时兼顾界面美化,让模拟效果更专业、更高效。 问题一:历史轨迹与小球残影残留 现象 小球运动后,历史位置的 “残影”…...

【C++特殊工具与技术】优化内存分配(一):C++中的内存分配

目录 一、C 内存的基本概念​ 1.1 内存的物理与逻辑结构​ 1.2 C 程序的内存区域划分​ 二、栈内存分配​ 2.1 栈内存的特点​ 2.2 栈内存分配示例​ 三、堆内存分配​ 3.1 new和delete操作符​ 4.2 内存泄漏与悬空指针问题​ 4.3 new和delete的重载​ 四、智能指针…...

android RelativeLayout布局

<?xml version"1.0" encoding"utf-8"?> <RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android"android:layout_width"match_parent"android:layout_height"match_parent"android:gravity&…...