Day 9

2023-11-04

1.在主函数定义一维数组并赋值

要求:①.定义函数实现冒泡排序[有参无返函数]

           ②.定义函数实现输出[有参无返函数]

#include<stdio.h>
void BubbleSort(int *arr,int len);
void Print(int *arr,int len);
int main(){
	int i,len;
	int arr[5];
	printf("please enter a array:\n");
	len=sizeof(arr)/sizeof(int);
	for(i=0;i<len;i++){
		scanf("%d",&arr[i]);
	}
	BubbleSort(arr,len);
	Print(arr,len);
	return 0;	
}
void BubbleSort(int *arr,int len){
	int i,j,temp;
	for(i=1;i<len-1;i++){
		for(j=0;j<len-i;j++){
			if(arr[j]>arr[j+1]){
				temp=arr[j];
				arr[j]=arr[j+1];
				arr[j+1]=temp;
			}
		}
	}
}
void Print(int *arr,int len){
	int i;
	for(i=0;i<len;i++)
		printf("%d ",arr[i]);
}

运行结果如图:

2.在主函数定义二维数组并赋值

要求:①.定义函数计算二维数组最大值[有参无返函数,返回最大值]

           ②.定义函数计算二维数组最小值[有参无返函数,返回最大值]

           ③.定义函数计算二维数组第二大值[有参无返函数,返回最大值]

 

#include<stdio.h>
int Max(int arr[][3],int line,int row){
	int i,j,max;
	max=arr[0][0];
	for(i=0;i<line;i++){
		for(j=0;j<row;j++){
			if(max<arr[i][j]){
				max=arr[i][j];
			}
		}
	}
	return max;
}
int Min(int arr[][3],int line,int row){
	int i,j,min;
	min=arr[0][0];
	for(i=0;i<line;i++){
		for(j=0;j<row;j++){
			if(min>arr[i][j]){
				min=arr[i][j];
			}
		}
	}
	return min;
}
int SecondMax(int arr[][3],int line,int row){
	int i,j,secondmax;
	int max_i,max_j,min_i,min_j;
	int max2_i,min2_j;
	for(i=0;i<line;i++){
		for(j=0;j<row;j++){
			if(arr[i][j]==Max(arr,line,row)){
				max_i=i;
				max_j=i;
			}
			if(arr[i][j]==Min(arr,line,row)){
				min_i=i;
				min_j=i;
			}	
		}
	}
	secondmax=Min(arr,line,row);
	for(i=0;i<line;i++){
		for(j=0;j<row;j++){
			if(i==max_i&&j==max_j){
				continue;
			}
			if(secondmax<arr[i][j]){
				secondmax=arr[i][j];
			}
		}
	}
	return secondmax;
}
int main(){
	int i,j,line,row;
	int arr[3][3]={0};
	line=sizeof(arr)/sizeof(arr[0]);
	row=sizeof(arr[0])/sizeof(arr[0][0]);
	printf("请输入一个二维数组:\n");
	for(i=0;i<line;i++){
		for(j=0;j<row;j++){
			scanf("%d",&arr[i][j]);
		}
	}
	int max,min,secondmax;
	max=Max(arr,line,row);
	min=Min(arr,line,row);
	secondmax=SecondMax(arr,line,row);
	printf("二维数组最大值为:%d,最小值为:%d,第二大值为:%d",max,min,secondmax);
	return 0;
}

运行结果如图:

3.定义函数实现字符串拷贝

 

#include<stdio.h>
void Strcpy(char *str1,char *str2);
int main(){
	char str1[40],str2[20];
	printf("please enter two strings:\n");
	gets(str1);
	gets(str2);
	Strcpy(str1,str2);
} 
void Strcpy(char *str1,char *str2){
	int i;
	for(i=0;str1[i]!='\0';i++){
		str1[i]=str2[i];
	}
	printf("拷贝后:%s",str1);
}

运行结果如图:

4.定义函数实现字符串连接

 

#include<stdio.h>
void Strcat(char *str1,char *str2);
int main(){
	char str1[40],str2[20];
	printf("please enter two strings:\n");
	gets(str1);
	gets(str2);
	Strcat(str1,str2);
} 
void Strcat(char *str1,char *str2){
	int i,len=0;
	for(i=0;str1[i]!='\0';i++){
		len++;
	}
	for(i=0;str2[i]!='\0';i++){
		str1[len++]=str2[i];
	}
	str1[len]='\0';
	printf("%s",str1);
}

运行结果如图:

 

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

Day 9 的相关文章

