#include<stdio.h>
int main()
{
int line,linex;
printf("Enter number of lines: ");
scanf("%d",&line);
linex=line;
while(line!=0)
{
int input=0,total=0,number=0;
printf("Enter line %d: ",(linex-line+1));
scanf("%d",input);
while (input!=-1)
{
total+=input;
number++;
}
printf("Average = %f\n",(total/number));
line-=1;
}
return 0;
}
Выше мой код, который будет запрашивать у пользователя количество строк, цифры в каждой строке и затем распечатывать среднее значение для каждой строки. Дело в том, что когда я пытаюсь запустить это в Microsoft Visual C++ 2010 express, программа выйдет из строя. Он падает после ввода -1, чтобы разбить второй цикл WHILE.Сбой кода C при запуске
Как Давид писал зсапЕ нужен адрес переменной ввода. BTW, ваш внутренний цикл while будет пропущен, или он будет введен и никогда не останется, потому что 'input! = - 1' является инвариантом цикла. –
Помимо сбоя, 'total/number' является целым числом, а не плавающим, поэтому у вас есть неопределенное поведение. Используйте '(float) total/number', который преобразует' total' в 'float', так что выполняется деление с плавающей запятой (также будет работать« total/(float) number »). –