Advertisement
EvgeniiKraaaaaaaav

work2

Dec 15th, 2019
188
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.87 KB | None | 0 0
  1.  
  2. #include <stdio.h>
  3. #include <string.h>
  4.  
  5. typedef struct Student {
  6.    char name [256];
  7.    char group[50];
  8.    int ses [5];
  9. }TStudent;
  10.  
  11. void inputStudentInfo(TStudent* student, int studentNumber);
  12. void sortList(TStudent* student, int listSize);
  13. void showStudentInfo(TStudent* student, int studentNumber);
  14.  
  15. int main() {
  16.     TStudent student [10];
  17.     for (int i = 0; i < 10; ++i) {
  18.         inputStudentInfo(&student[i], i);
  19.     }
  20.  
  21.     sortList(student, 10);
  22.  
  23.     for (int j = 0; j < 10; ++j) {
  24.         showStudentInfo(&student[j], j);
  25.     }
  26.  
  27. }
  28.  
  29. void inputStudentInfo(TStudent* student, int studentNumber) {
  30.     printf(" Введите ФИО %d студента: ", studentNumber + 1);
  31.     scanf("%s", &student->name);
  32.     printf(" Введите номер группы для %d студента: ", studentNumber + 1);
  33.     scanf("%s", &student->group);
  34.     printf("Введите оценки студента %s : ", student->name);
  35.     for (int j = 0; j < 5; ++j) {
  36.         scanf("%d", &student->ses[j]);
  37.     }
  38. }
  39.  
  40. void sortList(TStudent* student, int listSize) {
  41.     for (int j = 0; j < listSize; ++j) {
  42.         for (int i = 0; i < listSize - 1; ++i) {
  43.             if(strcmp(student[i].name,student[i+1].name)>0){
  44.                 TStudent temp;
  45.                 temp = student[i];
  46.                 student[i] = student[i + 1];
  47.                 student[i + 1] = temp;
  48.             }
  49.  
  50.         }
  51.     }
  52. }
  53.  
  54.  
  55. void showStudentInfo(TStudent* student, int studentNumber) {
  56.     int status = 0;
  57.     for (int i = 0; i < 5; ++i) {
  58.         if (student->ses[i] == 2) {
  59.             printf("\n%d. %s в группе %s имеет двойку.\n", studentNumber + 1, student->name, student->group);
  60.             status = 1;
  61.             break;
  62.         }
  63.     }
  64.     if (status == 0) {
  65.         printf("У студентов нет двоек.");
  66.     }
  67.     printf("\n");
  68. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement