产生int型的随机数数组,定义一个函数,将此数组中的元素按相反顺序存放。
例:原来为:{4,5,9,0,12,7,67,30,24,3}
改变后:{3,24,30,67,7,12,0,9,5,4}
要求用指针编写
非常感谢
#include <stdio.h>
#include<stdlib.h>
void make_rand_number(int *num,int N)
{
int i = 0;
for(i = 0;i< N;i++)
{
num[i] = rand();
}
}
void swap(int *arr,int n)
{
int *p,*q;
int i,tmp;
p = &arr[0];
q = &arr[n - 1];
for(i = 0;i<n/2;i++)
{
tmp = *p;
*p = *q;
*q = tmp;
p++;
q--;
}
}
void main(void)
{
int b[100],n;
int i;
while(1)
{
printf("请输入产生数的瞎脊个数(小于100)\n");
scanf("%d",&n);
if(n 扮握< 100)
{
break;
}
}
make_rand_number(b,n);
printf("交换前顺序磨缺渗\n");
for(i = 0;i< n;i++)
{
printf("%d,",b[i]);
}
swap(b,n);
printf("\n交换后顺序\n");
for(i = 0;i< n;i++)
{
printf("%d,",b[i]);
}
printf("\n");
}
void fun1(int *a,int n){
int i=0;
for(;i<迟烂毕谨n;i++)a[i]=rand();
}
void fun2(int *a,int n){
int i=0,m=n/码数漏2;
int t;
for(;i<m;i++){
t=a[i];
a[i]=a[n-1-i];
a[n-1-i]=t;
}
}
#include <iostream>
using namespace std;
int array[10] = {4, 5, 8, 0, 12, 7, 67, 30, 24, 3};
int 镇肆main()
{
int *p = array, *q = (array + 9);
for (int i = 0; i < 5; i++)
{
swap(*p++, *q--);
}
for (int j = 0; j < 10; j++)
{
唤闹 cout << array[j] << ' ';
}
御链轿 cout << endl;
}