Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <time.h>
- #include <windows.h>
- void selection_sort(int *array, int length) {
- for (int i = 0; i < length; i++) {
- int min = i;
- for (int j = i + 1; j < length; j++) {
- if (array[j] < array[min]) {
- min = j;
- }
- }
- if (min != i) {
- int buf = array[i];
- array[i] = array[min];
- array[min] = buf;
- }
- }
- }
- void generate_file(int n) {
- FILE *in = fopen("input.txt", "w");
- srand(time(NULL));
- for (int i = 0; i < n; i++) {
- fprintf(in, "%d ", rand() % 1000);
- }
- fclose(in);
- }
- int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) {
- printf("elements amount: ");
- int count;
- scanf("%d", &count);
- generate_file(count);
- FILE *in = fopen("input.txt", "r");
- FILE *out = fopen("output.txt", "w");
- int *data = NULL;
- int n = 0;
- int value;
- while (fscanf(in, "%d", &value) > 0) {
- if (data == NULL) {
- data = (int*) malloc(sizeof(int));
- n++;
- }
- else {
- data = (int*) realloc(data, (++n)*sizeof(int));
- }
- data[n-1] = value;
- }
- selection_sort(data, n);
- for (int i = 0; i < n; i++) {
- fprintf(out, "%d ", data[i]);
- }
- fclose(in);
- fclose(out);
- char name[] = "Ilya";
- char surname[] = "Pasechnikov";
- int year = 1993;
- int month = 6;
- int day = 7;
- char message[512];
- sprintf(message, " NAME: %s\n SURNAME: %s\n YEAR: %d\n MONTH: %d\n DAY: %d\nSORTED", name, surname, year, month, day);
- MessageBox(NULL, message, "lab3", MB_OK);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment