《计算机程序设计基础》课程PPT教学课件(C语言)第6章 指针进阶与内存空间管理 6.2 指针数组

武汉理工大学计算机学院信也技术员000000000000009000000计算机程序设计基础C语言900主讲教师:吕曦武汉理工大学Wuhan Universityof Technology
主讲教师:吕 曦

计算机程序设计基础语言指针数组电电电香武汉理工大学Wuhan Universityof Technology
计算机程序设计基础C语言 ⚫ 指针数组

指针数组元素均为指针类型数据的数组称为指针数组,即数组中的每一个元素都是指针变量。指针数组的定义形式为:类型标识符变量名[常量表达式]例如:char*pChar[5];注意区分:int*p5l和int(*p)「5l指针数组常用于处理字符串。可对长度不等的字符串排序。nameFrance-England+China?+America
元素均为指针类型数据的数组称为指针数组,即数组中的每 一个元素都是指针变量。 指针数组的定义形式为: 类型标识符 变量名[常量表达式] 例如:char *pChar[5]; 注意区分:int *p[5]; 和 int (*p)[5]; 指针数组常用于处理字符串。可对长度不等的字符串排序。 ● ● ● ● America China England name France

例:将指针数组中的国名按字典顺序排序(1#include#include 10#defineMAx LEN//字符串最大长度#defineN 150//字符串个数int main)(int i,j,n;charname[N][MAXLEN];//定义二维宇符数组char *pstr[N];//定义字符指针数组char *temp = NULL;/因交换的是字符串的地址值所以temp定义为指针变量printf("How many countries?");scanf("%d",&n);getchar();//读走输入缓冲区中的回车符printf("Input their names:\n");for(i=o;i<n;i++)(gets(name[il);//输入n个字符串pstr[i]=name[i]//指针数组元素初始化为二维字符数组的行地址1
#include #include #define MAX_LEN 10 //字符串最大长度 #define N 150 //字符串个数 int main(){ int i,j,n; char name[N][MAX_LEN]; //定义二维字符数组 char *pStr[N]; //定义字符指针数组 char *temp = NULL; //因交换的是字符串的地址值, 所以temp定义为指针变量 printf("How many countries?"); scanf("%d",&n); getchar(); //读走输入缓冲区中的回车符 printf("Input their names:\n"); for (i=0;i<n;i++){ gets(name[i]); //输入n个字符串 pStr[i]=name[i] //指针数组元素初始化为 二维字符数组的行地址 } 例:将指针数组中的国名按字典顺序排序(1)

(2)例:将指针数组中的国名按字典顺序排序/★采用交换法实现字符串按字典顺序排序*/for(i=o:i<n-lii++)for(j=i+lij<n;j++)(if(strcmp(pstr[j],pstr[il)<o)(//交换指向字符串的指针temp=pstr[i];pstr[i]=pstr[j];pstr[j]=temp;Lprintf("Sorted results:\n");for(i=oii<nii++)//输出排序后的n个字符串puts(pstr[ij);getch() ;指针数组*s的每个元素都是一个(字串)基地址
/* 采用交换法实现字符串按字典顺序排序 */ for(i=0;i<n-1;i++){ for(j=i+1;j<n;j++){ if(strcmp(pStr[j],pStr[i])<0){ //交换指向字符串的指针 temp=pStr[i]; pStr[i]=pStr[j]; pStr[j]=temp; } } } printf("Sorted results:\n"); for(i=0;i<n;i++) //输出排序后的n个字符串 puts(pStr[i]); getch(); } 指针数组*s的每个元素都是一个(字串)基地址。 例:将指针数组中的国名按字典顺序排序(2)
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《计算机程序设计基础》课程PPT教学课件(C语言)第6章 指针进阶与内存空间管理 6.5 main()函数的命令行参数.pptx
- 《计算机程序设计基础》课程PPT教学课件(C语言)第6章 指针进阶与内存空间管理 6.4 动态内存分配.pptx
- 《计算机程序设计基础》课程PPT教学课件(C语言)第6章 指针进阶与内存空间管理 6.3 函数指针.pptx
- 《计算机程序设计基础》课程PPT教学课件(C语言)第4章 数组和指针 4-7 字符数组的输入与输出格式符%c %s.pptx
- 《计算机程序设计基础》课程PPT教学课件(C语言)第4章 数组和指针 4-8 字符数组的输入与输出函数gets与puts.pptx
- 《计算机程序设计基础》课程PPT教学课件(C语言)第4章 数组和指针 4-6 字符数组的定义与初始化.pptx
- 《计算机程序设计基础》课程PPT教学课件(C语言)第4章 数组和指针 4-10 字符串函数——strcat.pptx
- 《计算机程序设计基础》课程PPT教学课件(C语言)第4章 数组和指针 4-11 字符串函数——strcpy.pptx
- 《计算机程序设计基础》课程PPT教学课件(C语言)第4章 数组和指针 4-12 字符串函数——strcmp.pptx
- 《计算机程序设计基础》课程PPT教学课件(C语言)第4章 数组和指针 4-9 字符串函数——strlen.pptx
- 《计算机程序设计基础》课程PPT教学课件(C语言)第4章 数组和指针 4-14 指向数组的指针定义与初始化.ppt
- 《计算机程序设计基础》课程PPT教学课件(C语言)第4章 数组和指针 4-15 指针变量的运算——赋值运算.pptx
- 《计算机程序设计基础》课程PPT教学课件(C语言)第4章 数组和指针 4-16 指针变量的运算——算术运算.pptx
- 《计算机程序设计基础》课程PPT教学课件(C语言)第4章 数组和指针 4-13 字符串函数——大小写转换函数.pptx
- 《计算机程序设计基础》课程PPT教学课件(C语言)第3章 控制结构 3-1 基本控制结构.pptx
- 《计算机程序设计基础》课程PPT教学课件(C语言)第3章 控制结构 3-5 程序中的选择结构-switch语句.pptx
- 《计算机程序设计基础》课程PPT教学课件(C语言)第3章 控制结构 3-2 程序中的控制运算符.pptx
- 《计算机程序设计基础》课程PPT教学课件(C语言)第3章 控制结构 3-3 程序中的选择结构-if语句的简单形式.pptx
- 《计算机程序设计基础》课程PPT教学课件(C语言)第3章 控制结构 3-4 程序中的选择结构-if语句的嵌套形式.pptx
- 《计算机程序设计基础》课程PPT教学课件(C语言)第2章 基本数据类型和运算符 2-5 算术运算符和算术表达式.pptx
- 《计算机程序设计基础》课程PPT教学课件(C语言)第6章 指针进阶与内存空间管理 6.1 指针再认识.pptx
- 《数据结构》课程授课教案(讲义,共十章).pdf
- 《数据结构》课程实验指导书.pdf
- 《数据结构》课程教学资源(试卷习题)多套练习题及参考答案.pdf
- 《数据结构》课程教学资源(试卷习题)十套数据结构试题及参考答案.pdf
- 《数据结构》课程教学资源(知识点)数据结构各章重点难点.pdf
- 《数据结构》课程教学课件(讲稿,C语言描述)第9章 排序.pdf
- 《数据结构》课程教学课件(讲稿,C语言描述)第8章 查找.pdf
- 《数据结构》课程教学课件(讲稿,C语言描述)第6章 树.pdf
- 《数据结构》课程教学课件(讲稿,C语言描述)第7章 图.pdf
- 《数据结构》课程教学课件(讲稿,C语言描述)第4章 串.pdf
- 《数据结构》课程教学课件(讲稿,C语言描述)第2章 线性表.pdf
- 《数据结构》课程教学课件(讲稿,C语言描述)第5章 数组和广义表.pdf
- 《数据结构》课程教学课件(讲稿,C语言描述)第3章 栈和队列.pdf
- 《数据结构》课程教学课件(讲稿,C语言描述)第1章 绪论.pdf
- 《计算机组成原理》课程实验指导书.doc
- 《计算机组成原理》课程授课教案(讲稿,文字版).pdf
- 《计算机组成原理》课程教学资源(PPT课件)第七章 存储系统.ppt
- 《计算机组成原理》课程教学资源(PPT课件)第十章 输入输出系统(I/O).ppt
- 《计算机组成原理》课程教学资源(PPT课件)第五章 指令系统.ppt