兄弟们~ 帮我看看一个排大小的问题~ 谢谢
#include "stdio.h "
#include "stdlib.h "
main()
{
int n,k,t,*ip,*iq;
ip=(int *)malloc(10*sizeof(int));
for (n=0;n <=9;n++)
{
printf ( "input a number: \n ");
scanf ( "%d ",ip[n]);
}
t=0;
for (n=1;n <=9;n++)
{
if (ip[n]> ip[t])
t=n;
}
printf ( "themax number is %d ",ip[t]);
iq=(int *)realloc(ip,10*2*sizeof(int));
ip=iq;
for (k=10;k <20;k++)
{
printf ( "please input number: \n ");
scanf ( "%d ",ip[k]);
}
for (k=10;k <20;k++)
{
if (ip[t] <ip[k])
t=k;
}
printf ( "the max is %d ",ip[t]);
}
我的程序如下。。。。为何最初申请的10个变量的大小无法正确排列呢? 而后面申请的10个变量却能正确排列,思路都是一样的阿~ 麻烦大虾解答谢谢
[解决办法]
scanf ( "%d ",&ip[n]);
scanf ( "%d ",&ip[k]);
贴下你的测试结果~
偶没看出来测试有什么问题~
[解决办法]
你的循环有问题,自己画图看看,你的好像没实现排序。
程序也还有其他问题:
1.主函数void main
2.内存空间记得要释放!