Advertisement
masterm1nd99

„Средување“ на стринг Problem 4 (2 / 2) Да се напише про

Dec 25th, 2018
163
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.23 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <string.h>
  3. #include <ctype.h>
  4.  
  5. void swap(char *xp, char *yp)
  6. {
  7. char temp = *xp;
  8. *xp = *yp;
  9. *yp = temp;
  10. }
  11.  
  12. void bubbleSort(char arr[], int n)
  13. {
  14. int i, j;
  15. for (i = 0; i < n-1; i++)
  16.  
  17. // Last i elements are already in place
  18. for (j = 0; j < n-i-1; j++)
  19. if (arr[j] > arr[j+1])
  20. swap(&arr[j], &arr[j+1]);
  21. }
  22.  
  23. void sort(char *c)
  24. {
  25. int i,j=0,k,flag;
  26. for(i=0;*(c+i)!='\0';i++)
  27. {
  28. if(isupper(*(c+i)))
  29. {
  30. *(c+i)=tolower(*(c+i));
  31. }
  32. }
  33. for(i=0;*(c+i)!='\0';i++)
  34. {
  35. flag=1;
  36. for(k=0;k<j;k++)
  37. {
  38. if(*(c+i)==*(c+k))
  39. {
  40. flag=0;
  41. }
  42. }
  43. if(flag)
  44. {
  45. if(isalpha(*(c+i)))
  46. {
  47. *(c+j)=*(c+i);
  48. j++;
  49. }
  50. }
  51. }
  52. *(c+j)='\0';
  53. bubbleSort(c,strlen(c));
  54. }
  55.  
  56. int main()
  57. {
  58. char firstStr[100];
  59. int i=0;
  60. char l;
  61. while((l=getchar())!='\n')
  62. {
  63. *(firstStr+i)=l;
  64. i++;
  65. }
  66. *(firstStr+i)='\0';
  67.  
  68. sort(firstStr);
  69.  
  70. printf("%s",firstStr);
  71.  
  72.  
  73. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement