问题 问答题

使用VC++6.0打开考生文件夹下的源程序文件1.cpp,该程序运行时有错误,请改正程序中的错误,本题的功能是从键盘中输入字符串str,然后输出字符串str中的字符个数。
注意:错误的语句在/********error********/的下面,修改该语句即可。其他的语句不能修改。
试题程序:
#include<iostream>
int main()

/********error********/
cout<<"please input a string:"<<end1;
/********error********/
namespace std;
char str[256];
cin.getline(str,256);
cout<<strlen(str)<<end1;
return 0;

答案

参考答案:本题考查了考生对名字空间的了解情况。
(1)“cout<<"please input a string:"<<end1;”应改为“std::cout<<"please input a string:"<<std::end1;”。
(2)“namespace std;”应改为“using namespace std;”。

解析: 本题中程序使用的头文件是<iostream>,没有.h后缀,该头文件中定义的所有标识符都位于C++标准库名字空间“std”内。所以语句“cout<<"please input a string:"<<end1;”中的cout和end1都要加上std::前缀才能使用。如果要使后面所有语句都能用到std名字空间中和内容,省略加std::前缀的麻烦,可以使用语句“using namespace std;”。

单项选择题
单项选择题