- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
程序设计II复习总结
程序设计II学习内容复习总结
part1、结构体与递归程序设计方法
1、结构体类型----用户(就是我们)可以根据问题需要自己构造的一种具有反映事物内部关联属性的构造性数据类型。
比如,时间
struct Time
{
int hour;
int min;
int sec;
};
Time t1,t2;
Time *tp;
t1.hour=8;
t1.min=8;
t1.sec=8;
t2=t1;//2个结果体变量可以直接整体赋值。和同一个类的2个对象可以直接赋值一样。(考虑如果成员里面有数组呢?)
tp=t2;
tp-hour++;//实际上是让t2的时间属性中的小时到9点。
// to test struct 2 objects assign value globally
#include stdio.h
#define N 10
struct mystruct
{
int no;
int id[N];
};
void main()
{
struct mystruct t1={1,{1,2,3,4,5,6}},t2;
struct mystruct* tp1,*tp2;
int i;
printf(now output t1 :\n);
for(i=0;iN;i++)
printf(%d ,t1.id[i]);
t2=t1;
printf(\n now output t2 :\n);
for(i=0;iN;i++)
printf(%d ,t2.id[i]);
tp1=t1;
tp2=t2;
for(i=0;iN;i++)
tp1-id[i]++;
printf(\n now output t1 :\n);
for(i=0;iN;i++)
printf(%d ,t1.id[i]);
printf(\n now output t2 :\n);
for(i=0;iN;i++)
printf(%d ,t2.id[i]);
for(i=0;iN;i++)
tp2-id[i]+=2;
printf(\n now output t1 :\n);
for(i=0;iN;i++)
printf(%d ,t1.id[i]);
printf(\n now output t2 :\n);
for(i=0;iN;i++)
printf(%d ,t2.id[i]);
}
2、关于递归:靠悟性。但也有一般的方法,就是找到规模为N的问题和规模为N+1 或N-1之间的递推关系式。
实例回顾:hanoi塔问题:
把A塔上(源头from))Hanoi(int n,char from,char using,char to);
在main函数里调用hanoi(6,‘A’,’B’,’C’)hanoi(n-1,from,to,using);
(2)“%c ( %c”,from,to);
(3)、最后把N-1个盘从B借助A移到C上。大功告成!
Hanoi(n-1,using,from,to);
实训:0-1背包问题:N个物品放入一个背包,背包的最大负载M,每个物品的重量为weight[k],价值为value[k];问怎样装载可以使装入背包的物品的总价值最大?
定义函数:int knapsack(int n,int m)(n个物品,背包负载为m时候所装入物品的最大价值)
考虑它与n-1种物品的关系:
knapsack(n,m)=max{knapsack(n-1,m),//不装入第n中物品
knapsack(n-1,m-weight[n])class Person
{ char Name[20];
char Sex;
int Age;
public:
void Register(char *name, int age, char sex)
{ strcpy(Name, name);
Age = age;
Sex = (sex == m?m:f);
}
void ShowMe() {cout Name \t Age \t Sex endl;}
};
实例化一个类:
Person p1, p2;两个对象之间可以互相整体赋值!
关于构造函数及重载。
class Date
{ int day,month,year;
public:
Date(); //构造函数
Date(int,int,int); //构造函数
void init(int,int,int);
void print_ymd();
void print_mdy();
};
Date::Date()
{
year = 1900;
month = 1;
day = 1;
}
Dat
您可能关注的文档
最近下载
- 2025至2030年中国机器人关节模组行业市场竞争态势及前景战略研判报告.docx
- 员工冲突管理培训.pptx VIP
- 新课标人教版 宾语从句 复习课件.ppt VIP
- 厂务系统介绍.ppt VIP
- 2024年10月广东省高等教育自学考试00020高等数学(一)试卷及答案.pdf
- 英语人教版八年级下册unit5 setionB 课件.ppt VIP
- 人教版新目标八年级上册英语导学案(全册).pdf VIP
- 人教版九年级英语Unit 2 reading-The Spirit of Christmas.pptx VIP
- 丹毒中医护理方案ppt课件.pptx VIP
- 人教版九年级英语unit8全单元课件.ppt VIP
文档评论(0)