标签:print while struct input void list 编写 clu nbsp
在长度为n(n<1000)的顺序表中可能存在着一些值相同的“多余”数据元素(类型为整型),编写一个程序将“多余”的数据元素从顺序表中删除,使该表由一个“非纯表”(值相同的元素在表中可能有多个)变成一个“纯表”(值相同的元素在表中只能有一个)。
Input
第一行输入表的长度n;
第二行依次输入顺序表初始存放的n个元素值。
Output
第一行输出完成多余元素删除以后顺序表的元素个数;
第二行依次输出完成删除后的顺序表元素。
Sample Input
12
5 2 5 3 3 4 2 5 7 5 4 3
Sample Output
5
5 2 3 4 7
1 #include <stdio.h> 2 #define Maxsize 1000 3 typedef struct{ 4 int data[Maxsize]; 5 int length; 6 }List; 7 int main(void){ 8 List L; 9 int i,j,len; 10 while(scanf("%d",&len)!=EOF){//线性表的长度 11 L.length=len; 12 for(i=0;i<len;i++){ 13 scanf("%d",&L.data[i]);//输入的元素值 14 if(i>0){ 15 for(j=0;j<i;j++){ 16 if(L.data[i]==L.data[j]){ 17 i--; 18 len--; 19 } 20 } 21 } 22 } 23 printf("%d\n",len); 24 printf("%d",L.data[0]); 25 for(i=1;i<len;i++) 26 printf(" %d",L.data[i]); 27 printf("\n"); 28 } 29 return 0; 30 }
标签:print while struct input void list 编写 clu nbsp
原文地址:https://www.cnblogs.com/suqf/p/9734900.html