标题:初学者, 小女子被书上一算法难住了
取消只看楼主
cherish——
Rank: 1
等 级:新手上路
帖 子:25
专家分:1
注 册:2012-8-18
结帖率:33.33%
已结贴  问题点数:20 回复次数:8 
初学者, 小女子被书上一算法难住了
算法弄成c之后还是报错    但是找不出错误的说
#include<stdio.h>
#include<malloc.h>
typedef struct{
int *al;
int l;
int ls;
}sq;

int init(sq&L)
{
 L.al=(int*)malloc(100*sizeof(int));
 if(!L.al)printf("0");

  L.l=0;
  L.ls=100;
  return 1;
  }


int hb(sq La,sq Lb, sq &Lc)
   {int pa,pb,pc,m,n;
   int i;
   pa=La.al;
   pb=Lb.al;
 Lc.ls=Lc.l=La.l+Lb.l;
pc=Lc.al=(int*)malloc(Lc.ls*sizeof(int));
if(!Lc.al)printf("0");
m=La.al+La.l-1;
n=Lb.al+Lb.l-1;
while(pa<=m&&pb<=n)
{if(*pa<=*pb)*pc++=*pa++;
else *pc++=*pb++;}
while(pa<=m) *(pc++)=*(pa++);
while(pb<=n) *(pc++)=*(pb++);
}



   main()
   {sq La,Lb,Lc;int i;
  init(La);
  init(Lb);
   printf("请输入La表元素的个数\n");
   scanf("%d",&La.l);
for(i=0;i<La.l;i++)
   scanf("%d",&La.al[i]);
   
   printf("输入Lb表元素个数\n");
   scanf("%d",&Lb.l);
   for(i=0;i<Lb.l;i++)
       scanf("%d",&Lb.al[i]);

   printf("La的元素为:\n");
   for(i=0;i<La.l;i++)
       printf("%d  ",La.al[i]);

   printf("\nLb的元素为:\n");
   for(i=0;i<Lb.l;i++)
       printf("%d  ",Lb.al[i]);
   hb(La,Lb,Lc);
       for(i=0;i<Lc.l;i++)
           printf("%d",Lc.al[i]);

   }
   
   
   
搜索更多相关主题的帖子: include 小女子 return 
2013-03-21 20:41
cherish——
Rank: 1
等 级:新手上路
帖 子:25
专家分:1
注 册:2012-8-18
得分:0 
  还有一个的说   。。。
#include<stdio.h>
#include<malloc.h>
typedef struct Lnode{
int date;
struct Lnode *next;

}Lnode,*Lk;

int init(Lk&L,int i)
{int j,m,e;
Lk p,q;


L=(Lk)malloc(sizeof(Lk));
L->next=0;
q=L;
for(j=0;j<i;j++)
{p=(Lk)malloc(sizeof(Lk));
scanf("%d",&p->date);
p->next=0;
q->next=p;
q=p;
}

return 1;
}

int cz(Lk&L,int m,int &e)
  {int j=1;
  Lk p;
      
      p=L->next;
      if(p&&j<m){p=p->next;j++;}
  if(!p||j>m)printf("0");
       e=p->date;
  return 1;

                                         
  
  
  }

 main()
 {Lk L,p;
 int i,n,m,e;
 printf("输入链表元素个数:");
 scanf("%d",&n);
 init(L,n);
p=L->next;
 printf("创建的链表为:");
 for(i=0;i<n;i++)
 {     printf("%d  ",p->date);
 p=p->next;}  
 printf("\n输入要查找的位置:");
 scanf("%d",&m);
 cz(L,m,e);
 printf("元素是%d",e);

 }
2013-03-21 20:42
cherish——
Rank: 1
等 级:新手上路
帖 子:25
专家分:1
注 册:2012-8-18
得分:0 
回复 5楼 不玩虚的
大仙好牛叉   我自己都看不下去了  。。。。

          唉唉  不过这个学期才开的数据结构    程序太多   有点眼晕


  谢谢大仙了~~~
2013-03-22 16:57
cherish——
Rank: 1
等 级:新手上路
帖 子:25
专家分:1
注 册:2012-8-18
得分:0 
回复 2楼 cherish——
这里是说我 int&e用错了是么??

  主要是我的数据结构老师说  有值的变化的前面都要用&  不一定是要用指针才可以~~~


而且我刚才也试用了一下  我那程序只要把 if  改成while 就可以运行了嗯~~

 现在又有个问题就是我如果要查找的数大于输进去的数字    会出现一个应用程序错误的小方框  

  求解释 呢    大仙~~
2013-03-22 17:54
cherish——
Rank: 1
等 级:新手上路
帖 子:25
专家分:1
注 册:2012-8-18
得分:0 
回复 4楼 不玩虚的
亲    话说只是吗??

 真心有点看不懂  语法。。。。

 菜鸟小妞飞过~~~
2013-03-22 17:56
cherish——
Rank: 1
等 级:新手上路
帖 子:25
专家分:1
注 册:2012-8-18
得分:0 
回复 4楼 不玩虚的
请教大仙  为什么用了链表就不能用for呢??


   主要是用习惯了for 一下用while 会反应不过来
2013-03-22 18:20
cherish——
Rank: 1
等 级:新手上路
帖 子:25
专家分:1
注 册:2012-8-18
得分:0 
回复 11楼 杨学子
是啊  现在在学数据库了嗯~~
2013-03-23 22:29
cherish——
Rank: 1
等 级:新手上路
帖 子:25
专家分:1
注 册:2012-8-18
得分:0 
回复 10楼 不玩虚的
大仙怎么就没网了呢??

 大仙肿么总是一副羞涩的表情呢~~

  大仙哪个学校的咯  加下我扣撒
2013-03-23 22:30
cherish——
Rank: 1
等 级:新手上路
帖 子:25
专家分:1
注 册:2012-8-18
得分:0 
回复 14楼 不玩虚的
好呗~~ 互相学习


  我才刚开数据结构。。。

 但是具体怎么学还在探索之中啊

 有木有更好的编程交流的地方呢


 求指教
2013-03-25 16:58



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-401528-1-1.html




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

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