| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1961 人关注过本帖
标题:程序输入20个数就死了,,不能输入数,也没运行结果。sos
只看楼主 加入收藏
jw915086731
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-5-7
收藏
 问题点数:0 回复次数:19 
程序输入20个数就死了,,不能输入数,也没运行结果。sos
#include<stdio.h>
void main()
{
    int arrange(int a[]);
    int m=19,n=0,num,t,i,k=1,a[20]={0};
    printf("请输入一个数组:");
    /*输入一个20个数的数组给a*/
    for(i=0;i<20;i++)
        {
        scanf("%d",&a[i]);
        }
    arrange(a);
    /*数组a原样输出*/
    for(i=0;i<20;i++)
        {
        printf("%d ",a[i]);
        }
    /*输入要找的数num*/
    printf("please input a number:");
    scanf("%d",&num);
    /*折半查找*/
    while(m-n>1)
    {
        t=(m+n)/2;
        if(num==a[t])
            break;
        else if(num<a[t])
            m=t;
        else
            n=t;
    }
    if(num==a[t+1]) printf("在原始数组中找到了你要找的数字%d,它是数组的第%d元素.\n",num,t+1);
    else if(num==a[t-1])printf("在原始数组中找到了你要找的数字%d,它是数组的第%d元素.\n",num,t);
    else if(num==a[t])printf("在原始数组中找到了你要找的数字%d,它是数组的第%d元素.\n",num,t+1);
    else    printf("在原始数组中没有找到你要找的数字%d\n",num);
}
int arrange(int a[])    
{
    int i,t,k;
    /*数组a从在大到时小排序*/
    do
        {
            for(i=0;i<19;i++)
            {
            if(a[i]>a[i+1]){t=a[i+1];a[i+1]=a[i];a[i]=t;}
            }
            k++;
        }while(k<20);
return a;
}
看看程序有什么问题
只能输入20个数,就死了,不能输入数,也没运行结果。

[[it] 本帖最后由 jw915086731 于 2008-5-7 16:34 编辑 [/it]]
搜索更多相关主题的帖子: sos num int 
2008-05-07 16:06
福尔摩斯
Rank: 5Rank: 5
等 级:贵宾
威 望:12
帖 子:4011
专家分:370
注 册:2006-8-15
收藏
得分:0 
你的‘死’是什么意思?

自我放逐。。。
2008-05-07 16:09
福尔摩斯
Rank: 5Rank: 5
等 级:贵宾
威 望:12
帖 子:4011
专家分:370
注 册:2006-8-15
收藏
得分:0 
void arrange(int a[]);

声明部分

int arrange(int a[])  和 return a;

定义部分

自我放逐。。。
2008-05-07 16:13
卷入内核
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2007-7-2
收藏
得分:0 
我看不知道是怎么'死'的吧,不过我看不死也难哈哈!!
2008-05-07 16:13
qinxinhai
Rank: 1
来 自:湖南长沙
等 级:新手上路
帖 子:237
专家分:0
注 册:2008-4-27
收藏
得分:0 
回复 3# 的帖子
是啊,编译都有问题了.

我秀我自己
2008-05-07 16:16
jw915086731
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-5-7
收藏
得分:0 
回复 5# 的帖子
帮我改改吧
2008-05-07 16:35
jw915086731
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-5-7
收藏
得分:0 
回复 3# 的帖子
帮我改改吧,我改了没用
2008-05-07 16:36
qinxinhai
Rank: 1
来 自:湖南长沙
等 级:新手上路
帖 子:237
专家分:0
注 册:2008-4-27
收藏
得分:0 
你的好多问题啊
  不如重新写一个

我秀我自己
2008-05-07 16:40
墨泣
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2008-3-6
收藏
得分:0 
你的最终目的是做什么?
我想知道你最终输出的是什么?
2008-05-07 17:17
福尔摩斯
Rank: 5Rank: 5
等 级:贵宾
威 望:12
帖 子:4011
专家分:370
注 册:2006-8-15
收藏
得分:0 
你修改了声明部分的

int arrange(int a[]);

但是定义部分却还有

return a;

a是地址,是常量,不能被赋值,也不能return

直接删除,看看是不是你想要的结果

自我放逐。。。
2008-05-07 17:40
快速回复:程序输入20个数就死了,,不能输入数,也没运行结果。sos
数据加载中...
 
   



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

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