Правильно ли передается массив в функцию - C (СИ)

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

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

Подскажите пожалуйста что я сделал не так - код работает, но компилятор выдает такие сообщения: Проблема в неправильной передаче массива в функцию?
// подведение итогов продаж
#include <stdio.h>
#define SELLER 4
#define PRODUCT 5
 
    void printTable (float [][PRODUCT]); // "previous declaration of 'printTable' was here"
 
int main () {
 
    int seller, product;
    float total;
    float sales[SELLER][PRODUCT] = {0};
    
    //заполняет массив данными
    printf("Enter salesman number (1-4) (-1 to end): ");
    scanf("%d", &seller);
    
    while (seller != -1) {
 
        printf("Enter product category (1-5): ");
        scanf("%d", &product);
        printf("Enter sales total: ");
        scanf("%f", &total);
        sales[seller - 1][product -1] += total;
        printf("Enter salesman number (1-4) (-1 to end): ");
        scanf("%d", &seller);
    }
    //выводит таблицу на печать
    printTable (sales);
 
    return 0;
}
    
printTable (float sales[][PRODUCT]){ //"return type defaults to 'int'" "conflicting types for 'printTable'"
        int i, k;
        printf("\n\n");
        for (i = 0; i <= SELLER - 1; i++){
            for (k = 0; k <= PRODUCT - 1; k++){
                printf("%.2f  ", sales[i][k]);
            }
            printf("\n");
}
    }
 
    [C]
[/C]

Решение задачи: «Правильно ли передается массив в функцию»

textual
Листинг программы
void printTable (float sales[][PRODUCT]){

Объяснение кода листинга программы

  1. В данном коде представлена функция printTable, которая принимает в качестве аргумента массив sales, представляющий собой таблицу продаж.
  2. Массив sales имеет тип float и размерность PRODUCT, где PRODUCT - это константа, определяющая количество столбцов в таблице.
  3. В функции printTable происходит печать содержимого таблицы продаж.
  4. Каждый элемент массива sales представляет собой отдельную строку таблицы, а каждый столбец таблицы представлен отдельным элементом массива.
  5. В функции printTable происходит итерация по каждому элементу массива sales и вывод его значения на экран.
  6. Для печати таблицы может использоваться специальная формула или шаблон, который определяет формат вывода каждого элемента массива.
  7. В результате выполнения функции printTable на экран будет выведена таблица продаж с заданными значениями.

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


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

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

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