weixin_36361030 2017-03-29 08:42 采纳率: 0%
浏览 1127

VS2010编译出错。。声明了啊,为什么还是出错

#include
#include
#include
using namespace std;
void getRandomNumbers(short,short&,short&);
void displayProblem(char,short&,short&);
short calCorrectAnswer(char,short,short);
void main()
{
short gradeLevel=0;
char operation=' ';
short num1=0,num2=0,correctAnswer=0,userAnswer=0;
cout<<"Enter grade level(1 or 2)";
cin>>gradeLevel;
cout<<"Enter operation(a or s)";
cin>>operation;
operation=toupper(operation);
getRandomNumbers(gradeLevel,num1,num2);
displayProblem(operation,num1,num2);
cin>>userAnswer;
correctAnswer=calCorrectAnswer(operation,num1,num2);
if(userAnswer==correctAnswer)
cout<<"You are right.";
else
cout<<"Sorry,the correct answeris "<<correctAnswer<<endl;
}
void getRandomNumber(short level,short&firstNum,short&secondNum)
{
srand((unsigned int)time(NULL));
if(level==1)
{
firstNum=1+rand()%(10-1+1);
secondNum=1+rand()%(10-1+1);
}
else
{
firstNum=1+rand()%(100-10+1);
secondNum=1+rand()%(100-1+1);
}
}
void diaplayProblem(char operation,short&firstNum,short&secondNum)
{
if(operation=='A')
cout<<firstNum<<"+"<<secondNum<<"=";
else
{
if(firstNum<secondNum)
{
short temp=0;
temp=firstNum;
firstNum=secondNum;
secondNum=temp;
}
}
}
short calCorrectionAnswer(char operation,short firstNum,short secondNum)
{
short answer=0;
if(operation=='A')
answer=firstNum+secondNum;
else
answer=firstNum-secondNum;
return answer;
}

1>------ 已启动生成: 项目: 初, 配置: Debug Win32 ------
1>RandomQ.obj : error LNK2019: 无法解析的外部符号 "short __cdecl calCorrectAnswer(char,short,short)" (?calCorrectAnswer@@YAFDFF@Z),该符号在函数 _main 中被引用
1>RandomQ.obj : error LNK2019: 无法解析的外部符号 "void __cdecl displayProblem(char,short &,short &)" (?displayProblem@@YAXDAAF0@Z),该符号在函数 _main 中被引用
1>RandomQ.obj : error LNK2019: 无法解析的外部符号 "void __cdecl getRandomNumbers(short,short &,short &)" (?getRandomNumbers@@YAXFAAF0@Z),该符号在函数 _main 中被引用
1>D:\VS2010\初\Debug\初.exe : fatal error LNK1120: 3 个无法解析的外部命令
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========

  • 写回答

3条回答

  • congliu0913 2017-03-29 08:51
    关注

    函数名写错了,你声明的分别是:
    void getRandomNumbers(short,short&,short&);
    void displayProblem(char,short&,short&);
    short calCorrectAnswer(char,short,short);
    但是函数名是:
    void getRandomNumber(short level,short&firstNum,short&secondNum)
    void diaplayProblem(char operation,short&firstNum,short&secondNum)
    short calCorrectionAnswer(char operation,short firstNum,short secondNum)
    可以使用notepad++辅助检查。

    评论

报告相同问题?

悬赏问题

  • ¥15 运筹学排序问题中的在线排序
  • ¥15 关于docker部署flink集成hadoop的yarn,请教个问题 flink启动yarn-session.sh连不上hadoop,这个整了好几天一直不行,求帮忙看一下怎么解决
  • ¥30 求一段fortran代码用IVF编译运行的结果
  • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
  • ¥30 python代码,帮调试,帮帮忙吧
  • ¥15 #MATLAB仿真#车辆换道路径规划