问题:在编写长度转换的代码时,自己编写的菜单出现了问题提示
代码:
#include
#include
#include
#include
void LengthMenu() { //排序子菜单
printf("****************************************\n");
printf("*\t\t1.英寸转化\t\t*\n");
printf("*\t\t2.英尺转化 \t\t*\n");
printf("*\t\t3.毫米转化 \t\t*\n");
printf("*\t\t4.厘米转化 \t\t*\n");
printf("*\t\t5.分米转化 \t\t*\n");
printf("*\t\t6.米转化 \t\t*\n");
printf("*****************************************\n");
}
void Lenhgth()
{
double q,n;
char in,ft,mm,cm,dm,m;
char a[6];
int i;
printf("请输入要算的数:\n");
scanf("%lf",&q);
printf("请输入您的选择:\n");
scanf("%d",&i);
switch(i)
{
case 1://in
printf("输入想要转化成的单位:\n");
scanf("%s",&a);
if(strcmp(a,"in")==0) n=q;
else if(strcmp(a,"ft")==0) n=q*12;
else if(strcmp(a,"mm")==0) n=q*0.0394;
else if(strcmp(a,"cm")==0) n=q*0.394;
else if(strcmp(a,"dm")==0) n=q*3.937;
else if(strcmp(a,"m")==0) n=q*39.37;
printf("%lf in=%lf %s",q,n,a);
break;
case 2://ft
printf("输入想要转化成的单位:\n");
scanf("%s",&a);
if(strcmp(a,"in")==0) n=q/12;
else if(strcmp(a,"ft")==0) n=q;
else if(strcmp(a,"mm")==0) n=q*0.00328;
else if(strcmp(a,"cm")==0) n=q*0.0328;
else if(strcmp(a,"dm")==0) n=q*0.328;
else if(strcmp(a,"m")==0) n=q*3.28;
printf("%lf ft=%lf %s",q,n,a);
break;
case 3://mm
printf("输入想要转化成的单位:\n");
scanf("%s",&a);
if(strcmp(a,"in")==0) n=q/0.0394;
else if(strcmp(a,"ft")==0) n=q/0.00328;
else if(strcmp(a,"mm")==0) n=q;
else if(strcmp(a,"cm")==0) n=q*10;
else if(strcmp(a,"dm")==0) n=q*100;
else if(strcmp(a,"m")==0) n=q*1000;
printf("%lf mm=%lf %s",q,n,a);
break;
case 4://cm
printf("输入想要转化成的单位:\n");
scanf("%s",&a);
if(strcmp(a,"in")==0) n=q/0.394;
else if(strcmp(a,"ft")==0) n=q/0.0328;
else if(strcmp(a,"mm")==0) n=q/10;
else if(strcmp(a,"cm")==0) n=q;
else if(strcmp(a,"dm")==0) n=q*10;
else if(strcmp(a,"m")==0) n=q*100;
printf("%lf cm=%lf %s",q,n,a);
break;
case 5://dm
printf("输入想要转化成的单位:\n");
scanf("%s",&a);
if(strcmp(a,"in")==0) n=m/3.937;
else if(strcmp(a,"ft")==0) n=m/0.328;
else if(strcmp(a,"mm")==0) n=m/100;
else if(strcmp(a,"cm")==0) n=m/10;
else if(strcmp(a,"dm")==0) n=m;
else if(strcmp(a,"m")==0) n=m*10;
printf("%lf dm=%lf %s",m,n,a);
break;
case 6://m
printf("输入想要转化成的单位:\n");
scanf("%s",&a);
if(strcmp(a,"in")==0) n=q/39.37;
else if(strcmp(a,"ft")==0) n=q/3.28;
else if(strcmp(a,"mm")==0) n=q/1000;
else if(strcmp(a,"cm")==0) n=q/100;
else if(strcmp(a,"dm")==0) n=q/10;
else if(strcmp(a,"m")==0) n=q;
printf("%lf m=%lf %s",q,n,a);
break;
default:
printf("输入错误请重新输入");
}
}
int main()
{
LengthMenu();
Lenhgth();
return 0;
}
出现问题的界面:
代码里有中文,.c文件要按utf8格式保存