logo

funkce isdigit() v C

Toto téma se bude zabývat funkcí isdigit() v jazyce C. Funkce isdigit() je předdefinovaná funkce knihovny C, která se používá ke kontrole, zda se jedná o číselný znak od 0 do 9 či nikoliv. A pokud je daný znak číselné číslo nebo číslice, vrátí skutečnou booleovskou hodnotu nebo nenulovou; jinak vrátí nulovou nebo nepravdivou hodnotu. Funkce isdigit je deklarována uvnitř hlavičkového souboru ctype.h, takže musíme přidat do programu C.

Předpokládejme například, že do funkce isdigit() zadáme znak 'h'; funkce kontroluje, zda je vstupní znak číslice či nikoli. Zde znak není číslice. Funkce isdigit() tedy vrací hodnotu nula (0) nebo false. Podobně opět zadáme číselný znak '5' do funkce isdigit(). Tentokrát funkce vrací pravdivou nebo nenulovou hodnotu, protože '5' je číselný znak od 0 do 9 číslic.

věk rekha

Syntaxe funkce isdigit().

Následuje syntaxe funkce isdigit() v jazyce C.

 int isdigit (int ch); 

Parametry:

Ch - Definuje číselný znak, který má být předán ve funkci isdigit().

Návratová hodnota:

Funkce isdigit() zkontroluje argument 'ch', a pokud je předávaným znakem číslice, vrátí nenulovou hodnotu. V opačném případě zobrazuje nulovou nebo falešnou booleovskou hodnotu.

co je hibernace

Příklad 1: Program pro kontrolu, zda je daný znak číslice nebo ne

