c程序问题 不知错在哪?
来源:百度知道 编辑:UC知道 时间:2024/05/29 09:15:34
#include <stdio.h>
void main()
{
float marks;
printf("请输入成绩marks:");
scanf("%f",&marks);
if(marks>100||marks<0) {printf("error");scanf("%f",&marks);}
else
switch((int)(marks/10))
{
case 10:
case 9: printf("A");break;
case 8: printf("B");break;
case 7: printf("C");break;
case 6: printf("D");break;
default:printf("E");
}
void main()
{
float marks;
printf("请输入成绩marks:");
scanf("%f",&marks);
if(marks>100||marks<0) {printf("error");scanf("%f",&marks);}
else
switch((int)(marks/10))
{
case 10:
case 9: printf("A");break;
case 8: printf("B");break;
case 7: printf("C");break;
case 6: printf("D");break;
default:printf("E");
}
好像最后少了个}吧
最后少个大括号
程序很多错误,
1、输入错误就不再判断,虽然要求再次输入
if(marks>100||marks<0) {printf("error");scanf("%f",&marks);}
else
switch((int)(marks/10))
{
...
}
2、marks>100.||marks<0.
3、少}
lz不说明遇到的是什么错,只能猜了
#include <stdio.h>
void main()
{
float marks;
printf("请输入成绩marks:");
scanf("%f",&marks);
while(marks>100||marks<0)你那样只会提示一次的用while比较好直到输入对
{
printf("error");
scanf("%f",&marks);
}
switch((int)(marks/10))
{
case 10:
case 9: printf("A");break;
case 8: printf("B");break;
case 7: printf("C");break;
case 6: printf("D");break;
default:printf("E");
}
}