对于将两个相同大小的数组内容进行交换的问题,可以给出两个具体的算法,并给出相应的程序如下:
算法一分析:
将两个相同大小的数组内容进行交换,可以先定义两个相同大小的数组a[10]和b[10]。同时,创建一个临时变量,借助这个变量,将两个数组的具体内容进行交换。下面是具体的程序:
#include <stdio.h>
int main()
{
int a[10]={1,2,3,4,5,6,7,8,9,0};
int b[10]={0,9,8,7,6,5,4,3,2,1};
int i;
for(i=0;i<10;i++)
{
int tmp;
tmp=a[i];
a[i]=b[i];
b[i]=tmp;
}
for(i=0;i<10;i++)
printf("%d",a[i]);
printf("\n");
for(i=0;i<10;i++)
printf("%d",b[i]);
return 0;
}
算法二分析:
建立一个交换函数swap,然后在main函数中进行调用,最终实现两个数组中所有内容的交换。具体的程序如下:
#include <stdio.h>
void swap(int *num1,int *num2)
{
int temp;
temp=*num1;
*num1=*num2;
*num2=temp;
}
int main()
{
int a[10]={0,1,2,3,4,5,6,7,8,9};
int b[10]={9,8,7,6,5,4,3,2,1,0};
int i,j;
for(i=0;i<10;i++)
swap(&a[i],&b[i]);
for(j=0;j<10;j++)
printf("%d\t%d\n",a[j],b[j]);
return 0;
}
本文出自 “无心的执着” 博客,请务必保留此出处http://10740590.blog.51cto.com/10730590/1698961
原文地址:http://10740590.blog.51cto.com/10730590/1698961