Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

lab - Vova / 04_2 / main

.cpp
Скачиваний:
7
Добавлен:
15.06.2014
Размер:
1.3 Кб
Скачать
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <string.h>

//#define N 3
#define S 5

struct student
{
	char name[25];
	int *mark;
};

void main()
{
	student man[S];
	int i, j;
	char str[10];
	int m_count[4] = {0, 0, 0, 0};
	int N;

	srand((unsigned)time(NULL));

	printf("Kol-vo ekzamenov: ");
	scanf("%d", &N);
	if (N<1)
	{
		printf("=(");
		getchar();
		getchar();
		exit(1);
	}

	for (i = 0; i < S; i++)
	{
		man[i].mark = new int[N];
		strcpy(man[i].name, "student_");
		itoa(i, str, 10);
		strcat(man[i].name, str);
		printf("\n%s\n", man[i].name);
		for (j = 0; j < N; j++)
		{
			man[i].mark[j] = rand()%4+2;
			printf("mark %d: %d\n", j, man[i].mark[j]);
		}
	}

	for (i = 0; i < S; i++)
	{
		for (j = 0; j < N; j++)
		{
			m_count[man[i].mark[j]-2]++;
		}
	}

	for (i = 0; i < 4; i++) printf("\n%d: %d", i+2, m_count[i]);
	printf("\nAverage mark = %f\n", 
		(float)(m_count[0]*2+m_count[1]*3+m_count[2]*4+m_count[3]*5)/(N*S));

	printf("\nStudents with bad marks:\n");
	for (i = 0; i < S; i++)
	{
		for (j = 0; j < N; j++)
		{
			if (man[i].mark[j] < 3)
			{
				printf("%s\n", man[i].name);
				break;
			}
		}
	}

	for (i = 0; i < S; i++)
	{
		delete man[i].mark;
	}

	getchar();
	getchar();
}
Соседние файлы в папке 04_2
  • #
    15.06.201427.65 Кб704_2.ncb
  • #
    15.06.2014897 б704_2.sln
  • #
    15.06.20148.7 Кб704_2.suo
  • #
    15.06.20143.37 Кб804_2.vcproj
  • #
    15.06.20141.3 Кб7main.cpp