数模论坛

 找回密码
 注-册-帐-号
搜索
热搜: 活动 交友 discuz
查看: 4459|回复: 7

[求助]可以帮我看看这个程序吗?

[复制链接]
发表于 2005-10-29 17:43:37 | 显示全部楼层 |阅读模式
<>#define MAXSIZE 100<BR>typedef struct{<BR>int elem[MAXSIZE];<BR>int len;}SQLIST;<BR>SQLIST *L;<BR>void creatsqlist(SQLIST *L)/* 建立*/<BR>{int i;<BR>printf("the number of elements:\n");<BR>scanf("%d\n",&amp;(*L).len);<BR>printf("please input %d elements!",(*L).len);<BR>for(i=0;i&lt;(*L).len;i++) scanf("%d",&amp;(*L).elem);<BR>}<BR>void sqdel(SQLIST *L,int i)/*删除*/<BR>{int j;<BR>for(j=i+1;j&lt;(*L).len;j++)<BR>(*L).elem[j-1]=(*L).elem[j];<BR>(*L).len--;<BR>}<BR>void sqins(SQLIST *L,int i,int x)/*插入*/<BR>{int j;<BR>if((*L).len==MAXSIZE) {printf("no space!\n");return;}<BR>for(j=(*L).len-1;j&gt;=i+1;j--) (*L).elem[j+1]=(*L).elem[j];<BR>(*L).elem[i+1]=x;(*L).len++;<BR>}<BR>void main()<BR>{int i,x;<BR>creatsqlist(SQLIST *L);<BR>for(i=0;i&lt;(*L).len;i++) printf("%d",(*L).elem);<BR>sqins(SQLIST *L,6,10);<BR>for(i=0;i&lt;(*L).len;i++) printf("%d",(*L).elem);<BR>sqdel(SQLIST *L,3);<BR>for(i=0;i&lt;(*L).len;i++) printf("%d",(*L).elem);<BR>}</P>
<>不知道怎么搞得,老师运行不出来。</P>
<>这是一个线性表顺序存储结构的操作,有建立、插入和删除操作。</P>
发表于 2005-10-29 18:22:46 | 显示全部楼层
我觉得你好象没用#include&lt;stdio.h&gt;
 楼主| 发表于 2005-10-29 18:49:18 | 显示全部楼层
<>不是的</P>
<>我根本就没有用到里面的函数</P>
发表于 2005-10-30 01:47:52 | 显示全部楼层
同学:<BR>你的程序里面需要改正的地方:<BR>1:SQLIST *L;----》SQLIST L;<BR>2:creatsqlist(SQLIST *L);----》creatsqlist( &amp;L);<BR>3:sqins(SQLIST *L,6,10);---&gt;sqins(&amp;L,6,10);<BR>4:sqdel(SQLIST *L,3);----&gt;sqdel(&amp;L,3);<BR>以上是我的看法,没有运行,可能的话请试验
发表于 2005-10-30 01:49:02 | 显示全部楼层
还有你需要把*L---》L
发表于 2005-10-31 03:19:22 | 显示全部楼层
<><FONT color=#6600ff>#include &lt;stdio.h&gt;<BR>#define MAXSIZE 100</FONT></P>
<><FONT color=#6600ff>typedef struct<BR>{<BR> int elem[MAXSIZE];<BR> int len;<BR>}SQLIST;<BR>SQLIST *L;</FONT></P>
<><FONT color=#6600ff>void creatsqlist(SQLIST *L)/* 建立*/<BR>{<BR> int i;<BR> printf("the number of elements:\n");<BR> scanf("%d",&amp;(*L).len);<BR> printf("please input %d elements!",(*L).len);<BR> for(i=0;i&lt;(*L).len;i++) scanf("%d",&amp;(*L).elem);<BR>}</FONT></P>
<P><FONT color=#6600ff>void sqdel(SQLIST *L,int i)/*删除*/<BR>{<BR> int j;<BR> for(j=i+1;j&lt;(*L).len;j++)<BR>  (*L).elem[j-1]=(*L).elem[j];<BR> (*L).len--;<BR>}</FONT></P>
<P><FONT color=#6600ff>void sqins(SQLIST *L,int i,int x)/*插入*/<BR>{<BR> int j;<BR> if((*L).len==MAXSIZE) {printf("no space!\n");return;}<BR> for(j=(*L).len-1;j&gt;=i+1;j--) (*L).elem[j+1]=(*L).elem[j];<BR> (*L).elem[i+1]=x;(*L).len++;<BR>}</FONT></P>
<P><FONT color=#6600ff>void main()<BR>{<BR> int i,x;<BR> SQLIST *L = new SQLIST;<BR> creatsqlist(L);<BR> for(i=0;i&lt;(*L).len;i++) printf("%d",(*L).elem);printf("\n");<BR> sqins(L,3,10);<BR> for(i=0;i&lt;(*L).len;i++) printf("%d",(*L).elem);printf("\n");<BR> sqdel(L,3);<BR> for(i=0;i&lt;(*L).len;i++) printf("%d",(*L).elem);<BR>}</FONT></P>
 楼主| 发表于 2005-10-31 06:53:38 | 显示全部楼层
<>首先谢谢这位高手,但是还是有两个错误</P>
发表于 2005-11-5 21:38:09 | 显示全部楼层
<>兄弟,你用的什么编译器啊?Visual C++ 6.0 没错误!</P>
<>另外,还要注意主函数里的两个带参数的子函数的调用。</P>
您需要登录后才可以回帖 登录 | 注-册-帐-号

本版积分规则

小黑屋|手机版|Archiver|数学建模网 ( 湘ICP备11011602号 )

GMT+8, 2024-11-27 08:28 , Processed in 0.102893 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表