#include <stdio.h>
#include <string.h>
void menu();
int yf(int,int,int);
int main()
{
    char ch=0;
    int gd=0,sh=0,bj=0,dss=0;
    int zl=0,gdzl=0,shzl=0,bjzl=0,dsszl=0;
    int gdyf=0,shyf=0,bjyf=0,dssyf=0,zyf=0;
    
    do{
    menu();
    printf("请选择城市:");
    while(ch!='1'&&ch!='2'&&ch!='3'&&ch!='4'&&ch!='5')
    { 
       if(ch=='\n')printf("请选择城市:");
        ch=getchar();
    } 
    if (ch=='5')break;
    
    printf("请输入重量:");
    scanf("%d",&zl); 
    
    if(ch=='1'){gdzl=gdzl+zl;gdyf=yf(8,2,gdzl);gd=1;}
    else if(ch=='2'){shzl=shzl+zl;shyf=yf(9,7,shzl);sh=1;}
    else if(ch=='3'){bjzl=bjzl+zl;bjyf=yf(12,10,bjzl);bj=1;}
    else if(ch=='4'){dsszl=dsszl+zl;dssyf=yf(15,13,dsszl);dss=1;}
    
    
    zyf=gdyf+shyf+bjyf+dssyf;
    
    if(gd==1)printf("\n您寄往广东的快递费用为:%d元。",gdyf);
    if(sh==1)printf("\n您寄往上海的快递费用为:%d元。",shyf);
    if(bj==1)printf("\n您寄往北京的快递费用为:%d元。",bjyf);
    if(dss==1)printf("\n您寄往东三省的快递费用为:%d元。",dssyf);
    
    printf("\n\n合计总运费为:%d元。" ,zyf); 
    
    while((ch=getchar())!='\n');
    printf("\n\n还寄么?(N--不寄了,回车--继续寄)");
    ch=getchar();
    if(ch=='n'||ch=='N')break; 
    
    //while((ch=getchar())!='\n');
    
    }while(1);
    
     
    if(gd==1)printf("\n您寄往广东的快递费用为:%d元。",gdyf);
    if(sh==1)printf("\n您寄往上海的快递费用为:%d元。",shyf);
    if(bj==1)printf("\n您寄往北京的快递费用为:%d元。",bjyf);
    if(dss==1)printf("\n您寄往东三省的快递费用为:%d元。",dssyf);
    
    printf("\n\n合计总运费为:%d元。\n\n" ,zyf); 
    printf("\n\n*****感谢使用本系统*****\n\n"); 
    return 0;
}
int yf(int a,int b,int c)
{
    return a+(c-1)*b;
}
void menu()
{
    printf("\n
  ==========京上广快递公司竭诚为您服务==========\n"); 
    for (int i=0;i<50;i++)
    {
        printf("*");
    }
    printf("\n");
    printf("请选择目的地:\n");
    printf("
  城市\t\t费用\n");
    printf("1)广东\t\t首重 8元,续重 2元\n");
    printf("2)上海\t\t首重 9元,续重 7元\n");
    printf("3)北京\t\t首重12元,续重10元\n");
    printf("4)东三省\t首重15元,续重13元\n");
    printf("5)退出\n"); 
    for (int i=0;i<50;i++)
    {
        printf("*");
    }
    printf("\n");
}