输入姓名后和成绩后,姓名和成绩乱码,怎么回事?怎么改一下?
#include <stdio.h>
int main()
{
int x;
char y;
printf("请输入学生姓名:\n");
scanf("%s",&y);
printf("请输入学生成绩:\n");
scanf("%d",&x);
if(x>=0 && x<60) printf("%c的成绩为:%d分 评价:不及格\n",y,x);
else if(x>=60 && x<80) printf("%c的成绩为:%d分 评价:及格\n",y,x);
else if(x>=80 && x<90) printf("%c的成绩为:%d分 评价:良好\n",y,x);
else if(x>=90 && x<=100) printf("%c的成绩为:%d分 评价:优秀\n",y,x);
else printf("您的输入分数的是%d,请重新输入\n",x);
return 0;
}
[解决办法]
能把你输入的数据发一下吗?你的姓名只能输入一个字符,你是输入了字符串了吧
[解决办法]
#include <stdio.h>int main(){ int x; char y[50]; printf("请输入学生姓名:\n"); scanf("%s",&y); printf("请输入学生成绩:\n"); scanf("%d",&x); if(x>=0 && x<60) printf("%s的成绩为:%d分 评价:不及格\n",y,x); else if(x>=60 && x<80) printf("%s的成绩为:%d分 评价:及格\n",y,x); else if(x>=80 && x<90) printf("%s的成绩为:%d分 评价:良好\n",y,x); else if(x>=90 && x<=100) printf("%s的成绩为:%d分 评价:优秀\n",y,x); else printf("您的输入分数的是%d,请重新输入\n",x); return 0;}
[解决办法]
#include <stdio.h>int main(){ int x; char y[100]; printf("请输入学生姓名:\n"); scanf("%s",y); printf("请输入学生成绩:\n"); scanf("%d",&x); if(x>=0 && x<60) printf("%s的成绩为:%d分 评价:不及格\n",y,x); else if(x>=60 && x<80) printf("%s的成绩为:%d分 评价:及格\n",y,x); else if(x>=80 && x<90) printf("%s的成绩为:%d分 评价:良好\n",y,x); else if(x>=90 && x<=100) printf("%s的成绩为:%d分 评价:优秀\n",y,x); else printf("您的输入分数的是%d,请重新输入\n",x); return 0; }