|
发表于 2021-11-25 14:06:32
|
显示全部楼层
本帖最后由 jackz007 于 2021-11-25 18:16 编辑
- #include <stdio.h>
- #include <stdlib.h>
- #include <time.h>
- void foo(int d[] , int n)
- {
- int i , k , x ;
- time_t t ;
- if(n > 0) {
- for(i = 0 ; i < n ; i ++) {
- for(;;) {
- x = rand() % n ;
- for(k = 0 ; k < i ; k ++) if(d[k] == x) break ;
- if(k == i) {
- d[i] = x ;
- break ;
- }
- }
- }
- }
- }
- int main(void)
- {
- int c[6] = {0} , d[5][6] = {0} , e[6] = {0} , i , j , k , x ;
- foo(& d[0][0] , 30) ;
- for(i = 0 ; i < 5 ; i ++) {
- printf("%2d" , d[i][0]) ;
- for(j = 1 ; j < 6 ; j ++) printf(" , %2d" , d[i][j]) ;
- printf("\n") ;
- }
- printf("\n") ;
- for(j = 0 ; j < 6 ; j ++) {
- for(e[j] = d[0][j] , c[j] = 0 , i = 1 ; i < 5 ; i ++) {
- if(d[i][j] < e[j]) {
- e[j] = d[i][j] ;
- c[j] = i ;
- }
- }
- }
- printf("%2d" , e[0]) ;
- for(i = 1 ; i < 6 ; i ++) printf(" , %2d" , e[i]) ;
- printf("\n") ;
- for(k = 0 , i = 1 ; i < 6 ; i ++) if(e[i] > e[k]) k = i ;
- printf("\n") ;
- printf("d[%d , %d] = %d\n" , c[k] , k , e[k]) ;
- }
复制代码
编译运行实况:
- D:\0002.Exercise\C>g++ -o x x.c
- D:\0002.Exercise\C>x
- 11 , 17 , 4 , 10 , 29 , 18
- 22 , 14 , 5 , 1 , 27 , 25
- 2 , 6 , 21 , 24 , 3 , 26
- 8 , 9 , 19 , 23 , 28 , 16
- 20 , 12 , 15 , 13 , 0 , 7
- 2 , 6 , 4 , 1 , 0 , 7
- d[4 , 5] = 7
- D:\0002.Exercise\C>
复制代码 |
|