解题思路:
注意事项:
参考代码:
# include <stdio.h>
# include <malloc.h>
void destroy (int **p , int n);
int main (void)
{
int i , j , k , n , m , t , s ,**p ;//, *a;
scanf ("%d" , &n);
p = (int **) malloc (sizeof (int *) * n);
for (i = 0 ; i < n ; i++)
{
p[i] = (int *)malloc (sizeof (int) * 9);
//p[i] = a;
for (j = 0 ; j < 9 ; j++)
scanf ("%d" , &p[i][j]);
}
for (i = 0 ; i < n ; i++)
{
for (j = 0 , k = 8 , s = p[i][0] ; j < k ; )
{
while (j < k && p[i][k] > s)
k--;
if (p[i][k] < s)
{
t = p[i][k] ;
p[i][k] = p[i][j];
p[i][j] = t;
j++;
}
while (j < k && p[i][j] < s)
j++;
if (p[i][j] > s)
{
t = p[i][j];
p[i][j] = p[i][k];
p[i][k] = t;
k--;
}
}
for (m = 0 ; m < 8 ; m++)
printf ("%d " , p[i][m]);
printf ("%d\n" , p[i][m]);
}
destroy (p , n);
return 0;
}
void destroy (int **p , int n)
{
for (int i = 0 ; i < n ; i++)
{
free (p[i]);
}
free (p);
}
这个 为什么是错的
哪里有问题啊 求指教
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题6.11 (C++代码)浏览:789 |
采药 (C++代码)浏览:1331 |
C语言训练-阶乘和数* (C++代码)(直接输出样例hhhh)浏览:1175 |
Biggest Number (C++代码)回溯法浏览:1663 |
C语言程序设计教程(第三版)课后习题8.5 (C语言代码)浏览:608 |
C语言程序设计教程(第三版)课后习题10.5 (C语言代码)浏览:565 |
简单的a+b (C语言代码)浏览:384 |
简单的a+b (C语言代码)浏览:661 |
C语言程序设计教程(第三版)课后习题9.3 (C语言代码)浏览:746 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:894 |