| 
 | 
 
 
发表于 2018-10-25 18:07:46
|
显示全部楼层
 
 
 
你的函数没有必要有返回值 void 就好。如果你要返回整形,那应该 return 0。NULL 会被认为是空指针 
不是很完整,不过绝对是透过指针修改的 
你原本的等等- #include <stdio.h>
 
  
- void swap(int *x, int *y)
 
 - {
 
 -         int t = *x;
 
 -         *x = *y;
 
 -         *y = t;
 
 - }
 
  
- void arrange(int arr[], int index_min, int index_max)
 
 - {
 
 -         if(index_min != 0)
 
 -             swap(&arr[0], &arr[index_min]);
 
 -     if(index_max != 9)
 
 -             swap(&arr[9], &arr[index_max]);
 
 - }
 
  
- int main()
 
 - {
 
 -     int number[10];
 
 -     int max = -65535, min = 65535;
 
 -     int index_max, index_min;
 
 -     printf("Please enter ten numbers:\n");
 
 -     for (int i = 0; i < 10; i++)
 
 -     {
 
 -         printf("%d: ", i + 1);
 
 -         scanf("%d", &number[i]);
 
 -         if(number[i] > max)
 
 -         {
 
 -                 max = number[i];
 
 -                 index_max = i;
 
 -         }
 
 -         if(number[i] < max)
 
 -         {
 
 -                 min = number[i];
 
 -                 index_min = i;
 
 -         }
 
 -     }
 
 -     
 
 -     arrange(number,index_min, index_max);
 
 -     
 
 -     for (int i = 0; i < 10; i++)
 
 -     {
 
 -         printf("%d ", number[i]);
 
 -     }
 
 -     printf("\n");
 
 -     return 0;
 
 - }
 
  复制代码 |   
 
 
 
 |