Прокомментировать код - C (СИ) (76013)

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

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

Листинг программы
  1. #include <windows.h>
  2. #include <stdio.h>
  3. void gotoxy(int xpos, int ypos)
  4. {
  5. COORD scrn;
  6. HANDLE hOuput = GetStdHandle(STD_OUTPUT_HANDLE);
  7. scrn.X = xpos; scrn.Y = ypos;
  8. SetConsoleCursorPosition(hOuput,scrn);
  9. }
  10. #define SIZEX 16
  11. #define SIZEY 18
  12. #define FMAP_COUNTS 7
  13. #define SCR_SP '\xB0'
  14. #define SCR_OB '\xFE'
  15. int screen[SIZEX][SIZEY] = {{0},{0}};
  16. int map[4][4];
  17. int px, py, score, nextmap;
  18.  
  19. int main(void)
  20. {
  21. int i, j;
  22. int buff[SIZEX][SIZEY];
  23. for(i = 0; i < SIZEY; i++)
  24. for(j = 0; j < SIZEX; j++)
  25. buff[j][i] = screen[j][i];
  26. for(i = 0; i < 4; i++)
  27. for(j = 0; j < 4; j++)
  28. if(map[j][i])
  29. buff[j + px][i + py] = 1;
  30. gotoxy(0, 0);
  31. for(i = 0; i < SIZEY; i++)
  32. {
  33. for(j = 0; j < SIZEX; j++)
  34. {
  35. putchar(buff[j][i] == 0 ? '\xB0' : '-');
  36. }
  37. putchar('\n');
  38. }
  39. gotoxy(SIZEX + 1, 0);
  40. printf("Score: %i", score);
  41. return 0;
  42. }
1)Что сделали здесь:
Листинг программы
  1. for(i = 0; i < SIZEY; i++)
  2. for(j = 0; j < SIZEX; j++)
  3. buff[j][i] = screen[j][i];
  4. for(i = 0; i < 4; i++)
  5. for(j = 0; j < 4; j++)
  6. if(map[j][i])
  7. buff[j + px][i + py] = 1;
2)
Листинг программы
  1. #define SCR_SP '\xB0'
-'\xB0' - это ведь просто какой-то символ?

Решение задачи: «Прокомментировать код»

textual
Листинг программы
  1.  for(i = 0; i < SIZEY; i++)
  2.         for(j = 0; j < SIZEX; j++)
  3.             buff[j][i] = screen[j][i];

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

  1. В коде есть два вложенных цикла for.
  2. Переменные i и j используются как индексы для доступа к элементам массивов screen и buff.
  3. Массив screen размером SIZEX на SIZEY используется для хранения исходных данных.
  4. Массив buff размером SIZEX на SIZEY используется для хранения преобразованных данных.
  5. В первой итерации внешнего цикла for переменной i присваивается значение 0, во второй - 1 и так далее до SIZEY.
  6. В каждой итерации внутреннего цикла for переменной j присваивается значение от 0 до SIZEX с шагом 1.
  7. В каждой итерации внутреннего цикла for элемент массива screen[j][i] копируется в элемент массива buff[j][i].
  8. После завершения выполнения внутреннего цикла for каждой итерации внешнего цикла for, все элементы массива screen скопированы в массив buff.

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


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

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

5   голосов , оценка 4.2 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут