鱼C论坛

 找回密码
 立即注册
查看: 986|回复: 2

[已解决]我已经把所有的数据值为零但是还行显示杂乱的数值,还望大佬能给予帮助

[复制链接]
发表于 2020-7-30 22:45:46 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
  1. /*
  2. 2020年7月30日22点06分
  3. 数据结构线性表
  4. */
  5. #include<stdio.h>
  6. //#include<stdlib.h>
  7. #define MAXSIZE 10
  8. typedef struct list
  9. {
  10.         int data[MAXSIZE];
  11.         int length;
  12. }sqlist;

  13. //初始化线性表
  14. void initial(sqlist &l)
  15. {
  16.         for(int i = 0;i<MAXSIZE;i++)
  17.         {
  18.                 l.data[i]=0;
  19.         }
  20.         l.length = 0;

  21. }
  22. bool inlist(sqlist &l,int i,int len)
  23. {
  24.         if(i<0&&i>l.length )
  25.                 return false;
  26.         if(l.length>=MAXSIZE)
  27.                 return false;
  28.         for(int j=l.length;j>=i;j--)
  29.         {
  30.                 l.data[j] = l.data[j-1];
  31.         }
  32.                 l.data [i-1] = len;
  33.                 l.length++;
  34.                 return true;
  35. }
  36. bool deletelist(sqlist &l,int i)
  37. {
  38.         if(i<1&&i>l.length)
  39.         return false;
  40.         if(l.length = 0)
  41.         return false;
  42.         for(int j = i;j<l.length;j++)
  43.         {
  44.                 l.data[j-1] = l.data[j];
  45.          }
  46.          l.length--;
  47.          return true;
  48. }
  49. void showList(sqlist l)
  50. {
  51.         for(int i = 0;i<l.length;i++)
  52.         {
  53.                 printf("l.data[%d] = %d\n",i,l.data[i]);
  54.          }
  55. }
  56. int main()
  57. {
  58.         sqlist l;//定义一个线性表
  59.         /*for(int i = i;i<5;i++)
  60.         {
  61.                 inlist(l,i,i+10);
  62.         }*/
  63.         l.length = MAXSIZE;
  64.         showList(l);
  65.         return 0;
  66. }
复制代码


最佳答案
2020-7-30 22:58:20
你根本就没有置零,把 main 改成:
  1. int main()
  2. {
  3.     sqlist l;//定义一个线性表
  4.     /*for(int i = i;i<5;i++)
  5.     {
  6.             inlist(l,i,i+10);
  7.     }*/
  8.     initial(l);
  9.     l.length = MAXSIZE;
  10.     showList(l);
  11.     return 0;
  12. }
复制代码
批注 2020-07-30 224442.png
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-7-30 22:58:20 | 显示全部楼层    本楼为最佳答案   
你根本就没有置零,把 main 改成:
  1. int main()
  2. {
  3.     sqlist l;//定义一个线性表
  4.     /*for(int i = i;i<5;i++)
  5.     {
  6.             inlist(l,i,i+10);
  7.     }*/
  8.     initial(l);
  9.     l.length = MAXSIZE;
  10.     showList(l);
  11.     return 0;
  12. }
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-30 23:01:23 | 显示全部楼层
都用上引用了,为什么不用类呢
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-8-10 04:32

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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