C语言之数组反转

C语言之数组反转数组反转是数组常见操作。大概来写一写数组反转添加上自己的理解注释。#include<stdio.h>#defineN6intmain(){inta[N]={0,1,2,3,4,5};inti;intt;intj;//反转算法for(i=0;i<N/2;i++){t=a[i];a[i]=a[N-1-i];a[N-1-i]=t;//遍历输出,每对换一对数值就打印一次数组

大家好,又见面了,我是你们的朋友全栈君。

数组反转是数组常见操作。大概来写一写数组反转添加上自己的理解注释。

#include <stdio.h>
#define N 6

int main()
{ 
   
  int a[N] = { 
   0,1,2,3,4,5};
  int i;
  int t;
  int j;
  
//反转算法
  for(i=0;i<N/2;i++)
  { 
   
    t = a[i];
    a[i] = a[N-1-i];
    a[N-1-i] = t;

//遍历输出,每对换一对数值就打印一次数组
    for (j=0;j<N;j++)
    { 
   
      printf("%d\t",a[j]);
    }
      printf("\n");
  }
}

反转算法就是将第0个和最后一个(第N-1个)数值对换,第1个和第N-2个数值对换,依次类推,第i个和第N-1-i个数值对换。
如果数组元素是偶数个,正好是最中间两个元素数值对换;如果是奇数个元素,中间一个元素不需要对换,比如数组a共5个元素,i<N/2就是i<2,则a[0]和a[4]对换,a[1]和a[3]对换,a[2]保持原数值即可。

输出结果:
在这里插入图片描述
如果想直接获得反转之后的数组结果:

#include <stdio.h>
#define N 6

int main()
{ 
   
  int a[N] = { 
   0,1,2,3,4,5};
  int i;
  int t;
  int j;
  
//反转算法
  for(i=0;i<N/2;i++)
  { 
   
    t = a[i];
    a[i] = a[N-1-i];
    a[N-1-i] = t;
  }
  //遍历输出,数组反转之后结果输出
    for (j=0;j<N;j++)
    { 
   
      printf("%d\t",a[j]);
    }
      printf("\n");
}

执行结果:
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/136686.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • phpstorm 激活码_在线激活

    (phpstorm 激活码)2021最新分享一个能用的的激活码出来,希望能帮到需要激活的朋友。目前这个是能用的,但是用的人多了之后也会失效,会不定时更新的,大家持续关注此网站~https://javaforall.net/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~40…

    2022年3月28日
    50
  • git 更新代码到本地

    git 更新代码到本地正规流程gitstatus(查看本地分支文件信息,确保更新时不产生冲突)gitcheckout–[filename](若文件有修改,可以还原到最初状态;若文件需要更新到服务器上,应该先merge到服务器,再更新到本地)gitbranch(查看当前分支情况)gitcheckoutremotebranch(若分支为本地分支,则需切换到服务器的远程分支)git…

    2022年6月15日
    98
  • SQL Server 2008 Express 及 SSMS Express 下载安装配置教程「建议收藏」

    SQL Server 2008 Express 及 SSMS Express 下载安装配置教程「建议收藏」这篇文章主要讲如何一步步从下载、安装、配置SQLServer2008Express和SMSS到最后使用SMSS连接本地的数据库服务。

    2022年6月23日
    183
  • Linux-nmap命令使用

    Linux-nmap命令使用用namp对局域网扫描一遍,然后查看arp缓存表就可以知道局域内ip-mac的对应了namp比较强大也可以直接扫描mac地址和端口进行ping扫描,打印出对扫描做出响应的主机:  nmap-sP192.168.1.0/24仅列出指定网络上的每台主机,不发送任何报文到目标主机:  nmap-sL192.168.1.0/24  探测目标主机开放的端口,可以指定一个以…

    2022年5月13日
    34
  • matlab批量处理excel(CSV)文件数据

    matlab批量处理excel(CSV)文件数据今天是2019-1-29,参加完2019年美国大学生数学建模竞赛,小伙伴都回家了,就我一个人在寝室,太无聊了,就把在比赛中遇到的excel批处理,写一下思路(ps:其实我在比赛中利用的是SQLServer数据库和matlab相结合的数据处理方法,但是一般情况下遇到的都是matlab对excel数据批处理,所以降低要求写了matlab对exc…

    2022年6月28日
    24
  • vue遍历数组对象foreach_js遍历对象数组

    vue遍历数组对象foreach_js遍历对象数组Arr=[ { a:1 }, { b:2 },]<liv-for=”(value,key,index)inArr”><divv-for=”(txvalue,name,num)invalue”> <spanclass=”title”>{{name}}:</span><span>{{txvalue}}</span> </div>&lt

    2022年8月30日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号