北大C++课后习题
作为大一新生魔法师 看完北大C++ mooc后 对于每一道课后习题的总结 记录 希望能对大家有所帮助
Love 6
腾讯WXG在职后台小鹅
展开
-
北大C++ POJ课后习题博客记录全解(C++)
文章目录前引博客全解链接后引前引作为一名大一 学C++的初学者对于C++的基础全仅限于来自于北大Mooc特写此篇来记录每一道题的解答对于个别题 没有思路或者是实在想不出来了的 都是借鉴了他人的优秀代码在学习C++的路上与大家共勉博客全解链接001: 简单的swap最近的提交002: 难一点的swap003:好怪异的返回值004: 神秘的数组初始化最近的提交005:编程填空:学生信息处理程序006:奇怪的类复制007:返回什么才好呢008:超简单的复数类009:哪来的输出原创 2021-03-22 00:12:22 · 3642 阅读 · 2 评论 -
C++面向对象程序设计 045:魔兽世界三(开战) ---- (北大Mooc)
文章目录转载优秀博客解答转载优秀博客解答【open judge】【程设】魔兽世界三开战! Dreaming_shao转载 2021-03-21 23:46:01 · 983 阅读 · 0 评论 -
C++面向对象程序设计 044:编程填空:数据库内的学生信息 ---- (北大Mooc)
文章目录前引原题题目代码实现前引初学C++ 对于这道题来说确实我对继承和 一些细节的地方把控不是很好这个解答是借鉴的 德林恩宝的代码对于这个北大Mooc所有的原题题目#include <iostream>#include <string>#include <map>#include <iterator>#include <algorithm>using namespace std;// 在此处补充你的代码struc原创 2021-03-21 23:43:05 · 714 阅读 · 0 评论 -
C++面向对象程序设计 043:冷血格斗场 ---- (北大Mooc)
文章目录原题题目代码实现(超时1000ms)提交结果代码实现(954ms 3简洁代码)提交结果原题题目代码实现(超时1000ms)#include <iostream>#include <string>#include <map>#include <cmath>#include <limits.h>using namespace std;typedef multimap<int,int> mmii;int原创 2021-03-21 20:13:24 · 971 阅读 · 0 评论 -
C++面向对象程序设计 042:热血格斗场 ---- (北大Mooc)
文章目录原题题目代码实现(900ms)提交结果原题题目代码实现(900ms)#include <iostream>#include <string>#include <map>#include <cmath>using namespace std;typedef map<int,int> mmii;int main(){ int members,id,attack; cin>>members原创 2021-03-21 16:05:06 · 621 阅读 · 1 评论 -
C++面向对象程序设计 041:Set ---- (北大Mooc)
文章目录原题题目代码实现原题题目代码实现#include <iostream>#include <string>#include <set>using namespace std;int main(){ int opernumbers,number; string func; cin>>opernumbers; multiset<int> mset; multiset<int&原创 2021-03-21 13:59:16 · 416 阅读 · 0 评论 -
C++面向对象程序设计 040:List ---- (北大Mooc)
文章目录原题题目代码实现原题题目代码实现#include <iostream>#include <list>#include <algorithm>using namespace std;typedef list<int> L;void printlist(const list<int>::iterator stri,const list<int>::iterator endi){ list<i原创 2021-03-20 21:01:23 · 593 阅读 · 1 评论 -
C++面向对象程序设计 039:我自己的 ostream_iterator ---- (北大Mooc)
文章目录原题题目代码实现原题题目代码实现private: string str; ostream& os;public: myostream_iteraotr(ostream & tmp,string tmp1):os(tmp),str(tmp1){} ostream& operator = (const T& a) { os<<a<<str; return os;原创 2021-03-20 19:18:33 · 507 阅读 · 0 评论 -
C++面向对象程序设计 038:白给的list排序 ---- (北大Mooc)
文章目录原题题目代码实现原题题目#include <cstdio>#include <iostream>#include <algorithm>#include <list>using namespace std;int main(){ double a[] = {1.2,3.4,9.8,7.3,2.6}; list<double> lst(a,a+5); lst.sort(// 在此处补充你的代码); for原创 2021-03-20 17:53:14 · 540 阅读 · 0 评论 -
C++面向对象程序设计 037:函数对象的过滤器 ---- (北大Mooc)
文章目录原题题目代码实现原题题目#include <iostream>#include <vector>using namespace std;struct A { int v; A() { } A(int n):v(n) { }; bool operator<(const A & a) const { return v < a.v; }};// 在此处补充你的代码template <class T>void P原创 2021-03-20 17:37:51 · 401 阅读 · 0 评论 -
C++面向对象程序设计 036:很难蒙混过关的CArray3d三维数组模板类 ---- (北大Mooc)
文章目录原题题目代码实现(确实很有难度 彻底理解起来要花很多时间)优秀博客借鉴原题题目#include <iostream>#include <iomanip> #include <cstring>using namespace std;template <class T>class CArray3D{// 在此处补充你的代码};CArray3D<int> a(3,4,5);CArray3D<double>原创 2021-03-20 16:57:25 · 703 阅读 · 0 评论 -
C++面向对象程序设计 035:按距离排序 ---- (北大Mooc)
文章目录原题题目代码实现原题题目#include <iostream>#include <cmath>#include <algorithm>#include <string>using namespace std;template <class T1,class T2>struct Closer {// 在此处补充你的代码};int Distance1(int n1,int n2) { return abs(n1-n原创 2021-03-20 13:12:59 · 669 阅读 · 0 评论 -
C++面向对象程序设计 034:goodcopy ---- (北大Mooc)
文章目录原题题目代码实现原题题目#include <iostream>using namespace std;template <class T>struct GoodCopy {// 在此处补充你的代码};int a[200];int b[200];string c[200];string d[200];template <class T>void Print(T s,T e) { for(; s != e; ++s) cou原创 2021-03-19 21:06:40 · 690 阅读 · 0 评论 -
C++面向对象程序设计 033:排序,又见排序! ---- (北大Mooc)
文章目录原题题目代码实现原题题目#include <iostream>using namespace std;bool Greater2(int n1,int n2) { return n1 > n2;}bool Greater1(int n1,int n2) { return n1 < n2;}bool Greater3(double d1,double d2){ return d1 < d2;}template <class T原创 2021-03-19 16:02:30 · 343 阅读 · 0 评论 -
C++面向对象程序设计 032:这个模板并不难 ---- (北大Mooc)
文章目录原题题目代码实现原题题目#include <iostream>#include <string>#include <cstring>using namespace std;template <class T> class myclass {// 在此处补充你的代码~myclass( ) { delete [] p; } void Show() { for( int i = 0;i < size;i ++ )原创 2021-03-19 15:48:09 · 535 阅读 · 4 评论 -
C++面向对象程序设计 031:山寨版istream_iterator ---- (北大Mooc)
文章目录原题题目代码实现原题题目#include <iostream>#include <string>using namespace std;template <class T>class CMyistream_iterator{// 在此处补充你的代码};int main() { int t; cin >> t; while( t -- ) { CMyistream_iterator<int>原创 2021-03-19 15:25:03 · 368 阅读 · 0 评论 -
C++面向对象程序设计 030:你真的搞清楚为啥 while(cin >> n) 能成立了吗? ---- (北大Mooc)
文章目录原题题目代码实现原题题目#include <iostream>using namespace std;class MyCin{// 在此处补充你的代码};int main(){ MyCin m; int n1,n2; while( m >> n1 >> n2) cout << n1 << " " << n2 << endl; return 0;原创 2021-03-19 09:24:49 · 577 阅读 · 0 评论 -
C++面向对象程序设计 029:简单的Filter ---- (北大Mooc)
文章目录原题题目代码实现原题题目#include <iostream>#include <string>using namespace std;// 在此处补充你的代码bool LargerThan2(int n){ return n > 2;}bool LongerThan3(string s) { return s.length() > 3;}string as1[5] = {"Tom","Mike","Jack","Ted","Lu原创 2021-03-18 21:46:58 · 477 阅读 · 0 评论 -
C++面向对象程序设计 028:简单的foreach ---- (北大Mooc)
文章目录原题题目代码实现原题题目#include <iostream>#include <string>using namespace std;// 在此处补充你的代码void Print(string s){ cout << s;}void Inc(int & n){ ++ n;}string array[100];int a[100];int main() { int m,n; while(cin >> m原创 2021-03-18 21:24:21 · 441 阅读 · 0 评论 -
C++面向对象程序设计 027:简单的SumArray ---- (北大Mooc) (麻了 今天一天嗯是上课没跑成)
文章目录原题题目代码实现原题题目#include <iostream>#include <string>using namespace std;template <class T>T SumArray(// 在此处补充你的代码}int main() { string array[4] = { "Tom","Jack","Mary","John"}; cout << SumArray(array,array+4) << en原创 2021-03-18 20:56:25 · 465 阅读 · 0 评论 -
C++面向对象程序设计 026:编程填空:统计动物数量 ---- (北大Mooc)
文章目录原题题目代码实现原题题目#include <iostream>using namespace std;// 在此处补充你的代码void print() { cout << Animal::number << " animals in the zoo, " << Dog::number << " of them are dogs, " << Cat::number << " of them are ca原创 2021-03-17 23:57:47 · 488 阅读 · 0 评论 -
C++面向对象程序设计 025:怎么又是Fun和Do ---- (北大Mooc)
原题题目#include <iostream>using namespace std;class A { private: int nVal; public: void Fun() { cout << "A::Fun" << endl; }; virtual void Do() { cout << "A::Do" << endl; }};class B:public A { public: virtual void D原创 2021-03-17 21:28:13 · 549 阅读 · 0 评论 -
C++面向对象程序设计 024:这是什么鬼delete ---- (北大Mooc)
原题题目#include <iostream> using namespace std;class A { public: A() { }// 在此处补充你的代码}; class B:public A { public: ~B() { cout << "destructor B" << endl; } }; int main() { A * pa; pa = new B; delete pa; return 0;}原创 2021-03-17 21:21:18 · 518 阅读 · 0 评论 -
C++面向对象程序设计 023:Fun和Do ---- (北大Mooc)
原题题目#include <iostream> using namespace std;class A { private: int nVal; public: void Fun() { cout << "A::Fun" << endl; }; void Do() { cout << "A::Do" << endl; } }; class B:public A { public: virtual vo原创 2021-03-17 21:15:19 · 709 阅读 · 1 评论 -
C++面向对象程序设计 022:看上去像多态 ---- (北大Mooc)
文章目录原题题目代码实现原题题目#include <iostream>using namespace std;class B { private: int nBVal; public: void Print() { cout << "nBVal="<< nBVal << endl; } void Fun() {cout << "B::Fun" << endl; } B ( int原创 2021-03-17 20:35:50 · 1071 阅读 · 0 评论 -
C++面向对象程序设计 021:魔兽世界之二:装备 ---- (北大Mooc)
文章目录前引他人博客优秀代码我的代码(提交过不了 但是数据本地测试正常 一行一行的进行了对比 都不知道为什么AC不了)闲聊前引我现在心里面非常非常难受 :(因为我本地IDE 测试了无数遍 并且我得到的结果与 系统给出来的结果一行一行 一个字一个字的去做了对比我就是不知道我哪里出错了测试了一个小时了而且我的这个版本 明显是不能用在 大作业的 开战的我这个摆烂写法 都过不了 真的怒了 之后发现大家大部分都是这样 摆烂写法 但是我的真的AC不了 哎 真的生气他人博客优秀代码德林恩宝的 魔原创 2021-03-17 12:59:30 · 860 阅读 · 2 评论 -
C++面向对象程序设计 020:继承自string的MyString ---- (北大Mooc)(含注释)
文章目录原题题目提示代码实现原题题目#include <cstdlib>#include <iostream>#include <string>#include <algorithm>using namespace std;class MyString:public string{// 在此处补充你的代码};int main(){ MyString s1("abcd-"),s2,s3("efgh-"),s4(s1); MyS原创 2021-03-17 10:39:15 · 620 阅读 · 1 评论 -
C++面向对象程序设计 019:全面的MyString ---- (北大Mooc)
文章目录原题题目代码实现原题题目#include <cstdlib>#include <iostream>using namespace std;int strlen(const char * s) { int i = 0; for(; s[i]; ++i); return i;}void strcpy(char * d,const char * s){ int i = 0; for( i = 0; s[i]; ++i) d[i] = s[i];原创 2021-03-17 09:12:10 · 859 阅读 · 0 评论 -
C++面向对象程序设计 018:别叫,这个大整数已经很简化了! ----(北大Mooc)
文章目录原题题目代码实现原题题目代码实现char bignumber[210]; public: void myreverse(char* str) //起到字符串颠倒作用 { int strl = strlen(str),i,j; char temp; for(i=0,j=strl-1;i<=j;i++,j--) { temp = str[i]; st原创 2021-03-16 10:03:25 · 597 阅读 · 0 评论 -
C++面向对象程序设计 017:第四周程序填空题3 ---- (北大Mooc)
文章目录原题题目代码实现原题题目代码实现 int **a,x,y;public: Array2(){} Array2(int x1,int y1) { x = x1,y = y1; a = new int*[x]; for(int i=0;i<x;i++) a[i] = new int[y]; } int* operator[](int i) {原创 2021-03-15 18:06:36 · 386 阅读 · 0 评论 -
C++面向对象程序设计 016:惊呆!Point竟然能这样输入输出 ---- (北大Mooc)
文章目录原题题目代码实现原题题目代码实现friend istream & operator>>(istream & is,Point & a) { is>>a.x>>a.y; return is; } friend ostream & operator <<(ostream & os,const Point &a) {原创 2021-03-15 17:32:08 · 317 阅读 · 0 评论 -
C++面向对象程序设计 015:看上去好坑的运算符重载 ---- (北大Mooc)
文章目录原题题目代码实现原题题目代码实现MyInt( int n) { nVal = n ;} operator int(){return nVal;} MyInt & operator-(int n) { nVal-=n; return *this; } friend ostream & operator <<(ostream & os,const MyInt & a) {原创 2021-03-15 16:11:30 · 353 阅读 · 0 评论 -
C++ 面向对象程序设计 014:MyString ---- (北大Mooc)
文章目录原题题目代码实现原题题目代码实现MyString(const MyString & a) { if(a.p == NULL) p = NULL; else { p = new char[strlen(a.p) +1]; strcpy(p,a.p); } } void Copy(const MyString & w1)原创 2021-03-15 15:51:07 · 813 阅读 · 0 评论 -
C++面向对象程序设计 013:魔兽世界之一:备战 ---- (北大Mooc)
#include <iostream>#include <string>#include <string.h>#include <iomanip>using namespace std;class RedTeam{private: int producelife,dragonlife,ninjalife,icemanlife,lionlife,wolflife; int numbers[5],producechoose;原创 2021-03-15 13:38:58 · 886 阅读 · 0 评论 -
C++面向对象程序设计 012:这个指针哪来的 ---- (北大Mooc)
文章目录原题题目代码实现原题题目#include <iostream>using namespace std;struct A{ int v; A(int vv):v(vv) { }// 在此处补充你的代码};int main(){ const A a(10); const A * p = a.getPointer(); cout << p->v << endl; return 0;}代码实现const A* get原创 2021-03-15 13:38:43 · 427 阅读 · 0 评论 -
C++面向对象程序设计 011:Big & Base 封闭类问题 ---- (北大Mooc)
原题题目#include <iostream>#include <string>using namespace std;class Base {public: int k; Base(int n):k(n) { }};class Big{public: int v; Base b;// 在此处补充你的代码};int main(){ int n; while(cin >>n) { Big a1(n); Big a2 = a1;原创 2021-03-14 14:04:44 · 572 阅读 · 0 评论 -
C++面向对象程序设计 010:返回什么才好呢 ---- (北大Mooc)
原题题目描述程序填空,使其按要求输出输入多组数据,每组一行,是整数 m 和 n输出先输出一行:123然后,对每组数据,输出两行,第一行是m,第二行是n样例输入2 34 5样例输出1232345#include <iostream>using namespace std;class A {public: int val; A(int// 在此处补充你的代码};int main(){ int m,n; A a; cout <<原创 2021-03-14 14:04:52 · 596 阅读 · 0 评论 -
C++面向对象程序设计 009:哪来的输出 ---- (北大Mooc)
原题题目输入无输出21#include <iostream>using namespace std;class A { public: int i; A(int x) { i = x; }// 在此处补充你的代码};int main(){ A a(1); A * pa = new A(2); delete pa; return 0;}代码实现cout<<i<<endl;...原创 2021-03-14 14:04:37 · 301 阅读 · 1 评论 -
C++面向对象程序设计 008:超简单的复数类 ---- (北大Mooc)
原题题目描述下面程序的输出是:3+4i5+6i请补足Complex类的成员函数。不能加成员变量。#include <iostream>#include <cstring>#include <cstdlib>using namespace std;class Complex {private: double r,i;public: void Print() { cout << r << "+"原创 2021-03-14 14:04:29 · 357 阅读 · 0 评论 -
C++面向对象程序设计 007:返回什么才好呢 ---- (北大Mooc)
原题题目描述程序填空,使其按要求输出输入多组数据,每组一行,是整数 m 和 n输出先输出一行:123然后,对每组数据,输出两行,第一行是m,第二行是n样例输入2 34 5样例输出1232345#include <iostream>using namespace std;class A {public: int val; A(int// 在此处补充你的代码};int main(){ int m,n; A a; cout <<原创 2021-03-14 14:04:22 · 558 阅读 · 0 评论