| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 434 人关注过本帖
标题:高手帮帮忙!小弟菜鸟
只看楼主 加入收藏
lianxuchun
Rank: 1
等 级:新手上路
威 望:1
帖 子:8
专家分:0
注 册:2009-10-15
结帖率:50%
收藏
已结贴  问题点数:20 回复次数:4 
高手帮帮忙!小弟菜鸟
#include <stdio.h>
#include <stdlib.h>
#define MAXSIZE 20                                   
typedef  struct
   { int  a[MAXSIZE];            
     int  length;                        
   }SqList;                       
SqList  a,b,c;
void creat_list(SqList *L);
void print(SqList *l);
void insert_sq(SqList *L,SqList *q,int e);
main()
{ int i,k,loc, e;
  do { printf("\n\n\n");
       printf("\n     1. 建立非递减有序线性表 " );
       printf("\n     2. 插入元素e");
       printf("\n     3. 结束程序运行");
       printf("\n======================================");
       printf("\n    请输入您的选择(1,2,3)");
       scanf("%d",&k);
       SqList q={{0},0};
       switch(k)
     { case 1:{ creat_list(&a);  print(&a);
              } break;
       case 2:{ printf("\n e=?"); scanf("%d",&e);
                insert_sq(&a,&a,e);   print(&a);
              } break;
       }
     }while(k!=3);
     printf("\n               再见!");
     printf("\n          打回车键,返回。");
  }
void creat_list(SqList *L)
 { int i;
   printf("\n n=?"); scanf("%d",&L->length);
   for(i=0;i<L->length;i++){ printf("\n data %d=?",i);
                             scanf("%d",&(L->a[i]));
                           }
 }

void insert_sq(SqList *L,SqList *q,int e)
{ int i,k;
    i=k=0;
    if(L->length+1<=MAXSIZE)
    {
        while(i<L->length)
        {
            if(L->a[i]<e)
            {
                q->a[k]=L->a[i];
                i++;
                k++;
            }
            else{
                q->a[k]=e;
                k++;
            }
        }
        while(i<L->length)
        {
            q->a[k]=L->a[i];
            i++;
            k++;
        }
        q->length=L->length+1;
    }
    else printf("out of bound");
}

void print(SqList *l)
{
    int i;
    for(i=0;i<l->length;i++)
    {
        printf("%d ",l->a[i]);            
    }
}
小弟刚刚学习线性表,下午的讨论课又吃瘪了,本人决心学好这门课
搜索更多相关主题的帖子: 线性表 元素 
2009-10-15 19:02
流星雨
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:JAVA风暴
等 级:版主
威 望:43
帖 子:1854
专家分:1868
注 册:2004-5-30
收藏
得分:14 
用链表写的增删改查我还记得些,可惜办公室没有C编译器。回去写个发给你。

感谢你们带我找到星空下美丽神话,无论经历多少苦痛也不放弃的梦;插上希望翅膀乘风我和你们飞翔,飞过海天尽头携手把梦想实现.....
2009-10-15 19:15
流星雨
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:JAVA风暴
等 级:版主
威 望:43
帖 子:1854
专家分:1868
注 册:2004-5-30
收藏
得分:0 
void CreateList(LNode& pHead)         
{
     
    LNode pNode = new Node;
    pNode->Stu = CreateStudent();
    pNode->pNext = NULL;
     
    if(NULL == pHead)
    {
        pHead = pNode;
    }
    else
    {
        LNode pTmp = pHead;
        while(NULL != pTmp->pNext)
        {
            pTmp = pTmp->pNext;
        }
        pTmp->pNext = pNode;
    }
    return;
}
这个是创建的方法.也没多少时间仔细看你的代码.也不知道你要什么,我这里不方便调试C.

感谢你们带我找到星空下美丽神话,无论经历多少苦痛也不放弃的梦;插上希望翅膀乘风我和你们飞翔,飞过海天尽头携手把梦想实现.....
2009-10-15 22:15
lianxuchun
Rank: 1
等 级:新手上路
威 望:1
帖 子:8
专家分:0
注 册:2009-10-15
收藏
得分:0 
我这题求的是把一个元素插入一个非递减线性表中,使插入后的线性表认为有序非递减有序
2009-10-16 19:47
lianxuchun
Rank: 1
等 级:新手上路
威 望:1
帖 子:8
专家分:0
注 册:2009-10-15
收藏
得分:0 
我是想建立一个新的线性表,把原来的线性表中的元素和插入的X一个个相比较,如果原来的线性表中的元素大于X就把这个元素存入新的线性表中,依次类推。
2009-10-16 19:52
快速回复:高手帮帮忙!小弟菜鸟
数据加载中...
 
   



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

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