Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
DERBI
0 / 0 / 0
Регистрация: 13.12.2010
Сообщений: 7
#1

скажите что нет так - C++

13.12.2010, 07:11. Просмотров 365. Ответов 2
Метки нет (Все метки)

В двумерном массиве хранятся данные об оценках N студентов по М предметам. Номер строки соответствует номеру студента в группе, номер столбца – предмету. Опре-делить K самых успешных студентов. ЕСЛИ МОЖНО НАПИШИТЕ КАК НАДО.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include "stdafx.h"
#include "stdlib.h"
#include "stdio.h"
#include "windows.h"
#include "locale.h"
 
 
int _tmain(int argc, _TCHAR* argv[])
{
        setlocale(LC_ALL,"Russian");  
    int **Mas = NULL,R = 0,i = 0, N = 0, SUM = 0,j = 0,m = 0,num = 0;
        float sr = 0;
        printf("Введите количество учеников: ");
        scanf("%d",&R);
        Mas=(int **) calloc(R,sizeof(int *));;
        printf("Сколько предметов: ");
        scanf("%d",&N);
        for (i=0;i<R;i++)
        {
     Mas[i] = (int *) calloc(N, sizeof(int));
        }
        for (i=0;i<R;i++)
        {
                for (j=0;j<N;j++)
              {
                     printf("Введите оценку %d ученика за %d предмет: ",i+1,j+1);
                     scanf("%d",&Mas[i][j]);
              }
        }
        
 
    getchar();
        return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.12.2010, 07:11
Я подобрал для вас темы с готовыми решениями и ответами на вопрос скажите что нет так (C++):

скажите пожалуйста что не так? - C++
пишет ошибку &quot;Необработанное исключение в &quot;0x0f3fde8f (msvcr100d.dll)&quot; в &quot;lab2.exe&quot;: 0xC0000005: Нарушение прав доступа при записи...

Скажите, что не так делаю! - C++
Пишет, что ошибка в строчке int T =... #include &lt;cstdlib&gt; #include &lt;iostream&gt; using namespace std; int main(int argc, char...

Не работает код, скажите что не так) - C++
вот код немогу понять почему выдает ошыбки. #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;fstream&gt; #include &lt;conio.h&gt; ...

Так, норм задачка, гляньте, скажите что да как - C++
Как-то раз Поликарп захотел узнать, кто из секретарей разговаривает по Spyke, а кто — нет. Он выписал для каждого секретаря номер сессии...

Ребят Незнаю что делать при запуске на компилирование выдает ошибку.Кто понимает что не так скажите а если не затруднит исправьте ошибку - C++
Разговаривал с двумя преподами говорят что проект не правильно создавал,хотя все правильно из группы спрашивал у парней говорят что не...

С++ задача, надо зациклить, скажите что не так, ошибку выдает в switch, про точку с запятой знаю их вроде не н - C++
{ do { char c; system(&quot;echo Есть три задачи&quot;); system(&quot;echo 1-Следование&quot;); system(&quot;echo 2-Ветвление&quot;); system(&quot;echo...

2
accept
4832 / 3253 / 165
Регистрация: 10.12.2008
Сообщений: 10,569
13.12.2010, 09:06 #2
дальше для каждой строки надо посчитать среднее значение (это складываешь и делишь на количество слагаемых)

все средние значения сохранить в дополнительный массив (нужные ещё номеры строк, для них тоже массив нужен, лучше сделать структуру { номер, среднее_значение } и потом массив структур таких)
отсортировать массив номеров и средних значений по средним значениям в убывающем порядке

потом взять с начала K номеров строк и вывести их

C
1
2
3
4
struct paver {
    int ind;
    double aver;
};
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
    struct paver *students;
 
    students = (struct paver *) calloc(R, sizeof(struct paver));
    assert(students != NULL && "can't allocate");
 
    for (i = 0; i < R; i++) {
        double sum = 0.0;
        for (j = 0; j < N; j++)
            sum += Mas[i][j];
        students[i].ind = i;
        students[i].aver = sum / j;
    }
 
    /* здесь уже есть массив структур,
       заполненный номерами и средними значениями,
       его теперь можно сортировать */
можно всё сделать через массивы
1
Gambit1993
0 / 0 / 0
Регистрация: 30.11.2010
Сообщений: 3
22.12.2010, 17:42 #3
Derbi 25 вариант? скайп есть надо связаться? gambit1993
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.12.2010, 17:42
Привет! Вот еще темы с ответами:

Почему код не работает хотя ошибок нет? Что-то не так с выделением памяти? - C++
#include &lt;math.h&gt; #include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;iostream&gt; using namespace std; int n = 0; double a, b; ...

скажите пожалуйста, что означает здесь b. ,это какия-либо функция или что? - C++
скажите пожалуйста, что означает здесь b. ,это какия-либо функция или что? //анализируем все клетки доски for(int i = 0; i &lt; 8;...

скажите что значат %.2f, 4,8 что значат эти цифры и как оно выведет на экран - C++
printf(&quot;\n Точность плавающей точки для PI: %.2f, %.4f, %.8f\n&quot;, PI,PI,PI); скажите что значат %.2f, 4,8 что значат эти цифры и как оно...

Почему так работает, а так нет? - C++
так работает // Возведение b в степень s по модулю m float powmod(float b, long s) { float c=1; while (s) {


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru