二维数组及函数的非函数实现

news2024/11/24 13:36:48

2024年2月14日
1.请编程实现二维数组的杨慧三角

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void Yanghui(int n,int (*p)[n])
{
	for(int i=0;i<n;i++)
	{
		for(int j=0;j<=i;j++)
		{
			if(j==0||i==j)
			{
				*(*(p+i)+j)=1;
			}
			else
			{
				*(*(p+i)+j)=*(*(p+i-1)+j-1)+*(*(p+i-1)+j);
			}
		}
	}
}
int main(int argc, const char *argv[])
{
	int n;
	printf("pleasee enter n:");
	scanf("%d",&n);
	int arr[n][n];
	Yanghui(n,arr);
	for(int i=0;i<n;i++)
	{
		for(int j=0;j<=i;j++)
		{
			printf("%d ",arr[i][j]);
		}
		printf("\n");
	}

	return 0;
}


2.请编程实现二维数组计算每一行的和以及列和

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main(int argc, const char *argv[])
{
	int arr[2][3];
	//循环输入二维数组
	for(int i=0;i<2;i++)
	{
		for(int j=0;j<3;j++)
		{
			printf("please enter arr[%d][%d]:",i,j);
			scanf("%d",&arr[i][j]);
		}
	}
	//计算每一行的和
	for(int i=0;i<2;i++)
	{
		int sum1=0;
		for(int j=0;j<3;j++)
		{
			sum1+=arr[i][j];
		}
		printf("第%d行 sum1=%d\n",i+1,sum1);
	}
	//计算每一列的和
	for(int j=0;j<3;j++)
	{
		int sum2=0;
		for(int i=0;i<2;i++)
		{
			sum2+=arr[i][j];
		}
		printf("第%d列 sum2=%d\n",j+1,sum2);
	}
	return 0;
}


3.请编程实现二维数组计算第二大值

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main(int argc, const char *argv[])
{
	int arr[2][3];
	//循环输入数组
	for(int i=0;i<2;i++)
	{
		for(int j=0;j<3;j++)
		{
			printf("please enter arr[%d][%d]:",i,j);
			scanf("%d",&arr[i][j]);
		}
	}
	int max=arr[0][0],second_max=arr[0][0];
	for(int i=0;i<2;i++)
	{
		for(int j=0;j<3;j++)
		{
			if(max<arr[i][j])
			{
				max=arr[i][j];//找出最大值
			}
			if(second_max>arr[i][j])
			{
				second_max=arr[i][j];//用第二大值存储最小值
			}
		}
	}
	//再次遍历数组
	for(int i=0;i<2;i++)
	{
		for(int j=0;j<3;j++)
		{
			if(max==arr[i][j])
			{
				continue;//最大值则跳过
			}
			if(second_max<arr[i][j])
			{
				second_max=arr[i][j];//大于最小值则赋值给第二大值
			}
		}
	}
	printf("second_max=%d\n",second_max);
	return 0;
}


4.请使用非函数方法实现系统函数strcat,strcmp,strcpy,strlen

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
void my_strcat(char *dest,char *src);
int my_strcmp(char *dest,char *src);
void my_strcpy(char *dest,char *src);
int my_strlen(char *dest);
int main(int argc, const char *argv[])
{
	char dest[20]="";
	char src[20]="";
	printf("please enter dest:");
	gets(dest);
	printf("please enter src:");
	gets(src);
	my_strcat(dest,src);
	puts(dest);
	int a=my_strcmp(dest,src);
	if(a>0){
		puts("dest>src");
	}else if(a<0){
		puts("dest<src");
	}else{
		puts("dest=src");
	}
	my_strcpy(dest,src);
	puts(dest);
	int len=my_strlen(dest);
	printf("strlen=%d\n",len);
	return 0;
}
void my_strcat(char *dest,char *src)
{
	int i,j;
	for(i=0;*(dest+i)!='\0';i++);
	for(j=0;*(src+j)!='\0';j++)
	{
		*(dest+i+j)=*(src+j);
	}
	*(dest+i+j)='\0';
}
int my_strcmp(char *dest,char *src)
{
	int i=0;
	while(*(dest+i)==*(src+i))
	{
		if(*(dest+i)=='\0')
		{
			break;
		}
		i++;
	} 
	int a=*(dest+i)-*(src+i);
	return a;
}
void my_strcpy(char *dest,char *src)
{
	int i;
	for(i=0;*(src+i)!='\0';i++)
	{
		*(dest+i)=*(src+i);
	}
	*(dest+i)='\0';
}
int my_strlen(char *dest)
{
	int i;
	for(i=0;*(dest+i)!='\0';i++);
	return i;
}

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

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

