Указатель == ссылка? - C (СИ)

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

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

Добрый день. При реализации л/р нельзя использовать указатели вообще. Если я буду использовать такую конструкцию - будет ли это удовлетворять условию выполнения лр?
void print(int& val)
{
    // вывод на экран val
}
 
int main()
{
    int x = 10;
    print(x);
}
Формально я не использую указатель (*), но переменная val будет восприниматься как указатель. Подскажите пожалуйста
Блин, похоже такая конструкция в принципе невозможна :/

Решение задачи: «Указатель == ссылка?»

textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
 
#define N 6
#define M 10
 
void fill(int a[M][N])
{
  int i = 0;
  int j = 0;
 
  for(i = 0; i < N; i++)
  {
    for(j = 0; j < M; j++) a[i][j] = rand() % 10;
  }
}
 
void print(int a[M][N])
{
  int i = 0;
  int j = 0;
 
  printf("--------------------------------\n");
  for(i = 0; i < N; i++)
  {
    for(j = 0; j < M; j++) printf("%d ", a[i][j]);
    printf("\n");
  }
}
 
void removemaxes(int a[M][N])
{
  int i = 0;
  int j = 0;
  int max = 0;
 
  for(i = 0; i < N; i++)
  {
    max = a[i][0];
    for(j = 1; j < M; j++)
    {
      if (a[i][j] > max) max = a[i][j];
    }
    
    for(j = 0; j < M; j++)
    {
      if (a[i][j] == max) a[i][j] = 0;
    }
  }
}
 
int main(void)
{
  int x[M][N];
  fill(x);
  print(x);
  removemaxes(x);
  print(x);
  getchar();
  return 0;
}

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

  1. Включаются заголовочные файлы и .
  2. Определяются константы N и M, которые представляют собой размеры массива.
  3. Создаются две функции: fill и print, которые работают с массивом.
  4. В функции fill происходит заполнение массива случайными числами от 0 до 9.
  5. В функции print происходит вывод содержимого массива на экран.
  6. В функции removemaxes происходит удаление максимальных значений из массива.
  7. В функции main создается массив x, затем он заполняется случайными числами, выводится на экран, затем удаляются максимальные значения и снова выводится на экран.
  8. В конце программы ожидается нажатие клавиши для выхода из программы.
  9. Возвращается 0, что означает успешный конец работы программы.

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


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

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

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