首页 > 其他分享 >2008秋季-计算机软件基础- 线性表顺序存储 - 菜单

2008秋季-计算机软件基础- 线性表顺序存储 - 菜单

时间:2023-11-08 12:01:35浏览次数:29  
标签:10 线性表 int void Scores length printf 2008 顺序存储

/* 2008-10-27 */
/* tod: 删除, 修改, 参考: 教材P63-67*/

# include<stdio.h>
#define N 1

typedef struct student

{

  char xuehao[10];

  char xingming[10];

  int  chengji;

} S ;

void xianshicaidan()

{

  printf("\n1 - Initialization.\n");

  printf("2 - Enter Scores.\n");

  printf("3 - Insert Score.\n");

  printf("4 - Display Scores.\n");

  printf("0 - Exit System.\n");

}

void Initial(S a[], int length)

{

  int i;

  printf("Please enter XueHao & Xingming (%d students):\n",length);

  for(i=0;i<length;i++)

  {

      scanf("%s%s",a[i].xuehao,a[i].xingming);

      a[i].chengji=0;

  }

}

void insert(S a[], int *length)

{

  int i,location;

  S x;

  printf("Please enter location:\n");

  scanf("%d",&location);

  printf("Please enter XueHao & Xingming & Chengji:\n");

  scanf("%s%s%d",x.xuehao,x.xingming,

          &x.chengji);

  for(i=*length;i>=location+1;i--)

      a[i]=a[i-1];

  a[location]=x;

  (*length)++;

} 

void xianshi(S a[], int length)

{

  int i;

  printf("Display Scores:\n");

  for(i=0;i<length;i++)

  {

      printf("%s %s %d\n",a[i].xuehao,a[i].xingming,

          a[i].chengji);

  }

}

void main()

{

  int menu=1, len=N;

  S b[10];

  xianshicaidan();

  printf("Enter a number to choose opreation:\n");

  scanf("%d",&menu);

  while(menu!=0)

  {

    switch(menu)

    {

      case 1: Initial(b,len);break;

      case 4: xianshi(b,len); break;

      case 3: insert(b,&len);break;

      default: break;

    }

    xianshicaidan();

    printf("Enter a number to choose opreation:\n");

    scanf("%d",&menu);


  }

}

标签:10,线性表,int,void,Scores,length,printf,2008,顺序存储
From: https://blog.51cto.com/emanlee/8247965

相关文章

  • 2008秋季-计算机软件基础-0901课堂用例
    #include<stdio.h>voidupdate(intxiabiao,intb[],intxinshu);voidcharu(intweizhi,intb[],intcharushu,intshuzuchang);voidmain(){/*顺序存储的线性表-顺序表*/inta[5]={1,2,4,5};inti;intweizhi=2;/*for(i=......
  • 2008秋季-计算机软件基础-0903课堂用例(1)
    #include<stdio.h>voidupdate(intxiabiao,intb[],intxinshu);voidcharu(intweizhi,intb[],intcharushu,intshuzuchang);voidshanchu(intweizhi,intb[],int*changdu);voidshuchu(intaa[],intbiaochang);voidchazhao(int......
  • C语言程序设计 回答同学提出的几个疑问 2008
    1,例4.11中的K=1时什麽意思?K用来表示是否是空格字符(注:不是空字符,而是空格字符)0表示空格字符1表示非空格字符  2,例3.17看不懂呀?这一题不难。如果看不懂需要加把劲了。=12时就是按第三个式子算得呀。是有逻辑错误的。1<=x<10就有明显的错误,因为这是数学中的写法,不是C语言中的写法。......
  • 2008秋-计算机软件基础-实验三 参考源程序
    实验三参考源程序//软件基础教材79页习题6答案//EmanLee#include<stdio.h>#include<stdlib.h>#definem5//队列容量//定义队列的结构structqueue{intseq[m];//队列元素intquelen;//队列中元素个数intrear;//队列尾指针};//初始化队列......
  • 2008秋-计算机软件基础- 实验二 参考源程序
    实验二参考源程序/*Author:EmanLee,计算机软件基础教材P79,ex4设有一头为head的带头结点的单链表,其数据域为整形数据且递增有序。试写一算法,将元素插入链表适当的位置,以保持链表的有序性。*/#include<stdio.h>#include<stdlib.h>typedefintDataType;struc......
  • 2008秋-计算机软件基础-冒泡排序
    /*Title:冒泡排序Author:emanlee算法功能:冒泡排序算法实现将一个长度为n的线性表r上的所有元素按关键字升序排列。*/#include<stdio.h>voidbubblesort(intr[],intn){/*elementsarestoredinr[1]tor[n]*/inti,j,flag;inttemp;flag=1;i......
  • 2008秋-计算机软件基础-第四章习题参考答案 P131 ,习题4,5
    Author:EmanLee 计算机软件基础,教材P131,第4题参考答案(1)查找e的过程abcdefghLow=1Mid=4High=8abcdefghLow=5Mid=6High=8abcdefghLow=5Mid=5High=5查找成功(2)查找f的过程abcdefghLow=1Mid=4High=8abcdefghLow=5Mid=6High=8查找成功(3)查找h的过程abcdefghLow=1Mid=4High=8abcdefghLo......
  • 2008秋-计算机软件基础-第四章习题参考答案 P131 ,习题6之一
    Author:EmanLee P131,第6题之一参考答案(1)      直接插入排序初始状态第一趟第二趟第三趟第四趟第五趟第六趟第七趟第八趟第九趟(2)      冒泡排序初始状态第一趟 第二趟第三趟第四趟第五趟 第六趟 第七趟第八趟第九趟53       12    12 ......
  • 2008秋-计算机软件基础-快速排序
    快速排序c语言源程序之一//快速排序//使用递归调用来实现快速排序//Author:emanlee/*QuickSort*/#include<stdio.h>voidquick_sort(intdata[],intlow,inthigh){inti,j,pivot;if(low<high){pivot=data[low];......
  • 2008秋-计算机软件基础-第四章习题参考答案 P131 ,习题6之二
    P131,第6题之二参考答案(1)      快速排序(第一趟)初始状态Pivot=5353871261706827652135J向左扫描ij第一次交换后358712617068276521ijI向右扫描,第二次交换后351261706827652187ijJ向左扫描,第三次交换后352112617068276587ijI向右扫描,第四次交换352112706827656187ijJ向左扫描35......