Advertisement
Misipuk

Lab_

Mar 27th, 2018
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.48 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. #define BUFF 256
  5.  
  6. typedef struct stud_st{
  7. char * surname;
  8. int scholar;
  9. } stud;
  10.  
  11. char * input_string(char * message){
  12. char * buff = (char *) malloc(BUFF*sizeof(char));
  13. printf("%s: ", message);
  14. scanf("%s", buff);
  15. char * result = (char *)malloc((strlen(buff)+1)*sizeof(char));
  16. strcpy(result, buff);
  17. free(buff);
  18. return result;
  19. }
  20.  
  21. int main()
  22. {
  23. int n=0, sr=0, sch=0, cnt=0, cnt1=0, k=0, i=0;
  24. printf("Enter count of students: ");
  25. scanf("%d", &n);
  26. stud * mas[n];
  27. stud * st;
  28. for (int i=0; i<n; i++){
  29. st = malloc(sizeof(stud));
  30. st->surname=input_string("\nEnter student's surname");
  31. printf("\nEnter student's scholar: ");
  32. scanf("%d", &sch);
  33. st->scholar = sch;
  34. sr = sr+sch;
  35. mas[i]=st;
  36. }
  37.  
  38. sr = sr/n;
  39. // printf("sr=%d\n", sr);
  40. // printf("schol=%d\n", mas[0]->scholar);
  41.  
  42. for (int i=0; i<n; i++){
  43. if(sr<(mas[i]->scholar)){
  44. cnt++;
  45. }
  46. }
  47.  
  48. //char * str = mas[0]->surname;
  49. //printf("%s\n", str);
  50.  
  51. stud * mas1[cnt];
  52. cnt1=cnt;
  53.  
  54. for (i=0; i<n; i++){
  55. if(sr<(mas[i]->scholar)){
  56. mas1[cnt1-cnt]=mas[i];
  57. cnt--;
  58.  
  59. }
  60. }
  61. // printf("schol=%d\n", mas1[0]->scholar);
  62. // printf("%d\n", cnt1);
  63. for (i=0; i<cnt1; i++){
  64. printf("\n%s, %d", mas1[i]->surname, mas1[i]->scholar);
  65. }
  66. return 0;
  67. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement