Вывести на экран минимальный и максимальный элементы введенного с клавиатуры массива типа double - C (СИ)
Формулировка задачи:
Кто может подсказать в чем может быть проблема. Есть программа, которая выводит на экран минимальный и максимальный элементы введенного с клавиатуры массива типа double. Вот как она реализована:
При компиляции и построении в Miracle C все хорошо, а в Code::Blocks (GNU GCC) все компилируется,но выводит какую-то ерунду вместо значений min и max..
Мне сейчас приходится делать много лабораторных на разные темы на С, и я уже не первый раз сталкиваюсь с тем, что одна программа прекрасно строится в одной среде разработки, но при этом после построения в другой корректно работать не хочет, хотя в коде вроде нет ничего криминального..
#include <stdio.h> void main() { double max,min,number_Array[10]; int i,j,k,c; printf("Please input array of 10 real numbers:\n"); for(i=0;i<10;++i) { printf("%s%d%s","Please input ", i+1 , " array element:\n"); scanf("%f", &number_Array[i]); } max=number_Array[0]; min=number_Array[0]; for(j=0;j<10;++j) { if(number_Array[j]>max) max=number_Array[j]; } for(k=0;k<10;++k) { if(number_Array[k]<min) min=number_Array[k]; } printf("%.2f%s%.2f",max," ",min); scanf("%d",&c); }
Решение задачи: «Вывести на экран минимальный и максимальный элементы введенного с клавиатуры массива типа double»
textual
Листинг программы
#include <stdio.h> #define sz 10 int main(void) { double max, min, array[sz]; printf("Please input array of %u real numbers:\n", sz); for(size_t i = 0; i < sz; ++i) { printf("Please input %u number: ", i + 1); scanf("%lf", array + i); } max = array[0]; min = array[0]; for(size_t i = 1; i < sz; ++i) { if(array[i] > max) max = array[i]; if(array[i] < min) min = array[i]; } printf("MAX = %.2lf, MIN = %.2lf\n", max, min); return 0; }
Объяснение кода листинга программы
В этом коде:
- Объявлены переменные:
double max
- для хранения максимального элемента массива;double min
- для хранения минимального элемента массива;double array[sz]
- для хранения массива double.
- Выводится сообщение с просьбой ввести массив чисел и его размер.
- В цикле происходит запрос на ввод каждого элемента массива с помощью функции
scanf()
. - Инициализируются переменные
max
иmin
первым введенным числом. - В цикле происходит сравнение каждого элемента массива с текущим максимальным и минимальным значением и, если необходимо, обновление значений
max
иmin
. - Выводится сообщение с минимальным и максимальным значением массива.
- Возвращается 0, чтобы указать, что программа успешно завершилась.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д