一:
#include <iostream>
#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
// 为vector<string>数组对象likes添加元素值 ( favorite book, music, film, paintings,anime,sport,sportsman,etc)
// 补足代码
// 。。。
likes.push_back("book");
likes.push_back("music");
likes.push_back("anime");
cout << "-----I like these-----" << endl;
// 调用子函数输出vector<string>数组对象likes的元素值
// 补足代码
// 。。。
output1(likes);
// 为vector<string>数组对象dislikes添加元素值
// 补足代码
// 。。。
dislikes.push_back("film");
dislikes.push_back("sportsman");
dislikes.push_back("paintings");
cout << "-----I dislike these-----" << endl;
// 调用子函数输出vector<string>数组对象dislikes的元素值
// 补足代码
// 。。。
output2(dislikes);
// 交换vector<string>对象likes和dislikes的元素值
// 补足代码
// 。。。
likes.swap(dislikes);
cout << "-----I likes these-----" << endl;
// 调用子函数输出vector<string>数组对象likes的元素值
// 补足代码
// 。。。
output1(likes);
cout << "-----I dislikes these-----" << endl;
// 调用子函数输出vector<string>数组对象dislikes的元素值
// 补足代码
// 。。。
output2(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) {
vector<string>::iterator it;
for(it=v.begin() ;it!=v.end() ;it++)
cout<<*it<<" ";
cout<<endl;
// 补足程序
// 。。。
}
二:
#include "stdafx.h"
#include<iostream>
using namespace std;
int main()
{
int *p;
*p = 9;//这里不能直接给地址赋值,可以改为:int i=9; p=&i;
cout << "The value at p:" << *p;
return 0;
}
#include "stdafx.h"
#include<iostream>
using namespace std;
int fn1()
{
int *p = new int(5);//改为int *p; p=new int (5);
return *p;//这里没有delete
}
int main()
{
int a = fn1();
cout << "the value of a is:" << a;
return 0;
}
三:
matrix.h:
#ifndef MATRIX_H
#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); //返回矩阵第i行第j列元素的引用
inline float element(int i, int j) const;// 返回矩阵第i行第j列元素的值
void setElement(int i, int j, int value); //设置矩阵第i行第j列元素值为value
inline int getLines() const; //返回矩阵行数
inline int getCols() const; //返回矩阵列数
private:
int lines; // 矩阵行数
int cols; // 矩阵列数
float *p; // 指向存放矩阵数据的内存块的首地址
};
#endif
matrix.cpp:
#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(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];
}
Matrix::~Matrix(){
delete[] p;
}
void Matrix::setMatrix(const float *pvalue){
for(i=0;i<lines*cols;i++)
p[i]=pvalue[i];
}
void Matrix::printMatrix() const{
for(i=0;i<lines;i++){
for(j=0;j<cols;j++)
cout<<p[i*lines+j]<<" ";
cout<<endl;
}
}
inline float Matrix::element(int i,int j) const{
cout<<p[(i-1)*lines+j-1]<<endl;
}
void Matrix::setElement(int i,int j,int value){
p[(i-1)*lines+j-1]=value;
}
inline int Matrix::getLines() const{
cout<<lines<<endl;
}
inline int Matrix::getCols() const{
cout<<cols<<endl;
}
main.cpp:
#include<iostream>
#include"matrix.h"
using namespace std;
int main()
{
int l,c,i,j,n;
cout<<"输入行数和列数"<<endl;
cin>>l>>c;
float a[l*c];
cout<<"初始化矩阵"<<endl;
for(i=0;i<l*c;i++)
cin>>a[i];
Matrix A(l,c);
A.setMatrix(a);
cout<<"输出矩阵"<<endl;
A.printMatrix();
cout<<"输入行数和列数输出该数"<<endl;
cin>>i>>j;
A.element(i,j);
cout<<"改变第几行第几列的数"<<endl;
cin>>n;
A.setElement (i,j,n);
cout<<"输出这个数"<<endl;
A.element(i,j);
cout<<"返回矩阵行数与列数"<<endl;
A.getLines() ;
A.getCols() ;
return 0;
}
运行结果显示是这个,我也不知道该怎么办
四:期中考试
二:
user.h
#pragma once
#ifndef USER_H
#define USER_H
#include<string>
using namespace std;
class user {
private:
int id;
string name;
string password;
static int CurrentID;
static int count;
public:
user(string n,string p="111111");
void print();
void print2();
void change();
void getCurrentID();
};
#endif
user.cpp
#include"user.h"
#include<iostream>
#include<string>
using namespace std;
int user::CurrentID=999;
int user::count=0;
user::user(string m1,string m2)
{
id=CurrentID++;
name=m1;
password=m2;
}
void user::print(){
cout<<id<<" "<<name<<" "<<password<<endl;
}
void user::change(){
cout<<"请输入原密码"<<endl;
string mm2,mm3;
cin>>mm2;
if(mm2==password){
cout<<"请输入修改的密码"<<endl;
cin>>mm3;
password=mm3;
--CurrentID;
}
else{
cout<<"密码错误,请从新输入"<<endl;
++count;
if(count==3){
count=0;
cout<<"请稍后再试"<<endl;
exit(0);
}
change();
}
}
void user::print2(){
cout<<CurrentID<<endl;
cout<<id<<" "<<name<<" "<<password<<endl;
}
main3.cpp
#include <iostream>
#include"user.h"
#include <string>
using namespace std;
int main() {
string n,p;
cout<<"请输入用户名和密码"<<endl;
cin>>n>>p;
user user(n,p);
user.print();
user.change();
cout<<"当前ID:";
user.print2();
return 0;
}
第三题在我的随笔里,麻烦找一下