标签:ons tor lease getline style 构造 程序 const get
#include <iostream> #include<iterator> #include <vector> #include <string> using namespace std; // 函数声明 void output1(vector<string> &); void output2(vector<string> &); int main() { vector<string>likes, dislikes; // 创建vector<string>对象likes和dislikes likes.push_back("《水浒传》"); likes.push_back("《烟花易冷》"); likes.push_back("《复仇者联盟》"); likes.push_back("《星空》"); likes.push_back("none"); likes.push_back("pingpong"); likes.push_back("kobe bryant");// 为vector<string>数组对象likes添加元素值 ( favorite book, music, film, paintings,anime,sport,sportsman,etc) // 补足代码 // 。。。 cout << "-----I like these-----" << endl; output1(likes);// 调用子函数输出vector<string>数组对象likes的元素值 // 补足代码 // 。。。 dislikes.push_back("红楼梦"); dislikes.push_back("none"); dislikes.push_back("港囧"); dislikes.push_back("none"); dislikes.push_back("running"); dislikes.push_back("none");// 为vector<string>数组对象dislikes添加元素值 // 补足代码 // 。。。 cout << "-----I dislike these-----" << endl; output2(dislikes);// 调用子函数输出vector<string>数组对象dislikes的元素值 // 补足代码 // 。。。 string Mid[6]; for(int i=0;i<6;i++) { Mid[i]=likes[i]; } for(int i=0;i<6;i++) { likes[i]=dislikes[i]; } for(int i=0;i<6;i++) { dislikes[i]=Mid[i]; }// 交换vector<string>对象likes和dislikes的元素值 // 补足代码 // 。。。 cout << "-----I likes these-----" << endl; output1(likes);// 调用子函数输出vector<string>数组对象likes的元素值 // 补足代码 // 。。。 cout << "-----I dislikes these-----" << endl; output2(dislikes);// 调用子函数输出vector<string>数组对象dislikes的元素值 // 补足代码 // 。。。 return 0; } // 函数实现 // 以下标方式输出vector<string>数组对象v的元素值 void output1(vector<string> &v) { for(int i=0;i<v.size();i++) { cout<<v[i]; cout<<endl; } // 补足程序 // 。。。 } // 函数实现 // 以迭代器方式输出vector<string>数组对象v的元素值 void output2(vector<string> &v) { ostream_iterator<string>out_iter(cout,"\n"); for(vector<string>::iterator i=v.begin();i!=v.end();++i) { *out_iter++ = *i; } // 补足程序 // 。。。 }
书6-17、6-18
#include<iostream> using namespace std; int main() { int *p;//再定义一个整型变量a; *p=9;//将*p=9,改成p=&a,并且给a赋值9; cout<<"The value at p:"<<*p; return 0; }
#include<iostream> using namespace std; int fn1() { int *p=new int (5); return *p;//没有用delete; } int main() { int a=fn1(); cout<<"the value of a is:"<<a; return 0; }
Matrix
#include"matrix.h" #include<iostream> using namespace std; int main() { int n,m,k; cout<<"输入一个矩阵的行数和列数:"<<endl; cin>>n,m; float a[m*n]; cout<<"输入各行各列的数:"<<endl; for(int i=0;i<m*n;i++) cin>>a[i]; Matrix A(n,m); A.setMatrix(a); cout<<"显示矩阵"<<endl; A.printMatrix(); cout<<"输入所需显示数的下标:"<<endl; cin>>n>>m; cout<<"目标结果为:"<<endl<<A.element(n,m)<<endl; cout<<"输入你想重新设置数的下标:"<<endl; cin>>n>>m; cout<<"输入新的数值:"<<endl; cin>>k; A.setElement(n,m,k); cout<<"新的矩阵为:"<<endl; A.printMatrix(); cout<<"矩阵的行数是:"<<endl<<A.getLines()<<endl; cout<<"矩阵的列数是:"<<endl<<A.getCols()<<endl; return 0; }
#define MATRIX_H class Matrix { public: Matrix(int n); // 构造函数,构造一个n*n的矩阵 Matrix(int n, int m); // 构造函数,构造一个n*m的矩阵 Matrix(const Matrix &X); // 复制构造函数,使用已有的矩阵X构造 ~Matrix(); //析构函数 void setMatrix(const float *pvalue); // 矩阵赋初值,用pvalue指向的内存块数据为矩阵赋值 void printMatrix() const; // 显示矩阵 inline float &element(int i, int j) { int a=(i-1)*lines+(j-1); float &t= p[a]; return t; } //返回矩阵第i行第j列元素的引用 inline float element(int i, int j) const { int a=(i-1)*lines+(j-1); float t=p[a]; return t; }// 返回矩阵第i行第j列元素的值 void setElement(int i, int j, int value); //设置矩阵第i行第j列元素值为value inline int getLines() const { return lines; } //返回矩阵行数 inline int getCols() const { return cols; } //返回矩阵列数 private: int lines; // 矩阵行数 int cols; // 矩阵列数 float *p; // 指向存放矩阵数据的内存块的首地址 }; #endif
#include<iostream> #include"matrix.h" using namespace std; int i,j; Matrix::Matrix(int n):lines(n),cols(n) {p=new float[lines*cols];} Matrix::Matrix(int n,int m):lines(n),cols(m) {p=new float[lines*cols];} Matrix::~Matrix() { delete[] p; } void Matrix::setMatrix(const float *pvalues) { for(i=0;i<lines*cols;i++) p[i]=pvalues[i]; } void Matrix::printMatrix()const { for(i=0;i<lines;i++) { for(j=0;j<cols;j++) cout<<p[i*lines+j]<<" "; cout<<endl; } } Matrix::Matrix(const Matrix &x):lines(x.lines),cols(x.cols) { p=new float[lines*cols]; for(i=0;i<lines*cols;i++) p[i]=x.p[i]; } void Matrix::setElement(int i, int j, int value) { element(i,j)=value;//p[(i-1)*lines+j-1]=value; }
期中考试
#include <iostream> #include"user.h" #include <string> using namespace std; int main() { int m,n,k; string name,password; cout<<"请输入用户名:"<<endl; cin>>name; cout<<"请输入密码:"<<endl; cin>>password; User a(name,password); a.Print(); char key; cout<<"按c可以修改密码:"<<endl; cin>>key; if(key==‘c‘) a.Change(); cout<<"当前用户ID为:"; a.getCurrentID(); a.Print(); return 0; }
#ifndef USER_H #define USER_H #include<iostream> #include<string> using namespace std; class User { public: User(string a,string b); void Print(); void Change(); void getCurrentID(); int currentID(); private: string name; int id; int CurrentID; string password; }; #endif
#include<iostream> #include"user.h" #include<string> using namespace std; User::User(string a,string b):name(a),password(b) { int static CurrentID=999; id=++CurrentID; } void User::Print() { cout<<"id:"<<id<<endl; cout<<"用户名:"<<name<<endl; cout<<"密码:"<<password<<endl; } void User::Change() { string p; cout<<"请输入旧密码:"<<endl; cin>>p; while(p!=password) { cout<<"please try agian!"<<endl; cin>>p; } cout<<"请输入新密码:"<<endl; cin>>p; password=p; cout << "修改成功,当前密码为:" << p << endl; } void User::getCurrentID() { cout<<id<<endl; }
标签:ons tor lease getline style 构造 程序 const get
原文地址:https://www.cnblogs.com/shenleideblog/p/9077897.html