随机推荐

  • 神经网络 AI torch 构造自己的数据集(包含标签或者不包含标签)

    AI learning 用于学习train 验证val的图片目录结构形式如下 一般为自己构造的图像数据的目录 这是一个简单的图像二分类问题 两个类别为正常 normal 或者异常 abnormal 数据集分为 train 训练集 val 验
  • 筛选(数组里竖向都为0的删除)

    let arr 0 0 0 0 0 1 5 6 0 0 0 0 0 0 0 0 3 1 5 6 0 0 0 0 0 0 0 0 0 1 5 6 0 4 0 0 0 0 1 0 0 1 5 6 0 0 3 0 0 0 0 0 2 1 5 6
  • VMware-tools安装以及找不到共享文件夹的解决办法

    VMware tools安装以及找不到共享文件夹的解决办法 一 安装VMWare tools 1 以root身份进入linux 2 点击VMWare虚拟机栏目下的安装VMwaretools选项 如果安装过该工具 这个选项会显示为重新安装或者
  • 表的内连接、外连接

    1 内连接 内连接实际上就是利用where子句对两种表形成的笛卡儿积进行筛选 是使用的最多的连接查询 select 字段 from 表1 inner join 表2 on 连接条件 and 其他条件 一般的写法 select ename d
  • api接口、RPC、WebService分别解决什么问题?

    api接口 RPC WebService分别解决什么问题
  • 深度学习中的迁移学习介绍

    迁移学习 Transfer Learning 的概念早在20世纪80年代就有相关的研究 这期间的研究有的称为归纳研究 inductive transfer 知识迁移 knowledge transfer 终身学习 life long lea
  • Java中的DatagramPacket与DatagramSocket的初步

    1 基本概念 a DatagramPacket与DatagramSocket位于java net包中 b DatagramPacket表示存放数据的数据报 DatagramSocket表示接受或发送数据报的套接字 c 由这两个类所有构成的网
  • 安装GPU版本的pytorch

    前言 最近新建了一个虚拟环境 但是在跑代码的时候出现问题 libc10 cuda so cannot open shared object file No such file or directory 去网上搜了一下 说是安装的pytorc
  • 浅析消费金融风控之贷中、贷前、贷后风控(风控模型、决策引擎)

    消费金融迎来 爆发增长 期 预计到2020年 我国消费信贷总市场规模将达到45万亿元 年复合增长率将达到18 前景广阔的消费金融市场 将成为我国经济发展的重要内驱力 业务痛点 征信体系缺失 分支风控标准不一 欺诈手段层出不穷 多头借贷现象普
  • 谈谈「数据仓库构建与分层」

    1 先导知识之 数据库与ER建模 1 1 数据库 DataBase 数据库是按照数据结构来组织 存储和管理数据的仓库 是一个长期存储在计算机内的 有组织的 可共享的 统一管理的大量数据的集合 数据库是以一定方式储存在一起 能与多个用户共享
  • CentOS7搭建Redis Cluster

    目录 什么是Redis Cluster Redis集群介绍 Redis 集群的数据分片 Redis 集群的主从复制模型 Redis 一致性保证 搭建Redis Cluster 三主三从 准备工作 启动所有节点服务 建立集群关系 验证 集群状
  • 找回误删除的文件

    author skate time 2009 11 19 今天在网上帮个美女恢复数据 他昨天不小心 把重要文件删除 而今天又急用 于是我就帮个小忙用两款数据维护软件DiskGenius EasyRecovery帮其恢复 这两个软件结合使用
  • python自定义标识符_python自定义异常

    python自定义异常 try 异常在try块里抛 如果会产生多个异常 捕捉第一个 匹配except 后边的不再捕捉 except 抓异常 else try无异常 才会执行else finally 无论try块是否抛异常 永远执行的代码 通
  • ZYNQ产品生产拷机问题思考

    目前设计的ZYNQ产品支持QSPIFLASH SDka EMMC启动 主要启动方式主要有以下几种 全部启动文件存放在QSPIFLASH ZYNQ支持的QSPIFLASH为16MB大小 如果UBOOT 内核 设备树 文件系统全部存放在QSPI
  • 爬虫破解js加密破解(二) 有道词典js加密参数 sign破解

    在爬虫过程中 经常给服务器造成压力 比如耗尽CPU 内存 带宽等 为了减少不必要的访问 比如爬虫 网页开发者就发明了反爬虫技术 常见的反爬虫技术有封ip user agent 字体库 js加密 验证码 字符验证码 滑动验证码 点触式验证码等
  • Qt中如何让Widget窗体等子控件随边框自适应缩放

    实现的原则很简单 一切子控件都要在布局中添加 如果是widget作控件 widget内部也要有布局 本文将通过Qt Designer和代码化UI设计两种途径讲解实现方法 一 以Qt Designer为例 想要在这个Widget窗体内部再添加
  • Nginx反向代理与conf原理

    Nginx主要功能 Webservice 反向代理 负载均衡 逻辑上 nginx和server的关系是这样的 Nginx和路由器 交换机有什么区别 路由器是物理网关 nginx是应用层网关 物理上 他们的关系是下图这样的 Nginx hap
  • 第21章_瑞萨MCU零基础入门系列教程之事件链接控制器ELC

    本教程基于韦东山百问网出的 DShanMCU RA6M5开发板 进行编写 需要的同学可以在这里获取 https item taobao com item htm id 728461040949 配套资料获取 https renesas do
  • C语言详解系列——循环语句详解(1)while语句的语法结构

    文章目录 while语句 break continue while语句 之前的学习中我们了解到了if语句的用法 这个语句只会执行一次 但在我们的生活当中有许多事情是需要重复去做的 那我们应该怎么实现呢 C语言当中给我们引入了 while语句
  • Day 9

    1 在主函数定义一维数组并赋值 要求 定义函数实现冒泡排序 有参无返函数 定义函数实现输出 有参无返函数 include