Напишите скрипт, который выводит на зкран последовательно все числа от первого до второго аргумента - C (СИ)
Формулировка задачи:
Напишите скрипт CONT, который выводит на зкран последовательно все числа от первого до второго аргумента. (Пусть числа лежат в пределах от 1 до 999). Выполните проверку правильности ввода аргументов.
Решение задачи: «Напишите скрипт, который выводит на зкран последовательно все числа от первого до второго аргумента»
textual
Листинг программы
#include <stdio.h> #include <stdlib.h> #include <errno.h> #define LOW_BOUND (1) #define HIGH_BOUND (999) int main(int argc, char ** argv) { if ( argc ) { if ( argc != 3 ) { fprintf(stderr, "Usage: %s low high\n", *argv); return 1; } else { char * tail; long n, m; errno = 0; n = strtol(argv[1], &tail, 10); if ( errno || *tail || n < LOW_BOUND || n > HIGH_BOUND ) { fprintf(stderr, "Error: first parameter is not a valid number!\n"); return 1; } errno = 0; m = strtol(argv[2], &tail, 10); if ( errno || *tail || m < LOW_BOUND || m > HIGH_BOUND ) { fprintf(stderr, "Error: second parameter is not a valid number!\n"); return 1; } if ( n >= m ) { fprintf(stderr, "Error: first number can't be greater or equals to second!\n"); return 1; } main(0, argv); } } else { int n = atoi(argv[1]); printf("%d\n", n); if ( n < atoi(argv[2]) ) { char tmp[4]; char * params[] = { argv[0], tmp, argv[2], NULL }; sprintf(params[1], "%d", n + 1); main(0, params); } } return 0; }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д