Ввести размерность массива и проконтролировать её и данные на корректность - C (СИ)
Формулировка задачи:
Нужно ввести размерность массива и проконтролировать её и данные на корректность...
#include "stdafx.h" #include <stdio.h> #include <conio.h> #include <math.h> void main(void) { float mas[50] = {0}; float summ = 0; printf("Vvedite chislo:\n"); for( int i = 0; i < 50; i++ ) { scanf("%f",&mas[i]) } printf("=============================\n"); for( int i = 0; i < 50; i++ ) { int integerValue = (int)mas[i]; float drobValue = mas[i] - integerValue; float drobAbs = fabsf( drobValue ); if( drobValue == 0 ) { printf( "Integer element: %f\n", mas[i] ); } summ+ = drobAbs; } printf("=============================\n"); printf( "Drob summ = %f", summ ); getch(); }
Поправлю вопрос: мне нужно реализовать возможность выбора размерности массива с клавиатуры. Например, у меня линейный массив на 50 элементов, а мне нужно из этих 50 выбрать всего, ну например, 5 элементов
Решение задачи: «Ввести размерность массива и проконтролировать её и данные на корректность»
textual
Листинг программы
#include "stdafx.h" #include <stdio.h> #include <conio.h> #include <math.h> void main(void) { int n; scanf("%d",&n); if (n<50) { float mas[[B]50[/B]] = {0},summ = 0; printf("Vvedite chislo:\n"); for( int i = 0; i < n; i++ ) { scanf("%f",&mas[i]) } printf("=============================\n"); for( int i = 0; i < n; i++ ) { int integerValue = (int)mas[i]; float drobValue = mas[i] - integerValue; float drobAbs = fabsf( drobValue ); if( drobValue == 0 ) { printf( "Integer element: %f\n", mas[i] ); } summ+ = drobAbs; } printf("=============================\n"); printf( "Drob summ = %f", summ ); getch(); } }
Объяснение кода листинга программы
Вывод:
- Ввод размера массива
n
с помощьюscanf(
%d,&n);
- Проверка корректности ввода размера массива. Если
n
меньше 50, то программа переходит к следующему шагу, иначе выводит сообщение об ошибке. - Создание одномерного массива
mas
с помощью оператора[]
и заполнение его нулями. Размер массива не указан, он определяется переменнойn
. - Ввод элементов массива с помощью цикла
for
и функцииscanf(
%f,&mas[i])
. - Вывод всех элементов массива с помощью цикла
for
и функцииprintf(
Integer element: %f\n, mas[i])
. - Вычисление абсолютного значения каждого нецелого элемента массива с помощью функции
fabsf( drobValue )
. - Суммирование абсолютных значений нецелых элементов массива с помощью переменной
summ
. - Вывод суммы нецелых элементов массива с помощью функции
printf(
Drob summ = %f, summ)
. - Получение ввода с помощью
getch()
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д