Как поставить программу на "Повтор" - C (СИ)
Формулировка задачи:
Вот к примеру простенькая программа
я хочу чтобы после того я ввёл данные, программа поработала выдала мне результат, консоль не закрывалась, а программа начиналась заново, как такое реализовать?
#include<stdio.h>
#include<conio.h>
int main()
{
int x=1;
int y;
int i;
int n;
printf("VVedite chislo N\n");
scanf("%d", &n);
printf("Tablica kvadratov\n");
printf("-----------------\n");
printf("4islo\ Kvadrat\n");
printf("-----------------\n");
for (i=1; i<=n; i++)
{
y=x*x;
printf("%3i\t%4i\n", x, y);
x+=1;
}
printf("-----------------\n");
getch();
}Решение задачи: «Как поставить программу на "Повтор"»
textual
Листинг программы
#include<stdio.h>
#include<conio.h>
int main()
{
for(;;)
{
int x=1;
int y;
int i;
int n;
printf("VVedite chislo N\n");
scanf("%d", &n);
printf("Tablica kvadratov\n");
printf("-----------------\n");
printf("4islo\ Kvadrat\n");
printf("-----------------\n");
for (i=1; i<=n; i++)
{
y=x*x;
printf("%3i\t%4i\n", x, y);
x+=1;
}
printf("-----------------\n");
getch();
}
}
Объяснение кода листинга программы
В этом коде используется цикл for(;;), который выполняется бесконечно, пока не будет остановлен пользователем. Внутри цикла объявлены следующие переменные:
- x - текущее значение переменной 1
- y - используется для хранения значения квадрата числа x
- i - используется в цикле
- n - количество квадратов, которые нужно вывести Затем происходит вывод сообщения с просьбой ввести количество квадратов, которые нужно вывести, и сохраняется это значение в переменную n с помощью функции scanf. Далее выводится шапка таблицы с номерами строк и столбцов. Затем в цикле for перебираются числа от 1 до n. Внутри этого цикла значение x умножается на себя и сохраняется в переменную y. Затем выводится строка с числом x и его квадратом. После этого значение x увеличивается на 1. После завершения цикла выводится нижняя строка таблицы. После завершения цикла for(;;) программа ожидает нажатия клавиши с помощью функции getch()