Created
May 14, 2017 19:43
-
-
Save skhozinova/d0af1e41e2d937fa639ea3e5d9b347c0 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include<stdio.h> | |
#include<string.h> | |
#include<stdlib.h> | |
#include<conio.h> | |
#include<windows.h> | |
//Переписать данные из файла data.txt в файл outdata.txt, отсортировав их: | |
//по возрастанию количества «пятерок» методом простого выбора (количество пятерок вывести в файл outdata.txt для каждого студента) | |
// Функция сортировки прямым выбором | |
void selectionSort(int *num, int size) | |
{ | |
int min, temp; // для поиска минимального элемента и для обмена | |
for (int i = 0; i < size - 1; i++) | |
{ | |
min = i; // запоминаем индекс текущего элемента | |
// ищем минимальный элемент чтобы поместить на место i-ого | |
for (int j = i + 1; j < size; j++) // для остальных элементов после i-ого | |
{ | |
if (num[j] < num[min]) // если элемент меньше минимального, | |
min = j; // запоминаем его индекс в min | |
} | |
temp = num[i]; // меняем местами i-ый и минимальный элементы | |
num[i] = num[min]; | |
num[min] = temp; | |
} | |
} | |
struct student | |
{ | |
char a[50]; | |
char b[50]; | |
char c[50]; | |
char d[50]; | |
char e[50]; | |
char f[5]; | |
char col[5]; | |
}student[100]; | |
int main(void) | |
{ | |
FILE *fp; | |
if((fp= fopen("data.txt","r"))== NULL) | |
{ | |
printf("Can't open file!"); | |
return 1; | |
} | |
for(int i=0; i<100; i++) | |
{ | |
fscanf(fp,"%s", &student[i].a); | |
fscanf(fp,"%s", &student[i].b); | |
fscanf(fp,"%s", &student[i].c); | |
fscanf(fp,"%s", &student[i].d); | |
fscanf(fp,"%s", &student[i].e); | |
fscanf(fp,"%s", &student[i].f); | |
} | |
fclose(fp); | |
FILE *ft; | |
if((ft= fopen("out.txt","w"))== NULL) | |
{ | |
printf("Can't open file!"); | |
return 1; | |
} | |
for(int i=0; i<100; i++) | |
{ | |
fprintf(ft,"%s\n%s\n%s\n%s\n%s\n%s\n",student[i].a,student[i].b,student[i].c,student[i].d,student[i].e,student[i].f); | |
if(student[i].f=='5') | |
{ | |
student[i].col=student[i].f; | |
fprintf(ft,"%s\n\n",student[i].col); | |
} | |
} | |
fclose(ft); | |
system("pause"); | |
return 0; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment