Напишите скрипт, который выводит на зкран последовательно все числа от первого до второго аргумента - 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;
}

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


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

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

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