#include<stdio.h>
#define S1 0.15
#define S2 0.28
int main()
{
    char a;
    int k;
    double sr,sj;
    while(1)
    {
        printf("请输入选项数:\n");
        printf("1)单身       \t前$17 850按15%%,超出部分按%%28\n");
        printf("2)户主       \t前$23 900按15%%,超出部分按%%28\n");
        printf("3)已婚,共有 \t前$29 750按15%%,超出部分按%%28\n");
        printf("4)已婚,离异 \t前$14 875按15%%,超出部分按%%28\n");
        printf("5)退出\n");
        while((a=getchar())=='\n')continue;
        switch(a)
        {
        case '1':k=17850; break;
        case '2':k=23900; break;
        case '3':k=29750; break; 
        case '4':k=14875; break;
        case '5':printf("退出\n");return 0;
        default :printf("请输入有效的选项!!\n");continue;
        }
        
        printf("请输入应征税收入:\n");
        scanf("%lf",&sr);
        if(sr>k)
            sj=k*S1+((sr-k)*S2);
        else
            sj=sr*S1;
        printf("应征税收入$%.2lf,则税金为$%.2lf.\n\n\n",sr,sj);
    }
    printf("程序结束!\n");
    return 0;
}
若没有第一continue;整个程序数据就出错。。