Задача на нахождение среднего значения двух чисел - C (СИ)

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

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

Итак, приветствую всех форумчан. Являюсь ну совсем новичком в области программирования, буду спрашивать часто, так как нацелен на наибыстрейшее изучение интересующих вопросов. К делу: Задача: Запишите предложение для вычисления среднего арифметического переменных a1 и a2. ОС Windows, работаю в Sublime Text 3, компилятор MinGW. Мой код:
#include <stdio.h>
 
void main (void)
{
 
unsigned char a1=0, a2=0;
float avr=0;
 
printf("\n%65s\n\n", "The calculation of average value for two variables!");
 
printf("Input the value of variable a1: ");
scanf("%d", &a1);
printf("a1= %d\n\n", a1);
 
printf("Input the value of variable a2: "); 
scanf("%d", &a2);
printf("a2= %d\n\n", a2);
 
avr=(a1+a2)/2;
 
printf("The average value of variables a1 and a2 is: %f", avr);
 
    return;
}
Проблема в том, что программа выдает мне абсолютно не то значение, которое ожидается получить. Например, при a1=5 и a2=5 результат вычислений будет равен 2 вместо положенных 5. Причем эту проблему я локализовал, т.е. причина кроется в неправильном изложении функции scanf. Ибо, когда я присваиваю значения переменным вручную (через оператор присваивания), то результат выдает верный. Вот и вопрос, как мне корректно описать ввод переменных через функцию scanf в данной ситуации? Откликнувшимся спасибо огромное.

Решение задачи: «Задача на нахождение среднего значения двух чисел»

textual
Листинг программы
             The calculation of average value for two variables!
Input the value of variable a1: 5
a1 = 5
Input the value of variable a2: 10
a2= 10
a1= 0

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


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

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

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