#include <stdioh>
int hanshu(int i,int a[])
{
int temp,counter=i;
for(i=0;i<counter/2;i++)
{
temp=a[i];
a[i]=a[counter-i];
a[counter-i]=temp;
}
}
int main()
{
int a[10],i=10;
for(i=0;i<10;i++)//<=============
scanf("%d",&a[i]);
hanshu(i,a);
for(i=0;i<10;i++)//<=============
printf("\t%d",a[i]);
return 0;
}
如果只是翻转显示代码如下:
#include <stdioh>
#include <stdlibh>
void changedisp (int p ,int n);
int main( )
{ int i;
int a[10];
for (i=0;i<10;i++)
scanf("%d",&a[i]);
for (i=0;i<10;i++)
printf("%d",a[i]);
printf("\n");
changedisp(a,10);
printf("\n");
return 0;
}
void changedisp (int p ,int n)
{
int j;
for(j=0;j<=n-1;j++)
{
printf("%d",p[n-1-j]);
}
}
如果要求调换数据代码如下:
#include <stdioh>
#include <stdlibh>
void change (int p ,int n);
int main( )
{ int i;
int a[10];
for (i=0;i<10;i++)
scanf("%d",&a[i]);
for (i=0;i<10;i++)
printf("%d",a[i]);
printf("\n");
change(a,10);
for (i=0;i<10;i++)
printf("%d",a[i]);
printf("\n");
return 0;
}
void change (int p ,int n)
{
int temp,j;
for(j=0;j<=(n-j-1);j++)
{
temp=p[j];
p[j]=p[n-1-j];
p[n-1-j]=temp;
}
}
Dim a(10) As Integer, b(10) As Integer
Private Sub Command1_Click()
Dim i As Integer
For i = 1 To 10
a(i) = Int(Rnd 90 + 10)
Next i
For i = 1 To 10
Print a(i);
Next i
End Sub
Private Sub Command2_Click()
Dim i As Integer, t As Integer
For i = 1 To 5
b(i) = a(11 - i)
b(11 - i) = a(i)
Next i
For i = 1 To 10
Print b(i);
Next i
End Sub
Private Sub Command3_Click()
End
End Sub
你可以使用Arraylist数组类,这个数组类存放元素可以动态添加和删除.而且可以存放任何类型的数据!
dim arr as New ArrayList() ’将变量arr定义为Arraylist类
以下是该类的常用方法:
arradd() ’将括号内的数据添加到数组的末尾
arrcount '返回数组元素的总数目
arritem() ’设定或取得由索引所指的数组元素内容
arrsort() ’将数组内所有元素以递增方式排序
arrReverse() ’将数组类中的所有元素反转(颠倒顺序),配合sort方法可以实现降序排列
arrinsert(索引值,数据) ’在数组指定索引值的位置插入数据
arrclear() '清除所有数组元素
arrindexof() ’返回数组中第一个符合指定对象的索引值,未找到返回负值
arrbinaryserach() ’在数组中寻找指定对象,找到返回该对象的索引,否则返回负值;此方法使用前,必须先将数组作升序排列.
以上VB2005版本适用
import javautilArrays;
public class TurnArray {
public static void main(String[] args) {
int[] a = {1,2,3,4,5};
int[] b = new int[alength];
for(int i = 0;i<alength;i++){
b[blength-1-i] = ArrayscopyOfRange(a, i, i+1)[0];
}
for(int i:b){
Systemoutprintln(i);
}
}
}
这个问题,简单,首先问楼主一个问题,如果说其中没有一个数组的话反转你应该会写对吧,其实这个里面有个数组就是再次调用一次本身函数就好,这就是所谓的递归,代码如下:
$arr=array("1","2","3","php",array("4","5","6"));function array_rev($arr){
for($i=count($arr)-1;$i>=0;$i--){
if(is_array($arr[$i])){ //这里判断是否为数组
$temp1 = array_rev($arr[$i]); //若为数组则开始调用自身
$temp[] = $temp1;
continue;
}
$temp[] = $arr[$i];
}
return $temp;
}
var_dump(array_rev($arr));
reverse();
程序如下:主要需要用数组的迭代器,如果对迭代器不了解,就会理解有点困难,因为,reverse()接受的参数就是一组迭代器。
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main()
{
vector<int> vi;
int i,j;
for(i=1;i<5;i++)
vipush_back(i);
for(j=0;j<visize();j++)
cout<<vi[j]<<' ';
cout<<endl;
reverse(vibegin(),viend());
for(j=0;j<visize();j++)
cout<<vi[j]<<' ';
cout<<endl;
}
直接循环一下不就好了。
int rt[]={1,2,3}; //定义数组
int r[]=new int[rtlength]; //定义一个和要转换数组同长度的数组
for(int i=0;i<rtlength;i++){
r[rtlength-1-i]=rt[i]; //从最后向前填充r数组
}
r就是你要的反转数组了。
以上就是关于c语言 编写函数实现反转数组里的元素全部的内容,包括:c语言 编写函数实现反转数组里的元素、写一函数来实现数组的反转输出(用指针)求大神赐教,谢谢、vb怎么反转一个一维数组等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!