卵巢癌30岁以上妇女每年进行一次妇课件_第1页
卵巢癌30岁以上妇女每年进行一次妇课件_第2页
卵巢癌30岁以上妇女每年进行一次妇课件_第3页
卵巢癌30岁以上妇女每年进行一次妇课件_第4页
卵巢癌30岁以上妇女每年进行一次妇课件_第5页
已阅读5页,还剩98页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第六章 数组 指针与字 符串 C+语言程序设计 1 前一页 休息 本章主要内容 l数组 l指针 l动态存储分配 l指针与数组 l指针与函数 l字符串 2 前一页 休息 数组的概念 数组是具有一定顺序关系的若干相同 类型变量的集合体,组成数组的变量称 为该数组的元素。 数组属于构造类型。 数 组 3 前一页 休息 一维数组的声明与引 用 l一维数组的声明 类型说明符 数组名 常量表达式 ; 例如: int a10; 表示 a 为整型数组,有10个元素:a0.a9 l引用 必须先声明,后使用。 只能逐个引用数组元素,而不能一次 引用整个数组 例如:a0=a5+a7-a2*3 数组名的构成方法与一般变量名相同。 数 组 4 前一页 休息 例6. 1 一维数组的声明 与引用 #include void main( ) i nt A10,B10; i nt i; f or(i=0;i void main(void) char key = a,c,b,a,d; char c; int ques = 0, numques = 5, numcorrect = 0; cout void RowSum(int A 4, int nrow) int sum; for (int i = 0; i #include “Location.h“ Location:Location( ) X=Y=0; cout void main( ) int *i_pointer;/声明int型指针 i_pointer int i;/声明int型数i i_pointer=/取i的地址赋给 i_pointer i=10;/int型数赋初值 coutai; coutai; coutai; cout void main( ) int line1 =1,0,0; /声明 数组,矩阵的第一行 int line2 =0,1,0; /声明 数组,矩阵的第二行 int line3 =0,0,1; /声明 数组,矩阵的第三行 int *p_line3;/声明整型 指针数组 p_line0=line1; /初始化指 针数组元素 p_line1=line2; p_line2=line3; 指 针 46 /输出单位矩阵 cout void main( ) int array223=11,12,13,21,22,23; for(int i=0;i int main( ) int *pt_int; float *pt_float; int pig = 7, dog = 27; float x = 1.2345, y = 32.14; void *general; 指 针 52 pt_int = *pt_int += dog; cout const int N=6; void print(const int *p,int n); void main( ) int arrayN; for(int i=0;iarrayi; print(array,N); 指 针 55 void print(const int *p, int n) cout成员名 指 针 57 前一页 休息 例6-13 对象指针应用 举例 int main( ) Point A(5,10); Point *ptr; ptr= int x; x=ptr-GetX( ); cout struct date int month; int day; int year; ; 动态存储分配 61 int main( ) int index, *point1, *point2; point1 = *point1 = 77; point2 = new int; *point2 = 173; cout month = 10; date_point-day = 18; date_point-year = 1938; cout month day year class Point public: Point( ) X=Y=0; cout class Point /类的声明同例6-16,略 ; int main( ) Point *Ptr=new Point2; /创建对象数组 Ptr0.Move(5,10); /通过指针访问数组元素的成 员 Ptr1.Move(15,20); /通过指针访问数组元素的成 员 cout void main( ) float (*cp)98; int i,j,k; cp = new float898; for (i=0; i 和 动态存储分配 74 前一页 休息 动态内存释放函数 lvoid free( void *memblock ); 参数memblock: 指针,指向需释放的 内存。 返回值:无 头文件: 和 动态存储分配 75 前一页 休息 以指针作为函数参数以指针作为函数参数 l以地址方式传递数据,可以用来返回 函数处理结果。 l实参是数组名时形参可以是指针。 指针与函数 76 前一页 休息 例6-18 指针做函数参数指针做函数参数 举例举例 #include #include“Point.h“ /Point 类声明略 void f(Point *a, int n); int main( ) Point *pa2; /动态生成对象,其地址赋给指针数组元素 pa0=new Point(1,3); pa1=new Point(2,4); f(pa,2); delete pa0; delete pa1; return 0; 指针与函数 77 void f(Point *a, int n) /实参是指针数组,形参应使用二级指针 /也可以写成 void f(Point *a , int n) for(int i=0;iGetX( ) void splitfloat(float x, int *intpart, float *fracpart) /形参intpart、 fracpart是指针 *intpart = int(x); / 取x的整数部分 *fracpart = x - *intpart; /取x的小数部 分 指针与函数 79 void main(void) int i, n; float x, f; cout x; splitfloat(x, /变量地址 做实参 cout #include void Array_Ptr(long *P, int n) int i; cout void print_stuff(float data_to_ignore); void print_message(float list_this_data); void print_float(float data_to_print); void (*function_pointer)(float); int main( ) float pi = 3.14159; float two_pi = 2.0 * pi; 指针与函数 87 print_stuff(pi); function_pointer = print_stuff; function_pointer(pi); function_pointer = print_message; function_pointer(two_pi); function_pointer(13.0); function_pointer = print_float; function_pointer(pi); print_float(pi); return 0; 88 void print_stuff(float data_to_ignore) printf(“This is the print stuff function.n“); void print_message(float list_this_data) printf(“The data to be listed is %fn“, list_this_data); void print_float(float data_to_print) printf(“The data to be printed is %fn“, data_to_print); 89 运行结果: This is the print stuff function. This is the print stuff function. The data to be listed is 6.283180 The data to be listed is 13.000000 The data to be printed is 3.141590 The data to be printed is 3.141590 90 前一页 休息 用字符数组存储和处理 字符串 字符数组的声明和引用 例:static char str8=112,114,111,103,114,97,109,0; static char str8=p,r,o,g,r,a,m,0; static char str8=“program“; static char str =“program“; 字符串 字符串常量,例如:“china“ 没有字符串变量,用字符数组来存放字符 串 字符串以0为结束标志 字符数组的初始化 例例6-196-19例例6-206-20 字符串 91 前一页 休息 输出一个字符串 #include int main( ) static char c10=I, ,a,m, ,a, ,b,o,y; int i; for(i=0;i int main( ) static char diamond 5= , ,*, ,*, ,*, *, , , ,*, ,*, ,*, , ,*; int i,j; for (i=0;ip1; 正确的: p1=“abc“; p2=a; cinp2; 字符串 94 前一页 休息 字符串的输入/输出 l方法 逐个字符输入输出 将整个字符串一次输入或输出 例:char c =“China“; coutstr1str2str3; 运行时输入数据: How are you? 内存中变量状态如下: str1: H o w 0 str2: a r e 0 str3: y o u ? 0 96 若改为: static char str13; cinstr; 运行时输入数据: How are you? 内存中变量 str 内容如下: str: H o w 0 97 前一页 休息 整行输入字符串 lcin.getline(字符数组名St, 字符个数N, 结束符 ); 功能:一次连续读入多个字符(可以包括空格), 直到读满N个,或遇到指定的结束符(缺省为n)。读 入的字符串存放于字符数组St中。读取但不存储结束符 。 lcin.get(字符数组名St, 字符个数N, 结束符); 功能:一次连续读入多个字符(可以包括空格), 直到读满N个,或遇到指定的结束符(缺省为n)。读 入的字符串存放于字符数组St中。 既不读取也不存储结束符。 字符串 98 前一页 休息 例6-22 整行输入字符串 举例 #include void main (void) char city80; char state80; int i; for (i = 0; i 字符串 100 前一页 休息 例6.23 string类应用 举例 #include #include using namespace std ; void trueFalse(int x) cout (x? “True“: “False“) endl; 字符串 101 void main( ) string S1=“DEF“, S2=“123“; char CP1 =“ABC“; char CP2 =“DEF“; cout “S1 is “ S1 endl; cout “S2 is “ S2 endl; cout“length of S2:“S2.len

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论