|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
22.03.2017, 00:00 | #61 |
Пользователь
Регистрация: 20.03.2017
Сообщений: 48
|
но мне же еще нужно просортировать
|
22.03.2017, 00:02 | #62 |
Участник клуба
Регистрация: 14.05.2016
Сообщений: 1,793
|
Что?
num или rez? |
22.03.2017, 00:07 | #64 |
Участник клуба
Регистрация: 14.05.2016
Сообщений: 1,793
|
Ну это уже не надо (забыл удалить на фотке):
Код:
|
22.03.2017, 00:20 | #65 |
Пользователь
Регистрация: 20.03.2017
Сообщений: 48
|
#include <stdio.h>
#include <stdlib.h> #include <locale.h> struct beguny {char fam [20]; float rez; }; int comp (const int *, const int *); int main(void) { int i, kol; struct beguny data[10]; setlocale(LC_ALL,"Russian"); printf("Ââåäèòå êîëè÷åñòâî ó÷àñòíèêîâ: "); scanf("%d", &kol); for(i=0;i<kol;i++) { printf("Ââåäèòå ôàìèëèþ %d-ãî ñòóäåíòà:",i+1); scanf("%s", &data[i].fam); printf("Ââåäèòå ðåçóëüòàò %d-ãî ñòóäåíòà â áåãå: ",i+1); scanf("%f", &data[i].rez); } float rez[10]; for (i = 0; i < kol; i++) { rez[i] = data[i].rez * 100; } float num[10]; for (i = 0; i < kol; i++) { num[i] = data[i].rez * 100; } printf ("\n"); qsort(num, 10, sizeof (int), (int(*) (const void *, const void *)) comp); printf ("\n"); for (i = 0; i < kol; i++) { num[i] = data[i].rez * 100; } printf ("\n"); printf("\n×åòûðå ëó÷øèõ ñòóäåíòà: "); printf ("\n"); for ( i=0;i<4;i++) { printf("\n %d %s ", i+1,data[i].fam); printf(" %5.2f", data[i].rez); printf("\n "); } return 0; } int comp (const int *i, const int *j) { return *i - *j; system("pause"); return 0; } теперь не проходит сортировка |
22.03.2017, 00:21 | #66 |
Пользователь
Регистрация: 20.03.2017
Сообщений: 48
|
#include <stdio.h>
#include <stdlib.h> #include <locale.h> struct beguny {char fam [20]; float rez; }; int comp (const int *, const int *); int main(void) { int i, kol; struct beguny data[10]; setlocale(LC_ALL,"Russian"); printf("Введите количество участников: "); scanf("%d", &kol); for(i=0;i<kol;i++) { printf("Введите фамилию %d-го студента:",i+1); scanf("%s", &data[i].fam); printf("Введите результат %d-го студента в беге: ",i+1); scanf("%f", &data[i].rez); } float rez[10]; for (i = 0; i < kol; i++) { rez[i] = data[i].rez * 100; } float num[10]; for (i = 0; i < kol; i++) { num[i] = data[i].rez * 100; } printf ("\n"); qsort(num, 10, sizeof (int), (int(*) (const void *, const void *)) comp); printf ("\n"); for (i = 0; i < kol; i++) { num[i] = data[i].rez * 100; } printf ("\n"); printf("\nЧетыре лучших студента: "); printf ("\n"); for ( i=0;i<4;i++) { printf("\n %d %s ", i+1,data[i].fam); printf(" %5.2f", data[i].rez); printf("\n "); } return 0; } int comp (const int *i, const int *j) { return *i - *j; system("pause"); return 0; } |
22.03.2017, 00:25 | #67 |
Участник клуба
Регистрация: 14.05.2016
Сообщений: 1,793
|
Результат покажи на скриншоте.
|
22.03.2017, 00:42 | #68 |
Пользователь
Регистрация: 20.03.2017
Сообщений: 48
|
vot
|
22.03.2017, 00:54 | #69 |
Участник клуба
Регистрация: 14.05.2016
Сообщений: 1,793
|
Ты выводишь элементы структуры, а (в qsort) сортируешь массив "num" - это две разные сущности.
Выводить надо массив "num", который ты и отсортировал... Только надо выводить непосредственно сразу после сортировки; а у тебя сортировка "num", а потом ты "num" переназначаешь (зачем то?) - возвращаешь первоначальные значения как до сортировки???? ___________________________________ ______ Короче, выведи весь массив "num" до сортировки и (непосредственно сразу) после использования "qsort". Скриншот покажи (обрезай лишнее - в Paint можно сделать- чтобы нормально выглядело). Последний раз редактировалось ura_111; 22.03.2017 в 00:57. |
22.03.2017, 01:58 | #70 |
Пользователь
Регистрация: 20.03.2017
Сообщений: 48
|
и как правильно?
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Помогите дописать программу - допишите в программу формулу m=sqrt(re^2+lm^2) ( Delphi ) | nicroma | Помощь студентам | 0 | 24.12.2013 19:59 |
Помогите дописать программу | cL1zMa | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 06.06.2008 14:40 |
Помогите дописать программу. | ShnapS | Паскаль, Turbo Pascal, PascalABC.NET | 5 | 17.05.2008 19:50 |
Помогите дописать программу | ALIZE | Помощь студентам | 2 | 09.12.2007 18:45 |