Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Lập Trình C

Chương trình C tính diện tích hình học dùng switch case


Vấn đề

Tính diện tích tam giác, vuông, tròn, chữ nhật, hình bình hành bằng switch case.

Giải pháp

Theo số case, tính diện tích:

  • Tam giác: Nhập a,b,c. s=(a+b+c)/2; area=sqrt(s(s-a)(s-b)(s-c))
  • Vuông: Nhập cạnh. area=cạnh*cạnh
  • Tròn: Nhập bán kính. area=3.14159*r*r
  • Chữ nhật: Nhập dài,rộng. area=dài*rộng
  • Bình hành: Nhập đáy,cao. area=đáy*cao

Ví dụ

Chương trình C tính diện tích switch case:

#include <stdio.h> 
#include <math.h> 
main(){ 
    int choice; 
    printf("Chon:\n1 Tam giac\n2 Vuong\n3 Tron\n4 Chu nhat\n5 Binh hanh\n"); 
    scanf("%d", &choice); 
    switch(choice){ 
        case 1: { 
            int a,b,c; float s,area; 
            printf("Nhap 3 canh:\n"); scanf("%d%d%d",&a,&b,&c); 
            s=(float)(a+b+c)/2; 
            area=(float)sqrt(s*(s-a)*(s-b)*(s-c)); 
            printf("Dien tich tam giac %f\n",area); break; 
        } 
        case 2: { 
            float side,area; 
            printf("Nhap canh:\n"); scanf("%f",&side); 
            area=side*side; 
            printf("Dien tich vuong %f\n",area); break; 
        } 
        case 3: { 
            float r,area; 
            printf("Nhap ban kinh:\n"); scanf("%f",&r); 
            area=3.14159*r*r; 
            printf("Dien tich tron %f\n",area); break; 
        } 
        case 4: { 
            float l,b,area; 
            printf("Nhap dai rong:\n"); scanf("%f%f",&l,&b); 
            area=l*b; 
            printf("Dien tich chu nhat %f\n",area); break; 
        } 
        case 5: { 
            float base,h,area; 
            printf("Nhap day cao:\n"); scanf("%f%f",&base,&h); 
            area=base*h; 
            printf("Dien tich binh hanh %f\n",area); break; 
        } 
        default: printf("Lua chon khong hop le\n"); break; 
    } 
}

Đầu ra

Kết quả chạy chương trình:

Chon: 1 Tam giac ... 5 Binh hanh 
5 
Nhap day cao: 2 4 
Dien tich binh hanh 8.000000 
--- 
Chon 3 
Nhap ban kinh: 4.5 
Dien tich tron 63.617199