| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2100 人关注过本帖
标题:小白求教 运行闪退
只看楼主 加入收藏
ls8062464
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2014-6-7
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:4 
小白求教 运行闪退
一个判断数组是否由大到小排列的函数
运行时闪退了 求解什么情况?
程序代码:


#include <stdio.h>
#include <stdlib.h>


int in_order(int x,int y)
{
int i,j=0;
int z[1000][1000];
for(i=0;i<y;i++)
{if(z[x][i]>=z[x][i+1]) j=j+1; else continue;}

if(j==y-1) return 1;
else return 0;
}

int main(int argc, char *argv[])
{ int x,a[1][3]={3,2,1};
x=in_order(0,2);
printf("%d",x);

system("PAUSE");
return 0;
}
搜索更多相关主题的帖子: color 
2014-06-07 18:41
vvvcuu
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:12
帖 子:353
专家分:1253
注 册:2014-4-22
收藏
得分:0 
能够编译,能够运行, 最后输出个0,然后就请按任意键继续.

貌似不符合目的.

代码测试环境:  WinXP+C-Free5.0.
2014-06-08 07:16
xsw07122269
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:34
专家分:183
注 册:2014-6-2
收藏
得分:20 
没大看懂你这程序的意思,你是要比较数组a是否由大到小排序吧?那调用函数怎么没调用数组进去,数组没进去怎么比啊。既然是一维数组为什么要用二维来表示,如果要比较二维数组你函数里面的循环也写错了。我依照你的程序凑合改了一下:
#include <stdio.h>
#include <stdlib.h>


int in_order(int (*p)[3],int x,int y)
{
int i,j=1;
for(i=0;i<y;i++)
{if(*(*p+i)<=*(*p+i+1)) {j=0;break;}}
 return j;
}

int main()
{
int x,a[1][3]={3,4,1};
x=in_order(a,1,3);
printf("%d\n",x);


system("PAUSE");
return 0;
}
不行的话你直接用数组调用也行。
2014-06-08 07:52
ls8062464
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2014-6-7
收藏
得分:0 
回复 3 楼 xsw07122269
谢谢  
二维数组是题目需要,还请问下怎么保留二维数组的形式?
2014-06-08 09:57
ls8062464
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2014-6-7
收藏
得分:0 
回复 3 楼 xsw07122269
已经解决 感谢
2014-06-08 10:21
快速回复:小白求教 运行闪退
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016000 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved