我所找到的C++相关课程列表:
(2016/1/27)(部分)
- **1. 慕课网 http://www.imooc.com/learn/342 **
《c++远征之起航篇》 授课人:james_yuan.
内容:
**<1>C++简介 **
**<2>C++新的数据类型bool型 **
**<3>C++初始化 **
**<4>C++随用随定义 **
**<5>C++之I/O方式 **
**<6>C++之namespace **
代码练习1:
题目:
1.输入一个整数,将该整数以8进制,10进制,16进制输出。
2.输入一个布尔值(0或1),以布尔方式输出。
#include<stdlib.h>
#include<iostream>
using namespace std;
int main()
{
int x;
cin>>x;
cout<<oct<<x<<endl;
cout<<dec<<x<<endl;
cout<<hex<<x<<endl;/*oct:8进制,dec:10进制,hex:16进制*/
bool y;
cin>>y;
cout<<boolalpha<<y<<endl;/*以bool形式输出*/
return 0;
}
代码练习2:
题目:
使用一个函数,找出一个整形数组中的最大值或最小值
#include<stdlib.h>
#include<iostream>
using namespace std;
int getMax(int *arr,int length,bool isMax)
{
int i,j,k=arr[0];
for(i=1;i<=length;i++)
{
if(isMax)
{
if(arr[i]>k)k=arr[i];
}
else
{
if(arr[i]<k)k=arr[i];
}
}
return k;
}
/*使用一个函数找出数列的最大值或最小值,知识点:bool,
namespace,输入输出。*/
int main()
{
int arr[4]={3,5,7,2};
int t;
bool isMax;
cin>>isMax;
t=getMax(arr,3,isMax);
cout<<t<<endl;
return 0;
}
- **2. 慕课网 http://www.imooc.com/learn/381 **
《C++远征之离港篇》 授课人:james_yuan.
内容:
**<1>C++之引用 **
**<2>C++之const关键字 **
**<3>C++之函数新特性 **
**<4>C++之内存管理 **
代码练习部分举例(引用):
题目:
探究引用
#include<stdlib.h>
#include<iostream>
using namespace std;
int main()
{
int a=10;
int &b=a;/*b是a的引用*/
b=20;/*对b进行操作*/
cout<<a<<endl;
a=30;/*对a进行操作*/
cout<<b<<endl;
return 0;
}
/*结论:改变引用的值相当于改变原变量的值,改变原变量的值相当于改变引用的值*/
#include<stdlib.h>
#include<iostream>
using namespace std;
typedef struct
{
int x;
int y;
}Coord;
int main()
{
Coord c;
Coord &c1=c;
c1.x=10;
c1.y=20;
cout<<c.x<<","<<c.y<<endl;/*有关结构体变量的引用*/
return 0;
}
#include<stdlib.h>
#include<iostream>
using namespace std;
int main()
{
int a=10;
int *p=&a;/*指针p指向a*/
int *&q=p;/*q是指针p的引用(q还是指针)*/
*q=5;/*对指针q所指向的对象进行赋值操作*/
cout<<a<<endl;/*输出a的值*/
return 0;
}
#include<stdlib.h>
#include<iostream>
using namespace std;
void fun(int &a,int &b)/*这里我曾忘记加上int类型*/
{
int c;
c=a;
a=b;
b=c;/*交换两个变量的值*/
}
int main()
{
int x=10,y=20;
cout<<x<<","<<y<<endl;/*输出未变化的x,y的值*/
fun(x,y);
cout<<x<<","<<y<<endl;/*输出变化后的x,y的值*/
return 0;
}
上述编程中遇到的一些问题:
- typedef与define:
http://zhidao.baidu.com/link?url=dKUdHGa1a7rQRAOHo25AFTlLGaE5F0T7dE5eSuGLo5eO4zrQzi67aIcTFFCOoxV-XqnXCOAonStrTDHLo-_TOa- void fun(int x,int y)忘记添加类型。
- q是指针p的引用(q还是指针)。
选择慕课的理由:
在学习C语言的时候,也是因为同学和学长的推荐吧,就经常来慕课网学习相关的知识,在学习过程中,我感觉到慕课网是一个非常不错的IT学习网站,里面基于不同水平的人设置了不同的课程。从我自身的角度来说,我认为慕课网的入门课程适合我们初学者学习,拿此次的C++学习来说,其开设的课程分成起航,离港,继承,多态,模板,封装篇。用不同的篇章,循序渐进的顺序来介绍C++的内容,使我感觉容易上手。
并且慕课的讲师均有一定的授课水平和能力。C、C++语言是需要长期的实际操作来上手和掌握的,慕课网设计的课程中包括实际操作和视频讲解,很好的把实际操作和理论结合在授课内容里面,这也是我选择自学慕课相关课程的原因。
在每一节实际操作课的下面都有如下的几个选项:
在遇到困难抑或是想要对自己的代码进行相关的改良和优化时,参考慕课其他同学的解题思路和代码能开拓你解决这道题目的视野,有利于你发现问题和解决问题。
综上所述,我来到慕课是因为同学的推荐,但是我选择慕课,是因为其实际操作和理论知识相结合的授课方式使我受益匪浅。
寒假自学计划:
在之前一次偶然的机会,有幸阅读到了CSDN博主xu佳佳博客中的一篇文章:
《对高效管理时间的个人观点分享》
链接:http://blog.csdn.net/double2hao/article/details/46984207
给当时因时间分配不理想而苦恼的我指了一条明路。如同其文章一楼的评论:
"我也一直在寻找如何有效管理时间,提高效率。包括,查阅和学习别人的经验和方法、使用工具和时间管理软件。对于你的方法,很认同,非常好。没有介绍多少花哨的方法,但是很务实,提到了主要的关键点。"
我在上个学期的后半阶段尝试了这种方法,发现它很适合现阶段的自己,于是我基于此观点设计了我自己的自学计划。
寒假计划
- 自学完《算法竞赛入门经典》的C语言部分。我要求自己能够从阅读中收获一些使自己受益的东西,并且和自己的实际操作结合起来。边敲边学习。
- 在年前自学完慕课的C++远征系列前两章。关于选择慕课的理由在上文已经略有阐述,慕课的授课方式和我想自学C++语言的方法相契合。
- 预习《大学英语四》,并且为下半年的四级考试做准备。
- 高等数学预习下一章,关于《张宇高等数学十八讲》不强求自己做多少,但是有做要求自己能够有所总结有所收获。
- 别忘了对自己的学习进行总结。
- 重温C语言中的指针内容以及查缺补漏。
- 注: 以上的寒假计划是弹性的计划,我没有给自己固定具体的时间,比如今天上午10:00-11:00预习高数这样子的规划,而是这些计划贯穿于我整个寒假生活,不要求自己要以多快的速度完成,但是不马虎,要以认真的态度完成这些自我目标。不同的一天我有不同的计划和生活,希望自己在这个寒假有所收获,有所长进。
2016/1/28