Computer >> Máy Tính >  >> Lập trình >> lập trình C

Các khái niệm ra quyết định trong ngôn ngữ C sử dụng lưu đồ và chương trình

Sau đây là các tuyên bố đưa ra quyết định -

  • đơn giản - câu lệnh if
  • câu lệnh if - else
  • lồng nhau - câu lệnh if else
  • else - if bậc thang
  • câu lệnh switch

Đơn giản - câu lệnh if

Từ khóa ‘if’ được sử dụng để thực thi một tập hợp các câu lệnh khi điều kiện logic là đúng.

Cú pháp

if (condition){
   Statement (s)
}

Các khái niệm ra quyết định trong ngôn ngữ C sử dụng lưu đồ và chương trình

Ví dụ

Ví dụ sau kiểm tra xem một số có lớn hơn 50 hay không.

#include<stdio.h>
main (){
   int a;
   printf (“enter any number:\n”);
   scanf (“%d”, &a);
   if (a>50)
      printf (“%d is greater than 50”, a);
}

Đầu ra

1) enter any number: 60
60 is greater than 50 .
2) enter any number 20
no output

Câu lệnh if else

Câu lệnh if –else có điều kiện Đúng hoặc Sai.

Cú pháp

if (condition){
   True block statement(s)
}
else{
   False block statement(s)
}

Lưu đồ

Các khái niệm ra quyết định trong ngôn ngữ C sử dụng lưu đồ và chương trình

Ví dụ

Sau đây là chương trình để kiểm tra số chẵn hay lẻ -

#include<stdio.h>
main (){
   int n;
   printf (“enter any number:\n”);
   scanf (“%d”, &n);
   if (n%2 ==0)
      printf (“%d is even number”, n);
   else
      printf( “%d is odd number”, n);
}

Đầu ra

1) enter any number: 10
10 is even number

Câu lệnh if - else lồng nhau

Ở đây "if" được đặt bên trong if (hoặc) else -

Cú pháp

if (condition1){
   if (condition2)
      stmt1;
   else
      stmt2;
   }
   else{
      if (condition3)
         stmt3;
      else
         stmt4;
   }

Lưu đồ

Các khái niệm ra quyết định trong ngôn ngữ C sử dụng lưu đồ và chương trình

Ví dụ

Ví dụ sau là in ra số lớn nhất trong 3 số từ các số đã cho -

#include<stdio.h>
main (){
   int a,b,c;
   printf (“enter 3 numbers”);
   scanf (“%d%d%d”, &a, &b, &c);
   if (a>b){
      if (a>c)
         printf (“%d is largest”, a);
      else
         printf (“%d is largest”, c);
   } else {
      if (b>c)
         printf (“%d is largest”, b);
      else
         printf (“%d is largest”, c);
   }
}

Đầu ra

enter 3 numbers = 10 20 30
30 is largest

Khác - nếu bậc thang

Đây là một điều kiện quyết định nhiều chiều.

Cú pháp

if (condition1)
   stmt1;
else if (condition2)
   stmt2;
   - - - - -
   - - - - -
else if (condition n)
   stmt n;
else
   stmt x;

Lưu đồ

Các khái niệm ra quyết định trong ngôn ngữ C sử dụng lưu đồ và chương trình

Ví dụ

Ví dụ sau tìm nghiệm của phương trình bậc hai -

#include <math.h>
main (){
   int a,b,c,d;
   float r1, r2
   printf ("enter the values a b c");
   scanf (“%d%d%d”, &a, &b, &c);
   d= b*b – 4*a*c ;
   if (d>0){
      r1 = (-b+sqrt(d)) / (2*a);
      r2 = (-b-sqrt(d)) / (2*a);
      printf (“root1 ,root2 =%f%f”, r1, r2);
   }
   else if (d== 0){
      r1 = -b / (2*a);
      r2 = -b/ (2*a);
   printf (“root1, root2 = %f%f”, r1, r2);
   }
   else
      printf ("roots are imaginary”);
}

Đầu ra

1) enter the values of a b c : 1 4 3
Root 1 = -1
Root 2 = -3

Câu lệnh chuyển đổi

Sẽ rất hữu ích khi chọn một trong số nhiều quyết định.

Cú pháp

switch (expression){
   case value1 : stmt1;
      break;
   case value2 : stmt2;
      break;
   - - - - - -
   default : stmt – x;
}

Cú pháp

Các khái niệm ra quyết định trong ngôn ngữ C sử dụng lưu đồ và chương trình

Ví dụ

#include<stdio.h>
main (){
   int n;
   printf (“enter a number”);
   scanf (“%d”, &n);
   switch (n){
      case 0 : printf (“zero”)
         break;
      case 1 : printf (‘one”);
         break;
      default : printf (‘wrong choice”);
   }
}

Đầu ra

enter a number
1
One