c++实践实验报告.docx
c++实践实验报告
C++实践实验报告
实验目的
掌握C++基础语法:通过实践加深对C++语言的基本数据类型、控制结构、函数、数组、指针等概念的理解。
熟悉面向对象编程:通过实现简单的类与对象,理解封装、继承、多态等面向对象编程的基本概念。
提高编程实践能力:通过编写具体程序,解决实际问题,提升编程技巧和解决问题的能力。
实验环境
操作系统:Windows10
开发工具:VisualStudio2019
编程语言:C++
实验内容
1.基础语法实践
任务:编写一个简单的C++程序,输出“Hello,World!”以及当前日期和时间。
实现:
cpp代码
#includeiostream
#includectime
intmain(){
std::coutHello,World!std::endl;
//获取当前时间
std::time_tt=std::time(0);//获取当前时间(从1970年1月1日00:00:00到当前时间的秒数)
std::tm*now=std::localtime(t);
std::coutCurrentdateandtime:;
std::cout(now-tm_year+1900)-
(now-tm_mon+1)-
now-tm_mday
now-tm_hour:
now-tm_min:
now-tm_secstd::endl;
return0;
}
2.面向对象编程实践
任务:设计一个简单的学生信息管理系统,包括学生的姓名、学号、成绩,并能输出所有学生的信息。
实现:
cpp代码
#includeiostream
#includevector
#includestring
classStudent{
public:
std::stringname;
intid;
floatgrade;
Student(std::stringn,inti,floatg):name(n),id(i),grade(g){}
voiddisplay()const{
std::coutName:name,ID:id,Grade:gradestd::endl;
}
};
intmain(){
std::vectorStudentstudents;
//添加学生信息
students.push_back(Student(Alice,1001,90.5));
students.push_back(Student(Bob,1002,85.0));
students.push_back(Student(Charlie,1003,92.0));
//输出所有学生信息
std::coutStudentInformation:std::endl;
for(constautostudent:students){
student.display();
}
return0;
}
3.文件操作实践
任务:编写一个程序,从文件中读取一组整数,计算并输出这些整数的平均值。
实现:
cpp代码
#includeiostream
#includefstream
#includevector
intmain(){
std::ifstreaminputFile(numbers.txt);
if(!inputFile){
std::cerrUnabletoopenfilestd::endl;
return1;
}
std::vectorintnumbers;
intnumber;
while(inputFilenumber){
numbers.push_back(number);
}
inputFile.close();
if(numbers.empty()){
std::coutNonumbersreadfromfile.std::endl;
return0;
}
doublesum=0;
for(constauton:numbers){
sum+=n;
}
doubleaverage=sum/numbers.size();
std::coutAverage:averagestd::endl;
return0;
}
(假设存在一个名为numbers.txt的文件,其中包含一组整数,每行一个。)
实验结果与分析
基础语法实践:程序成功输出“Hello,World!”以及当前日期和时间,验证了C++基础语法的正