
数组反转是数组常见操作。大概来写一写数组反转添加上自己的理解注释。
#include
#define N 6
int main()
{
int a[N] = {
0,1,2,3,4,5};
int i;
int t;
int j;
//反转算法
for(i=0;i
{
t = a[i];
a[i] = a[N-1-i];
a[N-1-i] = t;
//遍历输出,每对换一对数值就打印一次数组
for (j=0;j
{
printf("%d\t",a[j]);
}
printf("\n");
}
}
反转算法就是将第0个和最后一个(第N-1个)数值对换,第1个和第N-2个数值对换,依次类推,第i个和第N-1-i个数值对换。
如果数组元素是偶数个,正好是最中间两个元素数值对换;如果是奇数个元素,中间一个元素不需要对换,比如数组a共5个元素,i
输出结果:
如果想直接获得反转之后的数组结果:
#include
#define N 6
int main()
{
int a[N] = {
0,1,2,3,4,5};
int i;
int t;
int j;
//反转算法
for(i=0;i
{
t = a[i];
a[i] = a[N-1-i];
a[N-1-i] = t;
}
//遍历输出,数组反转之后结果输出
for (j=0;j
{
printf("%d\t",a[j]);
}
printf("\n");
}
执行结果:
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/hz/118006.html