efabmp吧 关注:67贴子:8,539
  • 4回复贴,共1
存档


1楼2013-10-23 16:21回复
    #include<stdio.h>
    #define Maxsize 10
    typedef struct {
    int elem[Maxsize];
    int length;
    }sqlist; //类型定义
    void initlist_sq(sqlist &L){
    L.length=0;
    }
    void ex211(sqlist &va,int x)//把x插入递增有序表va中
    {int i;
    if(va.length==Maxsize) printf("满不能插入");
    else { for(i=va.length-1;va.elem[i]>x&&i>=0;i--)
    va.elem[i+1]=va.elem[i];
    va.elem[i+1]=x;va.length++;
    }
    }//Insert_SqList
    void output(sqlist L) //输出顺序表
    { int i;
    for(i=0;i<L.length;i++)
    printf(" %d",L.elem[i]);
    }
    void main()
    {sqlist L;int i,x;
    //initlist_sq(L);
    printf("\n输入顺序表的长度:");
    scanf("%d",&L.length);
    printf("\n输入顺序表各元素(有序输入):");
    for(i=0;i<L.length;i++)
    scanf("%d",&L.elem[i]);
    output(L);
    printf("\n输入x=");
    scanf("%d",&x);
    ex211(L,x);
    printf("\n结果是:");
    output(L);
    printf("\n");
    }


    2楼2013-10-23 16:21
    回复
      #include<stdio.h>
      #include<malloc.h>
      typedef struct node{
      int data;
      struct node *next;
      }lnode,*linklist;
      void creat(linklist &head) //创建带头单链表
      {linklist p;int x;
      head=(linklist)malloc(sizeof(lnode));
      p=head;
      scanf("%d",&x);
      while (x>0)
      {p->next=(linklist)malloc(sizeof(lnode));
      p=p->next,p->data=x;scanf("%d",&x);
      }
      p->next=NULL;
      }
      void out(linklist head) //输出单链表
      {linklist p;
      p=head->next;
      while(p!=NULL)
      {
      printf("%3d",p->data);p=p->next;
      }
      }
      int ex214(linklist head){
      linklist p;int n=0;
      p=head->next;
      while (p!=NULL)
      {n++;p=p->next;}
      return n;
      }
      void main()
      {linklist H;
      printf("\n创建单链表:\n输入数据(用0表示输入结束):");
      creat(H);
      printf("单链表为: ");
      out(H);
      printf("\n单链表有%d个元素",ex214(H));
      }


      3楼2013-10-23 16:22
      回复
        绿帝也搞c语言


        IP属地:浙江来自Android客户端4楼2013-10-24 17:08
        收起回复