1. 程式人生 > >C語言經典例題(四)

C語言經典例題(四)

問題如下:手搓一個簡易計算器
分析問題:首先看一下這個題,經過讀題我們得知要計算一個簡易的計算器,那麼就需要用函式,程式碼如下:

#include <stdio.h>
void xing(int shu);
void biaoti(int kong,char * title);
void zhuyemian(char *title);
void sizeyunsuan();
void guocheng(char w);
void xing(int shu)
{
    int i;
    for(i=0;i<=shu;i++)
        printf("* ");
    printf("\n");
}
void biaoti(int kong,char * title)
{
    int j;
    for(j=0;j<=kong;j++)
    printf(" ");
    printf("%s\n",title);
    printf("\n");

}
void zhuyemian(char *title)
{
    xing(59);
    biaoti(50,title);
    xing(59);
}
void sizeyunsuan()
{
    int d;
    char w;
    system("cls");
    zhuyemian("四則運算");
    printf("請選擇您要進行運算的型別(選擇1234輸入,按回車),並進行計算\n\n");
        printf("1.加法運算\n\n");
        printf("2.減法運算\n\n");
        printf("3.乘法運算\n\n");
        printf("4.除法運算\n\n");
    scanf("%d",&d);
    if(d==1)
    {
        system("cls");
        zhuyemian("加法運算");
        w='+';
    }
    if(d==2)
    {
        system("cls");
        zhuyemian("減法運算");
        w='-';
    }
    if(d==3)
    {
        system("cls");
        zhuyemian("乘法運算");
        w='*';
    }
    if(d==4)
    {
        system("cls");
        zhuyemian("除法運算");
        w='/';
    }
    guocheng(w);
}
void guocheng(char w)
{
    double A,B,C;
    char r='y';
    printf("請輸入兩個數,中間用逗號隔開\n");
		while(r=='y'||r=='Y')
			{

                scanf("%lf,%lf",&A,&B);
                if(w=='+')
                    C=A+B;
                else if(w=='-')
                    C=A-B;
                else if(w=='*')
                    C=A*B;
                else if(w=='/')
                {
                    if(B==0)
                    C==0;
                    C=A/B;
                }
                printf("%lf%c%lf=%lf",A,w,B,C);
                printf("是否繼續Y\n");
                r=getchar();
                r=getchar();
    }
            sizeyunsuan();

}
int main()
{
    sizeyunsuan();
}


程式碼解析:我們看一下這部分程式碼,可以看出首先通過函式寫出了加減乘除,然後套用,即可得出。