c语言程序,请大佬详细一点,最好能有注释orz

求解
2024年11月22日 16:26
有1个网友回答
网友(1):

#include 

int main()
{
int Year, WeightClass;
float Weight, Fee;

//可以进行多组测试,直到输入的Year为负数为止
while (1)
{
printf("Please input the model year registration :\n");
scanf_s("%d", &Year); //输入Year
if (Year < 0)
{
printf("Test End\n");
break;
}

printf("Please input the weight :\n");
scanf_s("%f", &Weight); //输入Weight

if (Year <= 1970) //第一个条件,1970年以前的(包括1970)
{
if (Weight < 2700)      //第二个条件,小于2700磅
{
printf("\nWeight Class |Fee\n");
printf("%-16d|$%-7.2f\n\n", 1, 16.5);
}
else if (Weight >= 2700 && Weight <= 3800)
{
printf("\nWeight Class |Fee\n");
printf("%-16d|$%-7.2f\n\n", 2, 25.5);
}
else
{
printf("\nWeight Class |Fee\n");
printf("%-16d|$%-7.2f\n\n", 3, 46.5);
}
}
else if (Year >= 1971 && Year <= 1979)
{
if (Weight < 2700)
{
printf("\nWeight Class |Fee\n");
printf("%-16d|$%-7.2f\n\n", 4, 27.0);
}
else if (Weight >= 2700 && Weight <= 3800)
{
printf("\nWeight Class |Fee\n");
printf("%-16d|$%-7.2f\n\n", 5, 30.5);
}
else
{
printf("\nWeight Class |Fee\n");
printf("%-16d|$%-7.2f\n\n", 6, 52.5);
}
}
else
{
if (Weight < 3500)
{
printf("\nWeight Class |Fee\n");
printf("%-16d|$%-7.2f\n\n", 7, 35.5);
}
else
{
printf("\nWeight Class |Fee\n");
printf("%-16d|$%-7.2f\n\n", 8, 65.5);
}
}
}

return 0;
}

//测试输出:
//Please input the model year registration :
//1965
//Please input the weight :
//3500
//
//Weight Class | Fee
//2 | $25.50
//
//Please input the model year registration :
//1975
//Please input the weight :
//2500
//
//Weight Class | Fee
//4 | $27.00
//
//Please input the model year registration :
//1981
//Please input the weight :
//3600
//
//Weight Class | Fee
//8 | $65.50
//
//Please input the model year registration :