Advertisement
Guest User

Untitled

a guest
Sep 25th, 2017
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.14 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #define MAXN 100
  4. #include<string.h>
  5.  
  6.  
  7. /* run this program using the console pauser or add your own getch, system("pause") or input loop */
  8.  
  9.  
  10. void menu(){
  11. printf("\n1. Them ten hoc sinh");
  12. printf("\n2. Xoa ten hoc sinh");
  13. printf("\n3. Tim kiem ten hoc sinh");
  14. printf("\n4. Hien thi danh sach hoc sinh");
  15. printf("\n5. Thoat chuong trinh\n");
  16. }
  17.  
  18. int isContinue() {
  19. printf("\nContinue (y/n): ");
  20. char choice;
  21. scanf("%c",&choice);
  22. if(choice == 'y') {
  23. return 1;
  24. }
  25. return 0;
  26. }
  27.  
  28. void inputStudent(char listStu[][MAXN], int *size) { //them hoc sinh
  29.  
  30. printf("Input a student name:");
  31. fflush(stdin);
  32. gets(listStu[*size]);
  33. (*size)++;
  34. printf("Student has been added to list successfully!");
  35. }
  36.  
  37. int findStudent(char listStu[][MAXN], int size, char listHis[][MAXN], int *sizeOfHis) { //tim kiem hoc sinh
  38. printf("Enter keyword: ");
  39. fflush(stdin);
  40. char s[MAXN] = "";
  41. gets(s);
  42. strcpy(listHis[(*sizeOfHis)],s);
  43. (*sizeOfHis)++;
  44. int flag =1; int i;
  45. for(i =0; i < size; i++) {
  46. if(strstr(listStu[i], s)) {
  47. return i;
  48.  
  49. }
  50. }
  51. //sua giup toi c hods deay de im
  52.  
  53. printf("Result: not found\n");
  54. return -1;
  55. }
  56.  
  57. void displayStudent(char listStu[][MAXN], int index) {
  58. //noi chung ra in listStu[index] ra
  59. printf("Found student\n");
  60. printf("Name: %s\n", listStu[index]);
  61. }
  62.  
  63. void removeStudent(char listStu[][MAXN], int* size){ //xoa hoc sinh
  64. printf("Enter keyword: ");
  65. fflush(stdin);
  66. char s[MAXN] = "";
  67. gets(s);
  68.  
  69. int i;
  70. for(i = 0; i < *size;i++){
  71. if(strstr(listStu[i], s)) {
  72. int j;
  73. for(j = i;j < *size;j++){
  74. strcpy(listStu[j],listStu[j+1]);
  75. }
  76. (*size)--;
  77. printf("Student name has been removed from list successfully!");
  78. return;
  79. }
  80. }
  81. printf("Student name doesn't exist in list!!!");
  82. }
  83. void displayHistory(char listHistory[][MAXN], int sizeOfHis) { //hien thi danh sach hoc sinh
  84. int i;
  85. printf("Keywords you had entered: ");
  86. for(i =0 ; i < sizeOfHis; i++) {
  87. printf("%s, ", listHistory[i]);
  88. }
  89. printf("\n");
  90. }
  91.  
  92. void ascendingByName(char listStuden[][MAXN],int sizeOfStudent) { //sap xep theo thu tu
  93. int i,j;
  94. for(i= 0; i < sizeOfStudent -1; i++) {
  95. for(j = i+1; j < sizeOfStudent; j++) {
  96. if(strcmp(listStuden[i],listStuden[j]) > 0) {
  97. char s[MAXN] = "";
  98. strcpy(s,listStuden[i]);
  99. strcpy(listStuden[i],listStuden[j]);
  100. strcpy(listStuden[j],s);
  101. }
  102. }
  103. }
  104. printf("List of Students:\n");
  105. for(i = 0 ; i < sizeOfStudent; i++) {
  106. printf("%s\n", listStuden[i]);
  107. }
  108.  
  109. }
  110.  
  111. int main(int argc, char *argv[]) {
  112. char listStuden[50][MAXN];
  113. char listHistory[50][MAXN];
  114. int sizeOfStudent = 0;
  115. int sizeOfHistory = 0;
  116. int choice;
  117. while(1 == 1){
  118. menu();
  119. printf("Select 1-5: ");
  120. scanf("%d", &choice);
  121. switch(choice) {
  122. case 1:
  123. if(!(sizeOfStudent > 49)) {
  124. inputStudent(listStuden,&sizeOfStudent);
  125. }else {
  126. printf("Out of bound\n");
  127. }
  128. break;
  129. case 2:
  130. removeStudent(listStuden,&sizeOfStudent);
  131.  
  132.  
  133.  
  134. break;
  135. case 3: {
  136. int index =findStudent(listStuden, sizeOfStudent,listHistory,&sizeOfHistory);
  137. if(index != -1) {
  138. displayStudent(listStuden,index);
  139. }
  140.  
  141. break;
  142. }
  143. case 4:
  144. ascendingByName(listStuden ,sizeOfStudent);
  145. break;
  146. case 5:
  147. return 0;
  148. default:
  149. printf("Vui long chon tu 1-5");
  150. break;
  151. }
  152. };
  153. return 0;
  154. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement