Requisito previo: Command_line_argument . El problema es encontrar el entero más grande entre los tres usando argumentos de línea de comando. Notas:
- Los argumentos de la línea de comandos se dan después del nombre del programa en el shell de la línea de comandos de los sistemas operativos. Para pasar argumentos de la línea de comandos, normalmente definimos main() con dos argumentos: el primer argumento es el número de argumentos de la línea de comandos y el segundo es una lista de argumentos de la línea de comandos.
int main(int argc, char *argv[]) { /* ... */ }
- atoi : se utiliza para convertir números de string en enteros
Ejemplos:
Input : filename 8 9 45 Output : 45 is largest Input : filename 8 9 9 Output : Two equal number entered Input : filename 8 -9 9 Output : negative number entered
Al llamar al programa, pasamos tres enteros junto con su nombre de archivo y luego el programa imprime el mayor de los tres números. Acercarse:
- El programa “devuelve 1” si se cumple una de las dos condiciones siguientes:
- Si dos números cualesquiera son iguales, imprima la declaración «se ingresaron dos números iguales».
- Si alguno de los números es negativo, escriba “número negativo ingresado”.
- De lo contrario, «devuelve 0» si se ingresan tres enteros diferentes.
Para una mejor comprensión, ejecute este código usted mismo.
C
// C program for finding the largest integer // among three numbers using command line arguments #include <stdio.h> #include <stdlib.h> // Taking argument as command line int main(int argc, char *argv[]) { int a, b, c; // Checking if number of argument is // equal to 4 or not. if (argc < 4 || argc > 5) { printf("enter 4 arguments only eg.\"filename arg1 arg2 arg3!!\""); return 0; } // Converting string type to integer type // using function "atoi( argument)" a = atoi(argv[1]); b = atoi(argv[2]); c = atoi(argv[3]); // Checking if all the numbers are positive of not if (a < 0 || b < 0 || c < 0) { printf("enter only positive values in arguments !!"); return 1; } // Checking if all the numbers are different or not if (!(a != b && b != c && a != c)) { printf("please enter three different value "); return 1; } else { // Checking condition for "a" to be largest if (a > b && a > c) printf("%d is largest", a); // Checking condition for "b" to be largest else if (b > c && b > a) printf ("%d is largest", b); // Checking condition for "c" to be largest.. else if (c > a && c > b) printf("%d is largest ",c); } return 0; }
Producción :
Publicación traducida automáticamente
Artículo escrito por Rohit_ranjan y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA