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

📄 习题5-有序表中删除重复元素.c

📁 数据结构各章实验源代码; 数据结构实验源代码
💻 C
字号:
#include  "datastru.h"
#include  <stdio.h>

main( )
{ SEQUENLIST  a;
  int  i, k, m;

 printf("请输入顺序表元素,元素为整型量,用空格分开,-99为结束标志 :");
 a.last = 0; i = 0; scanf("%d",&i);
 while (i != -99) {
/*输入顺序表元素,建成有序表*/
	 k = a.last;
	 while((k>=1) && ( i<a.datas[k])) k--;
	 for(m = a.last; m >= k+1; m--)  a.datas[m + 1] = a.datas[m];
	 a.datas[k + 1] = i;
	 a.last++;
	 scanf("%d",&i); }
 printf("\n删除前有序表元素列表 :");
 for (i = 1; i <= a.last; i++)
   printf("%d ",a.datas[i]);
 printf("\n");
 i = 1;
 while (i < a.last){
/*删除有序表中重复元素,保留一个*/
	 while((i < a.last)&&(a.datas[i] == a.datas[i + 1]))
		{ for(m = i; m < a.last; m++)
			a.datas[m] = a.datas[m + 1];
		  a.last--;}
     	 i++;
  }
printf("\n删除后有序表元素列表 :");
for (i = 1; i <= a.last; i++)
   printf("%d ",a.datas[i]);
printf("\n");
}

⌨️ 快捷键说明

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