在vc++6.0中输入这段代码,为什么输入中文姓名后(比如张三,81,输出的成了H,81了)?)
#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;
}
[解决办法]
你输入张三 按回车 再输入81 再回车
[解决办法]
#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; }