⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lianbiao5.c

📁 链表的测试 使用方式 添加,删除方法的实现
💻 C
字号:
/*链表头不为空*/
#include "stdlib.h"
#include "conio.h"
#define null NULL
struct lianbiao
{
  int data;
  struct lianbiao *front,*next;
};
typedef struct lianbiao link;
typedef link *links;
links a,f,n;
void start()
{
  a->front=null;
  a->data=null;
  a->next=null;
  f=a;
  n=a;
}
void add(int i)
{
  n->data=i;
  n->next=malloc(sizeof(link));
  n=n->next;
  n->front=f;
  n->next=null;
  f=n;
}
void remove(int i)
{
  links e;
}



void make_menu(char *charp[],int x,int y,int num,int color1,int color2)
{               /* 菜单数组,坐标X,坐标Y,菜单个数,字体颜色,字体背景颜色*/
  static int n=1;
  int i;
  char c;
  char **charpp;
  charpp=charp;

  while(1)
  {
    textbackground(LIGHTCYAN);
    textcolor(MAGENTA);
    clrscr();
    gotoxy(x,y);
    cputs(*(charpp));
    for(i=1;i<=num;i++)
    {
      if(n==i)
      {
        textbackground(color2);
        textcolor(color1);
      }
      else
      {
      textbackground(color1);
      textcolor(color2);
      }
      gotoxy(x,y+i);
      cputs(*(charpp+i));
    }
    textcolor(BLUE);
    textbackground(MAGENTA);
    gotoxy(x+3,y+num+2);
    cputs("Input number:");
    if((c=getch())==0)
    {
      switch((c=getch()))
      {
        case 80: if(n==num-1) n=1;else n++;
        break;
        case 72: if(n==1) n=num-1;else n--;
        break;
      }
    }
    else if(c==9){n++;if(n>num-1)n=1;}        /*Tab键处理*/
    else
    {
      if(c==13)
      {
        switch(n)
        {                                     /*回车处理*/
          case 1:    add(clr_screen());
          break;
          case 2:
          break;
          case 3:    exit(0);
          break;
          case 4:
          break;
          case 5:
          break;
        }
      }
      else
      {
        switch(c-48)
        {                                   /*直接数字处理*/
          case 1:     add(clr_screen());
          break;
          case 2:
          break;
          case 3:     exit(0);
          break;
          case 4:
          break;
          case 5:
          break;
        }
      }
    }
  }
}
int clr_screen()
{
  int i;
  clrscr();
  gotoxy(20,7);
  printf("please input number:");
  scanf("%d",&i);
  return i;

}
main()
{
  char *name[]={"     MENU","1.Add number   ","2.Remove number","3.Exit         "};
  make_menu(name,20,7,4,3,9);
  getch();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -