A logikai operátorok logikai műveleteket hajtanak végre egy adott kifejezésen két vagy több kifejezés vagy feltétel összekapcsolásával. Különféle relációs és feltételes kifejezésekben használható. Ez az operátor logikai értékeken alapul a feltétel logikai ellenőrzéséhez, és ha a feltételek igazak, akkor 1-et ad vissza. Ellenkező esetben 0-t (hamis) ad vissza. A C programozásban a logikai operátorokat három típusba sorolják, mint például a logikai ÉS (&&) operátor, a logikai VAGY operátor (||) és a logikai NOT (!) operátor. Itt megismerjük a Logikai ÉS operátort és annak különféle példáit a C programozási nyelvben.
Logikai ÉS operátor
A logikai ÉS operátor az „&&” kettős „és” szimbólumként jelenik meg. Két vagy több operandus feltételét ellenőrzi egy kifejezésben való kombinálással, és ha minden feltétel igaz, a logikai ÉS operátor a logikai értéket igaz vagy 1-et adja vissza. Ellenkező esetben hamis vagy 0 értéket ad vissza.
Megjegyzés: Ha mindkettő értéke nem nulla, a feltétel igaz marad. Ellenkező esetben a logikai ÉS (&&) operátor 0-t (hamis) ad vissza.
Szintaxis
(condition1 && condition2)
A fenti szintaxisban két feltétel található, a feltétel1 és a feltétel2, valamint a kettős (&&) és jel között. Ha mindkét feltétel igaz, a logikai ÉS operátor 1 vagy igaz logikai értéket ad vissza. Ellenkező esetben hamis értéket ad vissza.
A logikai ÉS (&&) operátor igazságtáblázata
A | B | A && B |
---|---|---|
1 | 1 | 1 |
1 | 0 | 0 |
0 | 1 | 0 |
0 | 0 | 0 |
1. példa: Program a logikai ÉS operátor bemutatására C-ben
#include #include int main () { // declare variable int n = 20; // use Logical AND (&&) operator to check the condition printf (' %d ', (n == 20 && n >= 8)); // condition is true, therefore it returns 1 printf (' %d ', (n >= 1 && n >= 20)); printf (' %d ', (n == 10 && n >= 0)); printf (' %d ', (n >= 20 && n <= 40)); return 0; } < pre> <p> <strong>Output</strong> </p> <pre> 1 1 0 1 </pre> <p> <strong>Example 2: Program to find the largest number using the Logical AND operator</strong> </p> <pre> #include #include int main () { // declare integer type variable int x, y, z; printf (' Enter the first number: '); scanf ('%d', &x); printf (' Enter the second number: '); scanf ('%d', &y); printf (' Enter the third number: '); scanf ('%d', &z); // use logical AND operator to validate the condition if ( x >= y && x >= z ) { printf (' %d is the largest number of all. ', x); } else if ( y >= x && y >= z) { printf (' %d is the largest number of all. ', y); } else { printf ( ' %d is the largest number of all. ', z); } return 0; } </pre> <p> <strong>Output</strong> </p> <pre> Enter the first number: 20 Enter the second number: 10 Enter the third number: 50 50 is the largest number of all </pre> <p> <strong>Example 3: Program to use the Logical AND (&&) operator to check whether the user is teenager or not.</strong> </p> <pre> #include #include int main () { // declare variable int age; printf (' Enter the age: '); scanf (' %d', &age); // get age // use logical AND operator to check more than one condition if ( age >= 13 && age <= 19) { printf (' %d is a teenager age. ', age); } else not return 0; < pre> <p> <strong>Output</strong> </p> <pre> Enter the age: 17 17 is a teenager age. 2nd execution: Enter the age: 10 10 is not a teenager age. </pre> <p> <strong>Example 4: Program to validate whether the entered number is in the defined range or not.</strong> </p> <pre> #include int main () { int num; printf (' Enter a number between 1 to 50: '); scanf (' %d', &num); //get the number // use logical AND operator to check condition if ( (num > 0 ) && (num 50 ) && ( num <= 50 100)) { printf (' the entered number is in range and 100. '); } else please enter defined range. return 0; < pre> <p> <strong>Output</strong> </p> <pre> Enter a number between 1 to 50: 19 The entered number is in the range 0 and 50. 2nd Run Enter a number between 1 to 50: 51 The entered number is in the range 50 and 100. 3rd execution: Enter a number between 1 to 50: 0 Please enter the number is in the defined range. </pre> <p> <strong>Example 5: Program to validate the username and password entered by the user is correct or not using the predefined username and password.</strong> </p> <pre> #include #include // use #define macro to define the values for UserName and Password #define UserName 'system' #define Password 'admin@123' int main () { // declare character type array char un[50], pass[50]; // take UserName and Password from user printf ( ' Enter the username: ' ); scanf (' %s', un); printf ( ' Enter the password: ' ); scanf (' %s', pass); // use if statement and Logical AND operator to validate the condition if (strcmp (UserName, un) == 0 && strcmp (Password, pass) == 0) { printf (' The user's credentials are correct. '); } else { printf ( ' The user's credentials are incorrect. '); } return 0; } </pre> <p> <strong>Output</strong> </p> <pre> Enter the username: system Enter the password: admin@123 The user's credentials are correct. 2nd execution Enter the username: system Enter the password: admin@1234 The user's credentials are incorrect. </pre> <hr></=></pre></=></pre></=>
2. példa: Programozza meg a legnagyobb szám megtalálását a Logikai ÉS operátor használatával
#include #include int main () { // declare integer type variable int x, y, z; printf (' Enter the first number: '); scanf ('%d', &x); printf (' Enter the second number: '); scanf ('%d', &y); printf (' Enter the third number: '); scanf ('%d', &z); // use logical AND operator to validate the condition if ( x >= y && x >= z ) { printf (' %d is the largest number of all. ', x); } else if ( y >= x && y >= z) { printf (' %d is the largest number of all. ', y); } else { printf ( ' %d is the largest number of all. ', z); } return 0; }
Kimenet
Enter the first number: 20 Enter the second number: 10 Enter the third number: 50 50 is the largest number of all
3. példa: Program, amely a Logikai ÉS (&&) operátort használja annak ellenőrzésére, hogy a felhasználó tinédzser-e vagy sem.
#include #include int main () { // declare variable int age; printf (' Enter the age: '); scanf (' %d', &age); // get age // use logical AND operator to check more than one condition if ( age >= 13 && age <= 19) { printf (\' %d is a teenager age. \', age); } else not return 0; < pre> <p> <strong>Output</strong> </p> <pre> Enter the age: 17 17 is a teenager age. 2nd execution: Enter the age: 10 10 is not a teenager age. </pre> <p> <strong>Example 4: Program to validate whether the entered number is in the defined range or not.</strong> </p> <pre> #include int main () { int num; printf (' Enter a number between 1 to 50: '); scanf (' %d', &num); //get the number // use logical AND operator to check condition if ( (num > 0 ) && (num 50 ) && ( num <= 50 100)) { printf (\' the entered number is in range and 100. \'); } else please enter defined range. return 0; < pre> <p> <strong>Output</strong> </p> <pre> Enter a number between 1 to 50: 19 The entered number is in the range 0 and 50. 2nd Run Enter a number between 1 to 50: 51 The entered number is in the range 50 and 100. 3rd execution: Enter a number between 1 to 50: 0 Please enter the number is in the defined range. </pre> <p> <strong>Example 5: Program to validate the username and password entered by the user is correct or not using the predefined username and password.</strong> </p> <pre> #include #include // use #define macro to define the values for UserName and Password #define UserName 'system' #define Password 'admin@123' int main () { // declare character type array char un[50], pass[50]; // take UserName and Password from user printf ( ' Enter the username: ' ); scanf (' %s', un); printf ( ' Enter the password: ' ); scanf (' %s', pass); // use if statement and Logical AND operator to validate the condition if (strcmp (UserName, un) == 0 && strcmp (Password, pass) == 0) { printf (' The user's credentials are correct. '); } else { printf ( ' The user's credentials are incorrect. '); } return 0; } </pre> <p> <strong>Output</strong> </p> <pre> Enter the username: system Enter the password: admin@123 The user's credentials are correct. 2nd execution Enter the username: system Enter the password: admin@1234 The user's credentials are incorrect. </pre> <hr></=></pre></=>
4. példa: Program annak ellenőrzésére, hogy a megadott szám a meghatározott tartományban van-e vagy sem.
#include int main () { int num; printf (' Enter a number between 1 to 50: '); scanf (' %d', &num); //get the number // use logical AND operator to check condition if ( (num > 0 ) && (num 50 ) && ( num <= 50 100)) { printf (\' the entered number is in range and 100. \'); } else please enter defined range. return 0; < pre> <p> <strong>Output</strong> </p> <pre> Enter a number between 1 to 50: 19 The entered number is in the range 0 and 50. 2nd Run Enter a number between 1 to 50: 51 The entered number is in the range 50 and 100. 3rd execution: Enter a number between 1 to 50: 0 Please enter the number is in the defined range. </pre> <p> <strong>Example 5: Program to validate the username and password entered by the user is correct or not using the predefined username and password.</strong> </p> <pre> #include #include // use #define macro to define the values for UserName and Password #define UserName 'system' #define Password 'admin@123' int main () { // declare character type array char un[50], pass[50]; // take UserName and Password from user printf ( ' Enter the username: ' ); scanf (' %s', un); printf ( ' Enter the password: ' ); scanf (' %s', pass); // use if statement and Logical AND operator to validate the condition if (strcmp (UserName, un) == 0 && strcmp (Password, pass) == 0) { printf (' The user's credentials are correct. '); } else { printf ( ' The user's credentials are incorrect. '); } return 0; } </pre> <p> <strong>Output</strong> </p> <pre> Enter the username: system Enter the password: admin@123 The user's credentials are correct. 2nd execution Enter the username: system Enter the password: admin@1234 The user's credentials are incorrect. </pre> <hr></=>
5. példa: A felhasználó által megadott felhasználónevet és jelszót ellenőrző program helyes, vagy nem az előre meghatározott felhasználónevet és jelszót használja.
#include #include // use #define macro to define the values for UserName and Password #define UserName 'system' #define Password 'admin@123' int main () { // declare character type array char un[50], pass[50]; // take UserName and Password from user printf ( ' Enter the username: ' ); scanf (' %s', un); printf ( ' Enter the password: ' ); scanf (' %s', pass); // use if statement and Logical AND operator to validate the condition if (strcmp (UserName, un) == 0 && strcmp (Password, pass) == 0) { printf (' The user's credentials are correct. '); } else { printf ( ' The user's credentials are incorrect. '); } return 0; }
Kimenet
Enter the username: system Enter the password: admin@123 The user's credentials are correct. 2nd execution Enter the username: system Enter the password: admin@1234 The user's credentials are incorrect.
=>=>=>