北京理工大学《C语言程序设计4》课件-第七章数组.pptVIP

  • 2
  • 0
  • 约1.06万字
  • 约 63页
  • 2022-12-07 发布于北京
  • 举报

北京理工大学《C语言程序设计4》课件-第七章数组.ppt

【例题】求矩阵A(2×3)的转置矩阵B(3×2)。 ┏ 1 2 3 ┓  ┏ 1 4 ┓ A= ┃ ┃ B= ┃ 2 5 ┃ ┗ 4 5 6 ┛ ┗ 3 6 ┛ 矩阵转置算法 在原来矩阵A中的元素a[i][j],应是转置后矩阵B中的元素b[j][i]。 第三节 二维数组 #include stdio.h main( ) { int i, j; int b[3][2], a[2][3] = { {1,2,3}, {4,5,6} }; /* 说明初始化数组a */ for (i=0; i=1; i++) for (j=0; j=2; j++) b[j][i] = a[i][j]; /* 进行数组转置 */ for (i=0; i=2; i++, printf(”\n”)) for (j=0; j=1; j++) printf(%d , b[i][j]); } 第三节 二维数组 已经学习过的内容: 字符型数据 字符型数据的输入输出函数 getchar( ) putchar( ) scanf() printf() gets( ) puts( ) 第四节 字符数组 字符数组: 可以存放若干个字符,也可以存放字符串。 C h i n a \0 字符串: 字符串的末尾必须有’\0’字符,它的ASCII码值为0。 C h i n a 不是字符串 是字符串 一、基本概念 第四节 字符数组 再例如: char a[3][5]; a数组是一个二维的字符数组,可以存放15个字符或3个长度不大于4的字符串。 例如: char s[10]; s数组是一维字符数组,它可以存放10个字符或一个长度不大于9的字符串。 注意:字符串只能存放在字符数组中。 二、字符数组的定义 第四节 字符数组 ? 例: char str[ 7 ]={‘B’,’e’,’i’,’j’,’i’,’n’,’g’}; 如果字符个数小于字符数组长度,其余元素系统自动赋‘\0’。 问题:字符个数等于字符数组长度? 三、字符数组的初始化 将字符数组作为字符串处理,改上例: char str[ ]=“Beijing”; 问题: 1.字符数组str的长度? 字符串的长度? 2.char str=“Beijing”; 8 7 第四节 字符数组 在字符串末尾系统自动赋结束标志‘\0’。 C h i n a 1.用字符常量赋初值 例如:char c[5]={C,h, i, n, a }; 再例如: char c[6]={C,h, i, n, a , \0}; C h i n a \0 是字符串 不是字符串 第四节 字符数组 再例如: char a[3][10]={basic,pascal,c}; a s t r i n g \0 \0 2.用字符串常量赋初值 例如: char str[10]= {a string}; 或char str[10]= a string; b a s i c \0 \0 \0 \0 \0 p a s c a l \0 \0 \0 \0 c \0 \0 \0 \0 \0 \0 \0 \0 \0 是字符串吗? 第四节 字符数组 ? 可以用赋值语句为字符数组元素赋值 str[0]= ‘B’; str[1]= ‘e’; str[2]= ‘i’; str[3]= ‘j’; str[4]= ‘i’; str[5]= ‘n’; str[6]= ‘g’; str[7]= ‘\0 ’; 字符数组不能整体赋值: str = “Beijing”; 为什么? 注意区分在说明语句进行初始化,与用赋值语句赋值的区别。 四、字符数组的引用 第四节 字符数组 1.对字符数组元素的引用 【例题】对字符数组c1赋 0~9,对字符数组c2赋 A~Z,然后输出c1和c2数组中的数据。 main( ) { char c1[10],c2[26]; int i; for (i=0; i10; i++) c1[i]=i+48; for (i=0; i26; i++) c2[i]=i+A; for (i=0; i10; i++) printf(%c ,c1[i]); printf(\n); for (i=0; i26; i++) printf(%c ,c2[i]); printf(\n); } 第四节 字符数组 2.对字符数组的整

文档评论(0)

1亿VIP精品文档

相关文档