相关文章

SpringBoot整合GateWay(详细配置)

前言 在Spring Boot中整合Spring Cloud Gateway是一个常见的需求&#xff0c;尤其是当需要构建一个微服务架构的应用程序时。Spring Cloud Gateway是Spring Cloud生态系统中的一个项目&#xff0c;它提供了一个API网关&#xff0c;用于处理服务之间的请求路由、安全、监控和限流…

Ubuntu20.04 安装jekyll

首先使根据官方文档安装&#xff1a;Jekyll on Ubuntu | Jekyll • Simple, blog-aware, static sites 如果没有报错&#xff0c;就不用再继续看下去了。 我这边在执行gem install jekyll bundler时报错&#xff0c;所以安装了rvm&#xff0c;安装rvm可以参考这篇文章Ubuntu …

【网站项目】155在线考试与学习交流网页平台

&#x1f64a;作者简介&#xff1a;拥有多年开发工作经验&#xff0c;分享技术代码帮助学生学习&#xff0c;独立完成自己的项目或者毕业设计。 代码可以私聊博主获取。&#x1f339;赠送计算机毕业设计600个选题excel文件&#xff0c;帮助大学选题。赠送开题报告模板&#xff…

Ubuntu 20.04 安装RVM

RVM是管理Ruby版本的工具,使用RVM可以在单机上方便地管理多个Ruby版本。 下载安装脚本 首先使下载安装脚本 wget https://raw.githubusercontent.com/rvm/rvm/master/binscripts/rvm-installer 如果出现了 Connection refused 的情况, 可以考虑执行以下命令修改dns,再执…

2024HVV | 12款开源渗透测试工具(非常详细)零基础入门到精通,收藏这一篇就够了

回顾过去&#xff0c;黑客入侵异常困难&#xff0c;需要大量手动操作。然而&#xff0c;如今&#xff0c;一套自动化测试工具让渗透测试人员变身“半机械人”&#xff0c;能够比以往任何时候都更轻松地完成更多测试。以下12款开源渗透测试工具&#xff0c;可以帮助渗透测试人员…

羊大师发现,奶源对羊奶会产生如此重大的影响

羊大师发现&#xff0c;奶源对羊奶会产生如此重大的影响 羊奶对于人类来说是一种极其营养丰富的食物&#xff0c;日常生活中必不可少。而对于儿童来说&#xff0c;除母乳外&#xff0c;奶粉也是一种非常重要的营养补充品。成人饮用的羊奶对于羊奶的来源和产地要求较低&#xf…

【c++】list详细讲解

> 作者简介&#xff1a;დ旧言~&#xff0c;目前大二&#xff0c;现在学习Java&#xff0c;c&#xff0c;c&#xff0c;Python等 > 座右铭&#xff1a;松树千年终是朽&#xff0c;槿花一日自为荣。 > 目标&#xff1a;熟悉list库 > 毒鸡汤&#xff1a;你的脸上云淡…

五分钟搭建本地大数据集群

引言 刚接触大数据以及部分接触大数据多年的伙伴可能从来没有自己搭建过一套属于自己的大数据集群&#xff0c;今天就花点时间聊聊怎么快速搭建一套属于自己、且可用于操作、调试的大数据集群 正文 本次搭建的组件都有以下服务以及对应的版本 hadoop&#xff08;3.2.4&…

MySQL运行错误:‘mysql‘不是内部或外部命令,也不是可运行程序或批处理文

主要原因是&#xff1a;没有将mysql安装目录下的bin目录&#xff0c;添加到系统变量中 编辑系统环境变量 双击Path即可 下一步 记得每一步点击确定就好啦。 下面验证一下是否成功呢&#xff1f; 输入命令符(V是大写的哦~&#xff09; mysql -V 以上就是成功啦&#xff01…

