数组的2道简单问题

  

1,数组转置问题

,

(1),代码如下:

# include      void  arrayRev (int  *, int 数);   void  printT (int  *, int 数);      void  printT (int  *, int 计数){   ,,,int 我;      ,,,(小姐:=,0;,小姐:& lt;,计数;,我+ +){   ,,,,,,,printf (" % d  ",[我]);   ,,,},,,   }   void  arrayRev (int  *, int 计数){   ,,,int  low =, 0;   ,,,int  high =,把1;   ,,,int  tmp;      ,,,,(low  & lt;,高){   ,,,,,,,tmp =,(低);   ,,,,,,,一个(低),=,(高);   ,,,,,,,一个(高),=,tmp;   ,,,,,,,低+ +;   ,,,,,,,,,   ,,,},,,   }   int 主要(void) {   ,,,int 一个[],=,{1,4,,2,,6,8,9,11日,43岁,12岁,55岁的};   ,,,int 兰;      ,,,len =, sizeof (a)/sizeof ([0]);      ,,,printf("转置前:\ n”);   ,,,printT (a, len);   ,,,arrayRev (a, len);   ,,,printf (" \ n转置后:\ n”);   ,,,printT (a, len);   ,,,printf (" \ n ");         ,,,return  0;   }

(2),运行结果:

数组的2道简单问题


2,寻找一个数组中的第二大数字

,无序数组中的一堆数字,寻找第二个大的数字?

<强>

(1),代码如下:

# include      int  secondMax (int  *, int  len);   void  printT (int  *, int 数);      void  printT (int  *, int 计数){   ,,,int 我;      ,,,(小姐:=,0;,小姐:& lt;,计数;,我+ +){   ,,,,,,,printf (" % d  ",[我]);   ,,,}   ,,,printf (" \ n ");   }   int  secondMax (int  *, int  len) {   ,,,int  max =,一个[0],祝辞,[1],?,一个[0],:,[1];   ,,,int  second =,一个[0],祝辞,[1],?,一个[1],:,[0];   ,,,int 我;      ,,,(小姐:=,2,,小姐:& lt;, len;,我+ +){   ,,,,,,,如果(一个[我],祝辞,max) {   ,,,,,,,,,,,second =, max;   ,,,,,,,,,,,max =,(我);   ,,,,,,,}else 如果(一个[我],祝辞,秒){   ,,,,,,,,,,,second =,(我);   ,,,,,,,其他}{   ,,,,,,,,,,,,,,,   ,,,,,,,},,,   ,,,}   ,,,return 第二;      }      int 主要(void) {   ,,,int 一个[],=,{44岁,4日,66年,6日,8日,33岁,22岁,,2,,55岁,,1};   ,,,int  len =, sizeof (a)/sizeof ([0]);   ,,,int  num;      ,,,num =, secondMax (a, len);   ,,,printT (a, len);   ,,,printf (" % d \ n ",, num);      ,,,return  0;   }

(2),运行结果:

数组的2道简单问题


数组的2道简单问题