使用指针与数组

#include <stdio.h>
#define N 10
void Maxmin(int *ps)//查出数组中最大最小值
{

int i,max=ps[0],min=ps[0];

for(i=1;i<N;i++)

{

max=(max>ps[i]?max:ps[i]);

min=(min<ps[i]?min:ps[i]);

}

printf("最大值为%d,最小值为%d ",max,min);

}
void Evennumber(int *ps)//统计偶数的个数
{

int i=0,number=0;

while(i<N)

{

if(ps[i]%2==0)

number++;

i++;

}

printf("偶数的个数为%d ",number);

}
void Saneven(int *ps)//删除偶数之后的数组
{

int i,j;

for(i=0,j=0;i<N;i++)

{

if(ps[i]%2!=0)

{

ps[j++]=ps[i];

}

}

for(i=j+1;i<N;i++)

{

ps[i]='';

}

for(i=0;ps[i]!='';i++)

{

printf("%d ",ps[i]);

}

}
void Reversed(int *ps)//删除之后逆序输出
{

int i;

for(i=N-1;i>=0;i--)

{

if(ps[i]!=0)

printf("%d ",ps[i]);

}

}
void main()
{

int a[N]={74,53,26,39,81,64,19,33,45,92},b[N];

int *p=a;

Maxmin(p);

Evennumber(p);

printf("删除偶数之后的数组: ");

Saneven(p);

putchar(' ');

printf("删除之后逆序输出: ");

Reversed(p);

putchar(' ');

}

原文地址:https://www.cnblogs.com/zhou-kang/p/13173693.html