第2章 C++程序设计基础—2.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第2章C程序设计基础—2

* 例:string name[5]; //定义一个字符串数组,它包含5个字符串元素。 string name[5] ={”China”,”France”,”Austria”,”Australia”,”Japan”}; 4)string数组 name[0] china name[1] France name[2] Austria Name[3] Australia name[4] Japan * 说明: (1) 一个字符串数组包含若干个字符串变量。 (2) 每个字符串元素的长度是可以变化的,同一个元素重新赋值,其长度也可发生变化。 (3) 字符串数组与字符数组不同。 (4) 每一个字符串元素中只包含字符串本身的字符而不包括′\0′。 编译系统为每一个字符串变量分配4个字节,用于存放字符串的地址,而不是直接存放字符串本身。 * 分析程序的实现: 输入 处理 输出 输入N个字符串赋给name[0]…name[N-1] for j=1 to N-1 for i=0 to N-j-1 name[i]name[i+1] 真 假 name[i]与 name[i+1]交换 输出排序后的字符串name[0]…name[N-1] 例2-15: 国家名字排序问题 #include iostream using namespace std; #include string const int N=10; int main() { string name[N]; int i,j; //任意输入10个国家名字 for(i=0;iN;i++) cinname[i]; //冒泡排序 for(j=1;j=N-1;j++) for(i=0;i=N-j-1;i++) if(name[i]name[i+1]) {string str; str=name[i]; name[i]=name[i+1]; name[i+1]=str; } //输出排序后的名字顺序 for(i=0;iN;i++) coutname[i]; return 0; } * 2.8 指针与引用 2.8.1 指针 C/C++中的指针本质上就是一个存放变量地址的变量。与一般变量不同,指针实现了按地址访问内存数据的方法,具体应用于数组、函数参数和动态内存的管理中。 指针定义的一般形式: 类型名 *指针变量名; //*代表指针类型 例:int *p; 指针变量在使用前需要赋值: p = a; //a为整型变量, 运算符取a的地址 通过p间接访问a中数据: *p=10; 等价于 a=10; //运算符*实现了间接访问 2.8.2 引用 1.引用的基本概念 引用就是为一个已定义的变量或对象另起一个名字,引用作为一个变量的别名,定义形式如下: 数据类型 引用名=已定义的变量名; 例如: int a=5; int k=a; //k是a的引用 注意: 1)此时是一种引用类型标识符,int 是int变量的引用。 2)引用必须在定义时初始化。 5 k a 【例2-16】 引用和变量的关系。 //li2_16.cpp #include iostream #include iomanip using namespace std; int main( ) { int a=10; int b=a; //声明b是a的引用 a=a*a; //a的值变化了,b的值也应一起变化 coutasetw(6)bendl; b=b/5; //b的值变化了,a的值也应一起变化 coutbsetw(6)aendl; return 0; } 结果为: 100 100 20

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档