数据结构 c 习题

来源:互联网 发布:snmpv3 trap java 编辑:程序博客网 时间:2024/06/05 22:01
/*  从顺序表中删除具有最小值的元素 并返回该值  空位置由最好一个元素填补 若表为空 显示出错信息并退出*/#include <stdio.h>#include <stdlib.h>#define MAXLENGTH 10typedef int ElemType;typedef struct SqList{  ElemType data[MAXLENGTH];  int length;}SqList;ElemType deleteMin(SqList *l){  if(l->length == 0){    printf("Sequence list is empty->\n");    exit(0);  }  ElemType min = l->data[0];  int idx = 0, i;  for(i=1; i<l->length; i++){    if(l->data[i] < min){      min = l->data[i];      idx = i;    }  }  l->data[idx] = l->data[l->length-1];  l->length--;  return min;}void printSqList(SqList *l){  for(int i=0; i<l->length; i++){    printf("%d ", l->data[i]);  }}int main(){  SqList l;  ElemType d[10] = {2,3,4,5,1,6,7,8,9,10};  l.length = 10;  for(int i=0; i<10; i++){    l.data[i] = d[i];  }  int tmp;  tmp = deleteMin(&l);  printf("%d\n", tmp);  printSqList(&l);  printf("\n");  return 1;}
Junr:problem junr$ ./a.out 12 3 4 5 10 6 7 8 9 
原创粉丝点击