Answer:
check out the solution.
------------------------------------------------
1.
CODE:
#include<stdio.h>
#include<string.h>
int main(int argc, char *argv[]) {
    // variable declaration
    char str[100];
    int i;
    
    // infinite while loop
    while(1)
    {
        // prompt user to enter input 
        printf("\nEnter the Input (9999 to quit) : ");
        // reads the input from console
        scanf("%[^\n]%*c",str);
    
        if(strcmp(str, "9999") == 0)    // EOF - indicates end of user input
            break;
        
        // check for the command line argument
        if(strcmp(argv[1], "--upper") == 0)
        {
            // loop through characters and convert accordingly
            for (i = 0; i < strlen(str); i++)
            {
                if(str[i] >= 'a' && str[i] <= 'z' && str[i] != ' ')
                {
                    str[i] = str[i] - 32;
                }
                    
            }
            // display the converted string
            printf("%s", str);
        }
        else if(strcmp(argv[1], "--lower") == 0)
        {
            for (i = 0; i < strlen(str); i++)
            {
                if(str[i] >= 'A' && str[i] <= 'Z' && str[i] != ' ')
                    str[i] = str[i] + 32;
            }
            printf("%s", str);
        }
        else if(strcmp(argv[1], "--swap") == 0)
        {
            for (i = 0; i < strlen(str); i++)
            {
                if(str[i] >= 'A' && str[i] <= 'Z' && str[i] != ' ')
                    str[i] = str[i] + 32;
                else if(str[i] >= 'a' && str[i] <= 'z' && str[i] != ' ')
                    str[i] = str[i] - 32;
            }
            printf("%s", str);
        }
        else // print the message appropriately if invalid argument
            printf("\n\nInvalid command line argument!!!");
        // if-elseif ends
            
    } // infinite while loop ends
        
} // main ends
------------------------------------------------------------------------------------------
------------------------------------------------------
OUTPUT :
1. command line argument : --upper
2. command line argument : --lower
3. command line argument : --swap
---------------------------------------------------------------
2.
CODE:
#include<stdio.h>
#include<string.h>
int main(int argc, char *argv[]) {
    // variable declaration
    char str[100];
    int i, cnt = 0;
    
    // infinite while loop
    while(1)
    {
        // prompt user to enter input 
        printf("\nEnter the Input (9999 to quit) : ");
        // reads the input from console
        scanf("%[^\n]%*c",str);
    
        if(strcmp(str, "9999") == 0)    // EOF - indicates end of user input
            break;
        
        // loop through characters and convert accordingly
        for (i = 0; i < strlen(str); i++)
        {
            // check if char is in between 0 and 9 and count them if any
            if(str[i] >= '0' && str[i] <= '9')
            {
                cnt++;
            }
                
        }
    } // infinite while loop ends
    
    // when input reaches EOF - display the count of digits
    printf("%d digits", cnt);
        
} // main ends
--------------------------------------------------------------
------------------------------------------------------------------------------
OUTPUT :
1.
2.
3.
==================================================