找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2565|回复: 2

[通用编程] 还是线性的问题(已解决)

[复制链接]
发表于 2007-8-7 11:11:31 | 显示全部楼层 |阅读模式
  1. #include<stdio.h>
  2. struct list
  3. {
  4.     char list1[50];
  5.     int size;
  6. };
  7. void setnull(struct list *p)
  8. {
  9.     p->size=0;
  10. }
  11. void insert(struct list *p,char x,int i)
  12. {
  13.     int j;
  14.     if(i<1&&i>p->size+1)
  15.         printf("位置不正确!\n");
  16.     else
  17.     {
  18.         p->size++;
  19.         for(j=p->size-1;j>i;j--)
  20.             p->list1[j]=p->list1[j-1];
  21.         p->list1[j]=x;
  22.     }
  23. }
复制代码
在插入的那里,比如说是第一次插入一个数, p->size就等于一了,然后执行for(j=p->size-1;j>i;j--)
            p->list1[j]=p->list1[j-1];
那j 不就是等于零了吗?怎么能进行这操作呢?p->list1[j]=p->list1[j-1];
 楼主| 发表于 2007-8-7 11:21:35 | 显示全部楼层
那时 i=1, j=0那怎么可以插入呢? [s:6]  应该连for 循环都进入不了啊?
 楼主| 发表于 2007-8-7 11:27:50 | 显示全部楼层
[s:6] 偶知道了,不好意思 - -|||.................
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|幻想森林

GMT+8, 2026-11-4 12:05 , Processed in 0.010914 second(s), 15 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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