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

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.mzph.cn/news/683690.shtml

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

相关文章

vim命令编辑完文件后,按ESC键退出编辑模式,无法进入命令模式解决方案

发现问题 在Vim编辑器中&#xff0c;我们通常需要按Esc键来退出编辑模式并进入命令模式。但有时&#xff0c;你可能会发现即使按了Esc键&#xff0c;也无法进入命令模式。这可能是由于某些设置或插件导致的。不过&#xff0c;有一个解决办法可以帮助你解决这个问题。 解决办法…

相机图像质量研究(15)常见问题总结:光学结构对成像的影响--暗角

系列文章目录 相机图像质量研究(1)Camera成像流程介绍 相机图像质量研究(2)ISP专用平台调优介绍 相机图像质量研究(3)图像质量测试介绍 相机图像质量研究(4)常见问题总结&#xff1a;光学结构对成像的影响--焦距 相机图像质量研究(5)常见问题总结&#xff1a;光学结构对成…

456. 车站分级(拓扑排序,虚拟点建图)

活动 - AcWing 一条单向的铁路线上&#xff0c;依次有编号为 1, 2, …, n1,  的 n 个火车站。 每个火车站都有一个级别&#xff0c;最低为 1 级。 现有若干趟车次在这条线路上行驶&#xff0c;每一趟都满足如下要求&#xff1a;如果这趟车次停靠了火车站 x&#xff0c;…

实现常用string

成员变量 class string{public: private:char* _str;size_t _size;size_t _capacity;}; 构造函数 string()//1:_str(new char[1])//:_str(nullptr),_size(0),_capacity(0){_str[0] \0;} new char[1]为了统一析构数组 string(const char* str "\0"):_size(strlen(…

Elasticsearch:特定领域的生成式 AI - 预训练、微调和 RAG

作者&#xff1a;来自 Elastic Steve Dodson 有多种策略可以将特定领域的知识添加到大型语言模型 (LLM) 中&#xff0c;并且作为积极研究领域的一部分&#xff0c;正在研究更多方法。 对特定领域数据集进行预训练和微调等方法使 LLMs 能够推理并生成特定领域语言。 然而&#…

指针练习题

一&#xff0e;选择题 1.变量的指针&#xff0c;其含义是指该变量的 B 。 A&#xff09;值 B&#xff09;地址 C&#xff09;名 D&#xff09;一个标志 2.已有定义int k2;int *ptr1,*ptr2;且ptr1和ptr2均已指向变量k&…

【深入理解DETR】DETR的原理与算法实现

1 DETR算法概述 ①端到端 ②Transformer-model 之前的方法都需要进行NMS操作去掉冗余的bounding box或者手工设计anchor&#xff0c; 这就需要了解先验知识&#xff0c;增加从超参数anchor的数量&#xff0c; 1.1 训练测试框架 一次从图像中预测n个object的类别 训练阶段我们…

Attention Is All Your Need论文翻译

0.摘要 这个统治序列转换模型是基于复杂循环或者卷积神经网络&#xff0c;它包含编码器和解码器。表现最好的模型也通过注意力机制来连接编码器和解码器。我们提出了一个新的简单网络架构——Transformer,它仅仅是是基于注意力机制&#xff0c;完全免去递推和卷积。在两个机器…

C语言——函数(第五讲)(上)

C语言——函数&#xff08;第五讲&#xff09; 前言函数的概念库函数标准库和库函数库函数的使用方法 ⾃定义函数形式形参和实参形参和实参的关系 前言 Hello,各位C语言的小伙伴们&#xff0c;大家过年好&#xff0c;我是莹莹。停更差不多一个月了&#xff0c;都是懒惰作怪&am…

C#面:利用 operator 声明且仅声明了 == ,有什么错误吗?

仅声明 是错误的&#xff0c;还要声明 ! 。 如果要重载一个运算符&#xff0c;就必须同时重载一组相关的运算符。因为运算符之间存在一些预定义的关系&#xff0c;需要同时进行重载以保持一致性。 public class MyClass {public int Value { get; set; }public static bool …

学习总结16

# 【模板】最小生成树 ## 题目描述 如题&#xff0c;给出一个无向图&#xff0c;求出最小生成树&#xff0c;如果该图不连通&#xff0c;则输出 orz。 ## 输入格式 第一行包含两个整数 N,M&#xff0c;表示该图共有 N 个结点和 M 条无向边。 接下来 M 行每行包含三个整数 …

9 个管理 Windows 硬盘的最佳免费磁盘分区软件 [2024 排名]

管理分区可能是一项具有挑战性的任务。当您想到删除、缩小、移动、磁盘分区或合并分区等方面时&#xff0c;您会认为它们是很难做到的事情。然而&#xff0c;虽然 Windows 自己的磁盘管理可以处理大部分问题&#xff0c;但它无法处理管理分区的所有方面。 这时候优质的磁盘管理…

python-游戏篇-初级-超级画板

文章目录 开发环境要求运行方法PyCharmVScode 代码main.pytools.py 效果 开发环境要求 本系统的软件开发及运行环境具体如下。 操作系统&#xff1a;Windows 7、Windows 10。Python版本&#xff1a;Python 3.7.1。开发工具&#xff1a;PyCharm 2018。Python内置模块&#xff…

uniapp中打开蓝牙需要哪些权限

在uniApp中进行蓝牙连接&#xff0c;需要获取以下权限&#xff1a; 蓝牙权限&#xff1a;用于扫描和连接蓝牙设备。定位权限&#xff1a;用于获取设备的位置信息&#xff0c;以便确定设备与蓝牙设备之间的距离。存储权限&#xff1a;用于读取和写入与蓝牙设备相关的数据。 获…

秒懂百科,C++如此简单丨第十九天:动态规划

目录 动态规划的初步理解 求最短路径数 洛谷 P1002 过河卒 题目描述 输入样例 输出样例 思路 AC Code 动态规划的初步理解 什么是动态规划&#xff1f;最直白的理解就是动态的规划。 那高级一点的理解呢&#xff1f;就是每时每刻都拿着一个小本本&#xff0c;也就是…

「优选算法刷题」:和可被K整除的子数组

一、题目 给定一个整数数组 nums 和一个整数 k &#xff0c;返回其中元素之和可被 k 整除的&#xff08;连续、非空&#xff09; 子数组 的数目。 子数组 是数组的 连续 部分。 示例 1&#xff1a; 输入&#xff1a;nums [4,5,0,-2,-3,1], k 5 输出&#xff1a;7 解释&…

C语言-----函数功能实现---strcpystrlen

1.函数功能参数介绍 该函数的功能就是把一个字符串复制到另外的一个数组&#xff0c;包括\0&#xff1b; 2.首先我们要明确字符串的复制也是包括最后的\0的&#xff1b; void mystrcpy(char* dest, char* src) {while (*src!\0){*dest *src;dest;src;}*dest *src;} int mai…

HGAME 2024 WEEK2 WP

文章目录 WEBWhat the cow say?Select More Coursesmyflask CryptomidRSAmidRSA revengebackpackbackpack revengebabyRSA奇怪的图片plus MISC我要成为华容道高手ek1ng_want_girlfriendezWord龙之舞 回老家了&#xff0c;初七晚上才回去&#xff0c;估计week3前几天不怎么能做…

类加载过程介绍

一、类的生命周期 类被加载到jvm虚拟机内存开始&#xff0c;到卸载出内存为止&#xff0c;他的生命周期可以分为&#xff1a;加载->验证->准备->解析->初始化->使用->卸载。 其中验证、准备、解析统一称为链接阶段 1、加载 将类的字节码载入方法区中&#xf…