读书人

C++菜鸟的一些有关问题

发布时间: 2012-03-01 10:25:46 作者: rapoo

C++初学者的一些问题
我看了C++ Primer。感觉有些地方不是很懂。
关于两数相加的问题。
书里面是这样写的:
#include <iostream>
int main()
{
std::cout << “Enter two numbers:" << std::endl;
int v1,v2;
std::cin >> v1>>v2;
std::cout << "The sum of " << v1 <<"and"<<v2
<< "is "<< v1+v2 <<std::endl;
return 0;
}
可是我学的是这样的:
#include <iostream>
using namespace std;
void main()
{
int v1,v2,v;
cout<<"Enter two numbers:"<<endl;
cin>>v1>>v2;
v=v1+v2;
cout<<"The sum of the two numbers is "<<v<<endl;
}
我想知道这两者在形式上的区别是由于什么造成的。
还有个东西,希望大家帮我找出错误
#include <iostream>
using namespace std;
int main()
{
int x,y,a,Number[5]={23,56.47.84,48};
for(int i=0;i<=5;i++)
{x=Number[i]/10;
y=Number[i]%10;
cout<<"已知一正整数为二位数,其十位与个位之和为"<<x+y
<<",其十位与个位之积为"<<x*y
<<"则此数为?"/n;
cin>>a;
if(a==Number[i])
cout<<"CONGRATULATIONS!YOU GUESS IT!"<<endl;
else
cout<<"YOU ARE WRONG!"<<endl;
cout<<"TRY AGAIN?PLEASE PRESS 1 TO PLAY AGAIN OR 0 TO QUIT."/n<<endl;
cin>>a;
if(a==1)continue;
else break;
}
return 0;
}
我是仿照这个例子仅仅改了个数的个数
/*猜数游戏:程序运行一次可以猜多次!*/
#include <iostream>
using namespace std;
int main()
{intx, y, a, number[10] = {71,82,35,26,12,46,27,38,48,52};
for(int i=0;i<=10;i++)
{x = number[i] / 10;
y = number[i] % 10;
cout<<"已知一个两位数XY,个位Y和十位X之和为"<<x+y
<<",之积为"<<x*y<<",请问这个两位数是几:\n";
cin>>a;
if(a == number[i])
cout<<"恭喜你答对了,这个数是"<<number[i]<<".\n";
else
cout<<"很抱歉,不对。这个数是"<<number[i]<<".\n";
cout<<"\n输入数字1再来一次!输入数字0退出。"<<endl;
cin>>a;
if(a==1) continue;
else break;
}
return 0;
}
可是,我改了之后的错误很多。而那个例子没什么问题。
那个错误日志也看不大懂
正在编译...
猜数游戏001.cpp
c:\users\lc\documents\visual studio 2008\projects\猜数游戏\猜数游戏001.cpp(5) : warning C4244: “初始化”: 从“double”转换到“int”,可能丢失数据
c:\users\lc\documents\visual studio 2008\projects\猜数游戏\猜数游戏001.cpp(5) : error C2143: 语法错误 : 缺少“}”(在“常量”的前面)
c:\users\lc\documents\visual studio 2008\projects\猜数游戏\猜数游戏001.cpp(5) : error C2143: 语法错误 : 缺少“;”(在“常量”的前面)
c:\users\lc\documents\visual studio 2008\projects\猜数游戏\猜数游戏001.cpp(5) : error C2143: 语法错误 : 缺少“;”(在“}”的前面)
c:\users\lc\documents\visual studio 2008\projects\猜数游戏\猜数游戏001.cpp(6) : error C2059: 语法错误 : “for”
c:\users\lc\documents\visual studio 2008\projects\猜数游戏\猜数游戏001.cpp(6) : error C2143: 语法错误 : 缺少“)”(在“;”的前面)
c:\users\lc\documents\visual studio 2008\projects\猜数游戏\猜数游戏001.cpp(6) : error C2143: 语法错误 : 缺少“;”(在“<=”的前面)
c:\users\lc\documents\visual studio 2008\projects\猜数游戏\猜数游戏001.cpp(6) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
c:\users\lc\documents\visual studio 2008\projects\猜数游戏\猜数游戏001.cpp(6) : error C2143: 语法错误 : 缺少“;”(在“++”的前面)
c:\users\lc\documents\visual studio 2008\projects\猜数游戏\猜数游戏001.cpp(6) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
c:\users\lc\documents\visual studio 2008\projects\猜数游戏\猜数游戏001.cpp(6) : error C2086: “int i”: 重定义
c:\users\lc\documents\visual studio 2008\projects\猜数游戏\猜数游戏001.cpp(6) : 参见“i”的声明
c:\users\lc\documents\visual studio 2008\projects\猜数游戏\猜数游戏001.cpp(6) : error C2059: 语法错误 : “)”
c:\users\lc\documents\visual studio 2008\projects\猜数游戏\猜数游戏001.cpp(7) : error C2143: 语法错误 : 缺少“;”(在“{”的前面)


c:\users\lc\documents\visual studio 2008\projects\猜数游戏\猜数游戏001.cpp(7) : error C2447: “{”: 缺少函数标题(是否是老式的形式表?)
c:\users\lc\documents\visual studio 2008\projects\猜数游戏\猜数游戏001.cpp(22) : error C2059: 语法错误 : “return”
c:\users\lc\documents\visual studio 2008\projects\猜数游戏\猜数游戏001.cpp(23) : error C2059: 语法错误 : “}”
c:\users\lc\documents\visual studio 2008\projects\猜数游戏\猜数游戏001.cpp(23) : error C2143: 语法错误 : 缺少“;”(在“}”的前面)
c:\users\lc\documents\visual studio 2008\projects\猜数游戏\猜数游戏001.cpp(23) : error C2059: 语法错误 : “}”
希望各位帮帮忙看看,指点指点。

[解决办法]
第一个疑问去看namespace的概念;
第二个疑问,请问是上面的程序出错还是下面的程序出错?
我觉得是上面的程序,因为里面有“56.47.84”,这是什么东西?

读书人网 >C++

热点推荐