Общее число учащихся школ - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Известны данные о количестве учащихся в каждом из 15 учебных заведений и о типе этого заведения (школа, техникум или училище). Найти общее число учащихся школ. Помогите написать, желательно с объяснениями. Заранее спасибо!

Решение задачи: «Общее число учащихся школ»

textual
Листинг программы
#include <stdlib.h>
#include <stdio.h>
#include <locale.h>
#define N 15
 
 
struct learn    //создаем структуру
{
  int typeoff;
 
  int students;
};
int main()
{
 
    setlocale(LC_ALL,"rus");
 
    int i,sum;                  //пара перемнных для цмкла и суммирования
    struct learn date[N];      // наша структура
 
    for(i=0,sum=0;i<N;i++)//запоняем каждую структуру
    {
        printf("Выбирете тип заведения №%d.\n 1-школа 2-техникум 3-колледж\n",i+1); //выбираем тип заведения
        scanf("%d",&date[i].typeoff);
        while(date[i].typeoff>3||date[i].typeoff<1)    //проверяем на корректный ввод
        {
            printf("Недопустимое значение. Повторите ввод.\n 1-школа 2-техникум 3-колледж\n",i+1);
            scanf("%d",&date[i].typeoff);
        }
        printf("Введите количество учащихся в заведении №%d\n",i+1);//ввод кол-ва учащихся
        puts("lalarf");
        scanf("%d",&date[i].students);
 
        if(date[i].typeoff==1)                                            //и если наш тип школа, то суммируем школьников
            sum+=date[i].students;
    }
 
    printf("Общее число учащихся в школах - %d",sum);
 
 
 
    return 0;
}

Объяснение кода листинга программы

  1. Включаем необходимые заголовочные файлы для работы с стандартными функциями и вводом-выводом
  2. Определяем размер массива структур равным 15
  3. Создаем структуру learn для хранения информации об учебном заведении (тип заведения и количество учащихся)
  4. В функции main() устанавливаем русскую локаль для корректного вывода кириллических символов
  5. Создаем две переменные i и sum типа int для итерации по массиву и суммирования количества учащихся
  6. Создаем массив структур date[N] для хранения информации об учебных заведениях
  7. Запускаем цикл for для заполнения каждой структуры в массиве
  8. Внутри цикла выводим сообщение с предложением выбрать тип заведения и считываем его с помощью функции scanf() в переменную date[i].typeoff
  9. Добавляем проверку на корректность введенного значения типа заведения (должно быть в диапазоне от 1 до 3)
  10. Если значение некорректно, выводим сообщение об ошибке и просим ввести значение заново
  11. Выводим сообщение с просьбой ввести количество учащихся в заведении и считываем его с помощью функции scanf() в переменную date[i].students
  12. Если тип заведения равен 1 (школа), добавляем количество учащихся к общей сумме sum
  13. По завершении цикла выводим общее количество учащихся в школах с помощью функции printf()
  14. Возвращаем 0 из функции main(), что означает успешное выполнение программы

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 4.385 из 5
Похожие ответы