正在加载图片...
匚课题第七章字符数组 教案号11 教学1、掌握字符数组的定义、初始化、引用,及输入与输出 目的|2、掌握字符串处理函数 教材教学重点字符数组的输入与输出 分析「教学难点字符串处理函数 「课时安排 2教学方法讲授与演示法相结合教具计算机、投影仪 复习引导 从一般的一维数组、二维数组到特殊的字符数组 二讲授新课 字符数组的定义 char数组名[exp] 如: char c[l0] 、字符数组的初始化 1.给每一个字符型数组元素依次赋给一个单字符。如: char strl6}={C,"h;"i,n,"a’,"V0”}; 2.直接在赋值号右边给出字符串常量。如: char str6=hina” 注意:a)字符数组的长度可以通过赋初值的方式隐含定义:如: str[]={C’,h',i,n,a,V0”}; str[=China b)如果括号中提供的初值个数(即字符个数)大于数组长度,则作语法错误处理。 如果初值个数小于数组长度,则只将这些字符赋给数组中前面那些元素,其余的 元素自动定义为空字符(即“10’)。 、字符串和字符串结束标志 字符串结束标志是"0”,如 char ch[= China”,“ China”在存储器中实际占用6个字节: 四、字符数组的输入和输出 1、字符数组的输出 (1)用格式符“%c”控制的 printf(,逐个字符输出 (2)用格式符“%s控制的 printf();字符数组值整体输出 (3)puts(字符数组名):字符数组值整体输出 注意 (1)puts用字符数组名,而不用数组元素名 (2)输出的字符串中可含转义字符:如: static char str[="ChinalnBeijing", puts(str); (3)如果数组长度大于字符串实际长度,也只输出到遇“0’时结束(即若一个字符数组中 包含一个以上的“\0’,则遇到第一个时输出就结束)。如: printf(%osln”,“ ABCD\OEFGH); 只输出ABCD 、字符数组的输入 (1)用格式符“%s”控制的 Scant() tu: static char strl[5], str 2[5], str3[5] scanf(%s%s%s”,strl,str2,str3);/*不能写成&str1* 若输入数据流为: How are you?srl、st2、st3分别接收到How"、"are、you?”, 且在各个字符串的最后自动加“10 如果利用一个 scanf函数输入多个字符串时,则以空格分隔 (2)用gets();如; char ch[l6];gets(ch)课 题 第七章 字符数组 教案号 11 教 学 目 的 1、掌握字符数组的定义、初始化、引用,及输入与输出 2、掌握字符串处理函数 教 材 分 析 教学重点 字符数组的输入与输出 教学难点 字符串处理函数 课时安排 2 教学方法 讲授与演示法相结合 教具 计算机、投影仪 一 复习引导 从一般的一维数组、二维数组到特殊的字符数组 二 讲授新课 一、字符数组的定义 char 数组名[exp]; 如:char c[10]; 二、字符数组的初始化 1. 给每一个字符型数组元素依次赋给一个单字符。如:char str[6]={‘C’, ‘h’, ‘i’, ‘n’, ‘a’, ‘\0’}; 2. 直接在赋值号右边给出字符串常量。如: char str[6]=“China”; 注意:a) 字符数组的长度可以通过赋初值的方式隐含定义;如: char str[ ]={‘C’, ‘h’, ‘i’, ‘n’, ‘a’, ‘\0’}; char str[ ]=“China”; b) 如果括号中提供的初值个数(即字符个数)大于数组长度,则作语法错误处理。 如果初值个数小于数组长度,则只将这些字符赋给数组中前面那些元素,其余的 元素自动定义为空字符(即‘\0’)。 三、字符串和字符串结束标志 字符串结束标志是“\0”,如: char ch[]=”China”; “China”在存储器中实际占用6个字节: 四、字符数组的输入和输出 1、字符数组的输出 (1)用格式符“%c”控制的 printf(),逐个字符输出 (2)用格式符“%s”控制的 printf();字符数组值整体输出 (3)puts (字符数组名);字符数组值整体输出 注意: (1)puts用字符数组名,而不用数组元素名; (2)输出的字符串中可含转义字符;如: static char str[]=“China\nBeijing”; puts(str); (3)如果数组长度大于字符串实际长度,也只输出到遇‘\0’时结束(即若一个字符数组中 包含一个以上的‘\0’,则遇到第一个时输出就结束)。如:printf(“%s\n”,“ABCD\0EFGH”); 只输出 ABCD 2、字符数组的输入 (1)用格式符“%s”控制的scanf(); 如: static char str1[5],str2[5],str3[5]; scanf(“%s%s%s”, str1,str2,str3); /*不能写成&str1*/ 若输入数据流为:How are you? str1、str2、str3分别接收到“How”、“are”、“you?”, 且在各个字符串的最后自动加‘\0’。 如果利用一个 scanf 函数输入多个字符串时,则以空格分隔; (2)用gets( );如:char ch[16]; gets(ch);
向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有