C++中有句cin语句没有执行时怎么回事?之前执行了输入字符型,但输入整型就不执行了,编译没有错误。
#include<iostream.h>main(){charstudent_name;intstudent_grade;cout<<"studentname:";cin...
#include<iostream.h>
main()
{
char student_name;
int student_grade;
cout<<"student name: ";
cin>>student_name;
cout<<"student_grade";
cin>>student_grade;
} 展开
main()
{
char student_name;
int student_grade;
cout<<"student name: ";
cin>>student_name;
cout<<"student_grade";
cin>>student_grade;
} 展开
4个回答
展开全部
你好:
1、 程序中student_name应该要存储字符串,而您将student_name定义为char 型,只能存放单个字符;如果在输入student_name时,输入超过1个字符,则程序将第一个字符赋值于student_name, 而将剩下字符截取int数据类型容量存储进student_grade。
修改可如下:
// char student_name[20];
2、 编译时可能出现程序末没有return 的警告;可在程序末加语句:return;
1、 程序中student_name应该要存储字符串,而您将student_name定义为char 型,只能存放单个字符;如果在输入student_name时,输入超过1个字符,则程序将第一个字符赋值于student_name, 而将剩下字符截取int数据类型容量存储进student_grade。
修改可如下:
// char student_name[20];
2、 编译时可能出现程序末没有return 的警告;可在程序末加语句:return;
展开全部
那是因为你的名字使用字符型数组来装,而不是字符串,你的写法名字就只能读入一个字符,其余的全部读到grade里面了,所以会产生这样的结果
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
改成char student_name[20];
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
都有执行,可能你看错了,你在cout语句后加上个换行,就很清楚的看出来了。此外我要说明两个问题,一方面,你的程序有很不好的地方,就是不标准,主函数前面没有类型。另一方面我感觉很奇怪,你使用cin和cout语句没在前面加上命名空间竟然不会出错。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询