Нужно заменить ровно один (любой) символ в следующей строке, причём так, чтобы она скомпилилась и было выведено ровно 20 звёздочек:
int main() { int i, n = 20; for (i = 0; i < n; i--) { printf("*"); } }
Для тех, кто «набил руку» на особенностях C, задачка, скорее всего, сложности не представляет; но существует как минимум 3 решения, и если вы нашли одно — то это не повод расслабиться :) А может быть, вы найдёте ещё четвёртое, пятое..?
Вот эти три решения:
- Самое очевидное —
int main() { int i, n = 20; for (i = 0; i < n;n--) { printf("*"); } } - Не столь заметное —
int main() { int i, n = 20; for (i = 0;-i < n; i--) { printf("*"); } } - Наиболее красивое —
int main() { int i, n = 20; for (i = 0; i+n; i--) { printf("*"); }
Комментариев нет:
Отправить комментарий