#include <stdio.h>
#include <stdlib.h>
#define MAXSIZE 10
//用数组名和指针变量作为形参
//一般选择用指针型变量操作,而不用数组名作为形参。原因在数组名和指针变量的区别一文当中。
//实现所有元素加1
void fun1(int array[],int length)
{
int i=0;
for(;i<length;i++)
{
(*(array+i))++;//或者 array[i]++;
}
}
//实现所有元素减1
void fun2(int *arr,int length)
{
int i=0;
for(;i<length;i++)
{
arr[i]--;//或者 *(arr+i)--;
}
}
int main()
{
int arr[MAXSIZE]={1,2,4,7,6,7,2,7,4,5};
int i=0;
for(i=0;i<MAXSIZE;i++)
{
printf("arr[%d]=%d,",i,arr[i]);
}
printf("\b \n");
fun1(arr,MAXSIZE);
for(i=0;i<MAXSIZE;i++)
{
printf("arr[%d]=%d,",i,arr[i]);
}
printf("\b \n");
fun2(&arr[0],MAXSIZE);
for(i=0;i<MAXSIZE;i++)
{
printf("arr[%d]=%d,",i,arr[i]);
}
printf("\b \n");
return 0;
}
程序运行结果:
arr[0]=1,arr[1]=2,arr[2]=4,arr[3]=7,arr[4]=6,arr[5]=7,arr[6]=2,arr[7]=7,arr[8]=4,arr[9]=5
arr[0]=2,arr[1]=3,arr[2]=5,arr[3]=8,arr[4]=7,arr[5]=8,arr[6]=3,arr[7]=8,arr[8]=5,arr[9]=6
arr[0]=1,arr[1]=2,arr[2]=4,arr[3]=7,arr[4]=6,arr[5]=7,arr[6]=2,arr[7]=7,arr[8]=4,arr[9]=5
Process returned 0 (0x0) execution time : 0.608 s
Press any key to continue.