0

even after passing all name to bubble sort i get result of unsorted nams..so please help me in this issue

/* enter customer detail in structure and put its name in asscending order*/
#include<stdio.h>
#include<string.h>


	int main(){

			
		int i=0;
		int j,k,l,m;
   		int choice=1;
                               char temp[10];
		char words[20];

	
		struct customer{

				char name[20];
				int account;
				int current;
				int debt;
				
		}cu[20];

		

	       	
	printf("\n ******enter details******* \n");
               	 while (choice==1){
				
		printf("\n enter customer detials\n");
			
		printf("\ncustomer name		:");
		scanf("%s",&cu[i].name);
		printf("\n account no		:");
		scanf(" %d",&cu[i].account);
		printf("\n debt			:");
		scanf("%d",&cu[i].debt);

	                        i++;
		printf("\n..enter 1 to continue and 0 to exit\n");
		scanf("%d",&choice);
	}
			
       /* putting all customer name in assceding order*/                

                        printf("\n all customer name in asceding order\n"); 	for(j=0;j<i-1;j++){//bubble sort

		for(k=j+1;k<i;k++){

						
	                      if(strcmp(cu[j].name,cu[k].name)>0){
			strcpy(temp,cu[j].name);		                                strcpy(cu[j].name,cu[k].name);
			 strcpy(cu[k].name,temp);
			 }
		 }
							
	}

	printf("\n list of customer in ascending order\n");
			
		for(l=0;l<i;l++){					printf("%s",words[l]);
		printf("\n");
	              }									    
                                       					



}
2
Contributors
1
Reply
2
Views
7 Years
Discussion Span
Last Post by jonsca
0

Where does words[] come into play? I see you declare it at the beginning and you try to display it at the end but it's no where in the middle...

Also, why is name 20 chars and temp 10 chars? What happens if you try to copy a long name into temp?

This topic has been dead for over six months. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.