| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 949 人关注过本帖
标题:在有序数列中插入一个数使其仍有序
只看楼主 加入收藏
影子猪
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2009-8-16
收藏
 问题点数:0 回复次数:4 
在有序数列中插入一个数使其仍有序
#include <stdio.h>
#define OK 1
#define MAXSIZE 100
typedef struct
{
  int elem[MAXSIZE];
  int last;
}SeqList;

int InsList(SeqList *L ,int e)
{
  int i=0,j,k;
  while(e>L->elem[i])
    i++;
  k=i+1;
  for(j=L->last;j>=k;j--)
     L->elem[j] = L->elem[j-1];
  L->elem[i] = e;
  L->last++;
  return(OK);
}

int main(void)
{
  SeqList *L;
  int i;
  /*L->elem[6]={1,3,5,7,9,20};*/
  for(i=1;i<=L->last;i++)
    scanf("%d",&L->elem[i-1]);
  InsList(L,2);
  for(i=1;i<=L->last+1;i++)
      printf("得到元素序列为:%d",L->elem[i-1]);
  return 0;
}
搜索更多相关主题的帖子: include return 
2009-09-15 23:32
影子猪
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2009-8-16
收藏
得分:0 
gcc编译是段错误,找不到!
2009-09-15 23:33
影子猪
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2009-8-16
收藏
得分:0 
在线等,谢谢各位高人了!
2009-09-16 00:04
romance_hot
Rank: 2
等 级:论坛游民
帖 子:6
专家分:20
注 册:2009-9-12
收藏
得分:0 
用得着结构体吗? 直接输入一个数 用for循环查找数组中的元素,再加判断不久可以了吗?
2009-09-16 15:47
romance_hot
Rank: 2
等 级:论坛游民
帖 子:6
专家分:20
注 册:2009-9-12
收藏
得分:0 
给你思路 如果用结构体 要初始化,你的结构体中的int last的值是多少都不知道,你怎么能确保它L->last的值比k大呢? 所以要进行初始化 把数组的长度算出来!
通过长度才能进行数组的移动控制。。。。
2009-09-16 16:06
快速回复:在有序数列中插入一个数使其仍有序
数据加载中...
 
   



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

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