Vytvořme program, který zkontroluje, zda jsou dané znaky číslice nebo ne, pomocí funkce isdigit() v programování C.

 /* Check whether the given characters are digits or not in C. */ #include #include int main () { // Use the isdigit() function to check the character is digit or not. */ if (isdigit ( 'P' ) == 0) //check 'P' is digit { printf (' 
 The given character 'P' is not digit'. '); } else { printf ('
 The given character 'P' is a digit. '); } if (isdigit ( '3' ) == 0) //check for '3' { printf (' 
 The given character '3' is not digit'. '); } else { printf ('
 The given character '3' is a digit. '); } if (isdigit ( '!' ) == 0) //check for '!' character { printf (' 
 The given character '!' is not digit'. '); } else { printf ('
 The given character '!' is a digit. '); } if (isdigit ( '' ) == 0) //check for '44' { printf (' 
 The given character '' is not digit'. '); } else { printf ('
 The given character '' is a digit. '); } if (isdigit ( '0' ) == 0) //check for '0' { printf (' 
 The given character '0' is not a digit. '); } else { printf ('
 The given character '0' is a digit. '); } return 0; } 

Výstup:

 The given character 'P' is not a digit. The given character '3' is a digit. The given character '!' is not a digit. The given character '' is not a digit. The given character '0' is not a digit. 

Ve výše uvedeném programu jsme definovali různé znaky jako 'P', '3', '!', '', 0, abychom pomocí funkce isdigit() ověřili, zda se jedná o platné znaky či nikoli. A pak použijeme funkci isdigit(), která kontroluje a vrací znaky 'P', '1', nejsou číslice.

Příklad 2: Program pro kontrolu, zda znak zadaný uživatelem je číslice nebo ne

Napišme program, který pomocí funkce isdigit() v C zjistí, zda je vstupní znak platný nebo ne.

 /* Check whether the given characters are digits or not in C. */ #include #include int main () { char n; // declare an integer type variable n printf (' Enter a number to check for valid digits: '); scanf ('%c', &n); // use the isdigit() function to check the digit if (isdigit (n)) { printf (' 
 It is a digit. '); } else { printf (' 
 It is not a digit. '); } return 0; } 

Výstup:

 Enter a number to check for valid digits: 5 It is a digit. 

Ve výše uvedeném programu zadáme od uživatele znak '5' a poté pomocí funkce isdigit zkontrolujeme, zda je předaný argument číslice. Zde je předávaným znakem číslice, takže funkce isdigit() vrátí příkaz 'Je to číslice.'

nginx

2ndprovedení

 Enter a number to check for valid digits: A It is not a digit. 

Podobně, když do funkce isdigit() zadáme znak 'A', funkce zkontroluje platný znak a vidíme, že znak 'A' není číslice. Funkce tedy vrátí příkaz 'To není číslice.'

Příklad 3: Program pro tisk nulových a nenulových čísel pro předaný znak v C

Pojďme napsat program, který zkontroluje všechny dané znaky a vrátí nulové a nenulové hodnoty na základě předaných znaků do funkce isdigit() v C.

shehzad poonawala
 /* create a simple program to return zeroes and non-zeroes values based on the given characters. */ #include #include int main () { char num; // declare num as the character type variable num = '0'; // check character 0 using the isdigit() function printf (' 
 The isdigit() function returns result based on character (0) passed: %d ', isdigit (num)); num = 'o'; // check character o using the isdigit() function printf (' 
 The isdigit() function returns result based on character (o) passed: %d ', isdigit (num)); num = '08'; // check character 08 using the isdigit() function printf (' 
 The isdigit() function returns result based on character (08) passed: %d ', isdigit (num)); num = '+'; // check character + using the isdigit() function printf (' 
 The isdigit() function returns result based on character (+) passed: %d ', isdigit (num)); num = '%'; // check character % using the isdigit() function printf (' 
 The isdigit() function returns result based on character ('%') passed: %d ', isdigit (num)); return 0; } 

Výstup:

 The isdigit() function returns result based on character (0) passed: 1 The isdigit() function returns result based on character (o) passed: 0 The isdigit() function returns result based on character (08) passed: 1 The isdigit() function returns result based on character (+) passed: 0 The isdigit() function returns result based on character (%) passed: 0 

Ve výše uvedeném programu testujeme platné znaky dané číslice pomocí funkce isdigit(). Funkce isdigit() vrací 1 pro číselné znaky a 0 pro abecední nebo speciální symboly definované v programu, které nejsou číslicemi.

Příklad 4: Program pro kontrolu všech prvků pole pomocí funkce isdigit().

Pojďme napsat program, který pomocí funkce isdigit() v C najde všechny platné číslice prvku pole.

 #include #include #include int main () { int i; // declare and initialize the character type array char arr[8] = {&apos;E&apos;, &apos;08&apos;, &apos;@&apos;, &apos;-&apos;, &apos;3&apos;, &apos;/&apos;, &apos;007&apos;, &apos;$&apos;}; int arr2[8] = {0, 0, 0, 0, 0, 0, 0, 0}; // initialize arr2 with containing all zeroes element // use for loop to iterate all elements for (i = 0; i <8; i++) { check and assign digits to the arr2[i] using isdigit() function (arr[i]); } for (i="0;" i < 8; display array characters printf (' 
 '%c'', arr[i]); elements if (arr2[i] !="0)" is a digit character. '); else not valid return 0; pre> <p> <strong>Output:</strong> </p> <pre> &apos;E&apos; is not a valid digit character. &apos;8&apos; is a digit character. &apos;@&apos; is not a valid digit character. &apos;-&apos; is not a valid digit character. &apos;3&apos; is a digit character. &apos;/&apos; is not a valid digit character. &apos;7&apos; is a digit character. &apos;$&apos; is not a valid digit character. </pre> <p>We declared and initialized the arr[] variable with some elements in the above program. And then, we create another array arr2[] that contains zero (0) to assign the result to those elements that are not valid digits. The isdigit() function checks all the arr[] array elements and returns non-zero values to the valid digit elements. Else it returns zeroes (0) to non-digit elements.</p> <hr></8;>

Ve výše uvedeném programu jsme deklarovali a inicializovali proměnnou arr[] s některými prvky. A pak vytvoříme další pole arr2[], které obsahuje nulu (0), abychom přiřadili výsledek těm prvkům, které nejsou platnými číslicemi. Funkce isdigit() zkontroluje všechny prvky pole arr[] a platným prvkům číslic vrátí nenulové hodnoty. Jinak vrací nuly (0) nečíslicovým prvkům.