Общее число учащихся школ - 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; }
Объяснение кода листинга программы
- Включаем необходимые заголовочные файлы для работы с стандартными функциями и вводом-выводом
- Определяем размер массива структур равным 15
- Создаем структуру
learn
для хранения информации об учебном заведении (тип заведения и количество учащихся) - В функции main() устанавливаем русскую локаль для корректного вывода кириллических символов
- Создаем две переменные i и sum типа int для итерации по массиву и суммирования количества учащихся
- Создаем массив структур date[N] для хранения информации об учебных заведениях
- Запускаем цикл for для заполнения каждой структуры в массиве
- Внутри цикла выводим сообщение с предложением выбрать тип заведения и считываем его с помощью функции scanf() в переменную date[i].typeoff
- Добавляем проверку на корректность введенного значения типа заведения (должно быть в диапазоне от 1 до 3)
- Если значение некорректно, выводим сообщение об ошибке и просим ввести значение заново
- Выводим сообщение с просьбой ввести количество учащихся в заведении и считываем его с помощью функции scanf() в переменную date[i].students
- Если тип заведения равен 1 (школа), добавляем количество учащихся к общей сумме sum
- По завершении цикла выводим общее количество учащихся в школах с помощью функции printf()
- Возвращаем 0 из функции main(), что означает успешное выполнение программы
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д