【VTKExamples::PolyData】第三十三期 MiscCellData

很高兴在雪易的CSDN遇见你 VTK技术爱好者 QQ:870202403 前言 本文分享VTK样例MiscCellData,了解如何创建PolyData数据,希望对各位小伙伴有所帮助! 感谢各位小伙伴的点赞+关注,小易会继续努力分享,一起进步! 你的点赞就是我的动力(^U^)ノ~YO 1. MiscCellData /…

用Java实现简单的图书管理系统

目录 1.总体框架 2.book包 Books类 booklist类 3.operation包 IO接口&#xff1a; addbooks类&#xff1a; borrowbooks类&#xff1a; delbooks类&#xff1a; returnbooks类&#xff1a; exit类&#xff1a; 4.user包 user类 Adminuser类&#xff08;难点&#…

阅读笔记(BMSB 2018)Video Stitching Based on Optical Flow

参考文献 Xie C, Zhang X, Yang H, et al. Video Stitching Based on Optical Flow[C]//2018 IEEE International Symposium on Broadband Multimedia Systems and Broadcasting (BMSB). IEEE, 2018: 1-5. 摘要 视频拼接在计算机视觉中仍然是一个具有挑战性的问题&#xff0…

StarRocks表设计——分区分桶与副本数

目录 一、数据分布 1.1 概述 1.2 数据分布方式 1.2.1 Round-Robin 1.2.2 Range 1.2.3 List 1.2.4 Hash 1.3 StarRocks的数据分布方式 1.3.1 不分区 Hash分桶 1.3.2 Range分区Hash分桶 三、分区 3.1 分区概述 3.2 创建分区 3.2.1 手动创建分区 3.2.2 批量创建分区…

2.1.1 摄像头

摄像头 更多内容&#xff0c;请关注&#xff1a; github&#xff1a;https://github.com/gotonote/Autopilot-Notes.git 摄像头是目前自动驾驶车中应用和研究最广泛的传感器&#xff0c;其采集图像的过程最接近人类视觉系统。基于图像的物体检测和识别技术已经相当成熟&#…

探讨深度学习

深度学习 深度学习概述进展崛起框架 主页传送门&#xff1a;&#x1f4c0; 传送 深度学习 概述 深度学习是机器学习领域的一个分支&#xff0c;它是一种基于人工神经网络的学习方法&#xff0c;旨在让 计算机模仿人类大脑的神经结构和学习方式&#xff0c;从大量数据中学习并…

SIFT 2D/3D检测原理

一、SIFT 2D 二、SIFT 3D SIFT 3D关键点检测以及SAC-IA粗配准-CSDN博客

人脸关键点标注工具

做人脸关键点时&#xff0c;发现网上的标注工具大部分都不好用&#xff0c;把好用的记录一下&#xff0c;给大家推荐一下&#xff1a; 人体关键点ai自动标注工具_哔哩哔哩_bilibili 人脸关键点数据集300w&#xff0c; https://download.csdn.net/download/u011385476/12344931…

mysql 执行update操作 记录未修改

问题 mysql 执行update操作 记录未修改 详细问题 笔者进行SpringBootMybatis项目开发&#xff0c;确认执行update操作 控制台内容如下 Creating a new SqlSession SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession3cbe9459] was not registered for sync…

视频号小店怎么做?新手必须掌握的三点核心步骤,建议收藏

大家好&#xff0c;我是电商花花。 现在短视频的快速发展&#xff0c;电商和直播、短视频不断结合发展&#xff0c;在去年视频号小店也迎来了大爆发&#xff0c;有不少朋友都靠着做视频号小店赚到了自己做电商的第一捅金&#xff0c;直接让很多朋友接触视频号小店&#xff0c;…

SHERlocked93 的 2020 年终总结

在下 SHERlocked93&#xff0c;两年半的南京前端打字员&#xff0c;慕课专栏《JavaScript 设计模式精讲》作者&#xff0c;公众号「前端下午茶」博主。 往年大家都是春节前写年终总结&#xff0c;今年好像都提前到了元旦。但我还是和往年一样&#xff0c;总结发的又晚了一点&am…