Изменить 'du5/program.c'
This commit is contained in:
parent
f4375412dc
commit
f736bb989b
@ -13,19 +13,18 @@ int num;
|
|||||||
|
|
||||||
int keep(struct LIS *);
|
int keep(struct LIS *);
|
||||||
int del(struct LIS *,int);
|
int del(struct LIS *,int);
|
||||||
void Sort_Struct(struct LIS *,int);
|
void Sort_Num(struct LIS *,int);
|
||||||
|
void Sort_Sname(struct LIS *,int);
|
||||||
void print(struct LIS *,int);
|
void print(struct LIS *,int);
|
||||||
|
|
||||||
|
|
||||||
int main(){
|
int main(){
|
||||||
struct LIS list[100];
|
struct LIS list[100];
|
||||||
int count=keep(list);
|
int count=keep(list);
|
||||||
//printf("%d",count);
|
|
||||||
|
|
||||||
//printf("%d",pult);
|
|
||||||
Sort_Struct(list,count);
|
|
||||||
int pult=del(list,count);
|
int pult=del(list,count);
|
||||||
print(list,count);
|
Sort_Num(list,count);
|
||||||
|
Sort_Sname(list,count);
|
||||||
|
print(list,pult);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -51,9 +50,8 @@ int del(struct LIS *list,int count){
|
|||||||
return count;
|
return count;
|
||||||
}
|
}
|
||||||
|
|
||||||
void Sort_Struct(struct LIS *list,int count){//bubble sort :)
|
void Sort_Num(struct LIS *list,int count){//bubble sort :)
|
||||||
struct LIS ilusion;
|
struct LIS ilusion;
|
||||||
int val;
|
|
||||||
for(int i=0;i<count;i++){
|
for(int i=0;i<count;i++){
|
||||||
for(int j=count;j>i;j--){
|
for(int j=count;j>i;j--){
|
||||||
if(list[i].num<list[j].num && list[j].num!=-1 && list[i].num!=-1){
|
if(list[i].num<list[j].num && list[j].num!=-1 && list[i].num!=-1){
|
||||||
@ -61,30 +59,29 @@ void Sort_Struct(struct LIS *list,int count){//bubble sort :)
|
|||||||
list[i]=list[j];
|
list[i]=list[j];
|
||||||
list[j]=ilusion;
|
list[j]=ilusion;
|
||||||
}
|
}
|
||||||
if(list[i].num==list[j].num){
|
|
||||||
for(int k=0;k<strlen(list[i].sname);k++){
|
|
||||||
if(list[i].sname<list[j].sname && list[j].num!=-1 && list[i].num!=-1){
|
|
||||||
ilusion=list[i];
|
|
||||||
list[i]=list[j];
|
|
||||||
list[j]=ilusion;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
/* if(list[i].num==list[j].num && strcmp(list[i].sname,list[j].sname)==0 ){
|
|
||||||
for(int l=0;l<strlen(list[i].fname);l++){
|
|
||||||
if(list[i].fname<list[i+1].fname){
|
|
||||||
ilusion=list[i];
|
|
||||||
list[i]=list[i+1];
|
|
||||||
list[i+1]=ilusion;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}*/
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
void print(struct LIS *list,int count){
|
void Sort_Sname(struct LIS *list,int count){
|
||||||
printf("Vysledky:\n");
|
struct LIS ilusion;
|
||||||
for(int i=0;i<count;i++){
|
for(int i=0;i<count;i++){
|
||||||
|
for(int j=count;j>i;j--){
|
||||||
|
if(list[i].num==list[j].num && strcmp(list[i].sname,list[j].sname)==0){
|
||||||
|
for(int k=0;k<strlen(list[i].sname);k++){
|
||||||
|
if(list[i].sname[k]<list[j].sname[k]){
|
||||||
|
ilusion=list[i];
|
||||||
|
list[i]=list[j];
|
||||||
|
list[j]=ilusion;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
void print(struct LIS *list,int pult){
|
||||||
|
printf("Vysledky:\n");
|
||||||
|
for(int i=0;i<pult;i++){
|
||||||
if(list[i].num!=-1 && list[i].num!=0){
|
if(list[i].num!=-1 && list[i].num!=0){
|
||||||
printf("%d %s %s\n",list[i].num, list[i].sname, list[i].fname);
|
printf("%d %s %s\n",list[i].num, list[i].sname, list[i].fname);
|
||||||
}
|
}
|
||||||
@ -95,3 +92,4 @@ void print(struct LIS *list,int count){
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user