C语言程序设计实用教程

上传人:宝路 文档编号:48068309 上传时间:2018-07-09 格式:PPT 页数:26 大小:274.78KB
返回 下载 相关 举报
C语言程序设计实用教程_第1页
第1页 / 共26页
C语言程序设计实用教程_第2页
第2页 / 共26页
C语言程序设计实用教程_第3页
第3页 / 共26页
C语言程序设计实用教程_第4页
第4页 / 共26页
C语言程序设计实用教程_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《C语言程序设计实用教程》由会员分享,可在线阅读,更多相关《C语言程序设计实用教程(26页珍藏版)》请在金锄头文库上搜索。

1、书名:C语言程序设计实用教程 ISBN:7-111-16742-2 作者:陈方 出版社:机械工业出版社 本书配有电子课件第4章 数组实际处理的数据,常常是一批批的,而不止是一个。比如,10个同学的年龄,它们都是 整型数据,仍用前面的定义方法,可用下面语句说明:int age0,age1,age2,age3,age4,age5,age6,age7,age8,age9;这里写了10个age,比较麻烦。C语言提供了数组的表示方法:int age10;数组是具有相同数据类型的变量的集合。各元素可独立地作为一个变量被赋值和使用。 数组中每个特定元素都用下标来访问。数组可以是一维的也可以是多维的。4.1

2、一维数组4.1.1 一维数组的定义一维数组定义的一般形式为:类型说明符 数组名常量表达式;例如: int a10;它表示数组名为a,有10个元素,每个元素都是整型,这10个元素是:a0,a1,a2,a3,a4,a5,a6,a7,a8,a9第4章 数组说明:(1)数组名定义规则和变量名相同,遵循标识符定义规则。(2)常量表达式要用方括号“ ”括起来,不能用圆括号(下面用法不对:int a(0);)。(3)常量表达式表示元素的个数,即数组长度。(4)常量表达式中包括常量和符号常量,不能包含变量。语言不允许对数组的 大小作动态定义。例如,下面这样定义数组是不行的:int n;int an;(5)数组

3、元素的下标从0开始,到(常量表达式1)为止。因此在如上定义的 数组中无a10元素。 4.1.2 一维数组元素的引用数组和其他变量一样必须先定义,后使用。C语言规定除字符数组外,只能 逐个引用数组元素,而不能一次引用整个数组。 第4章 数组例4-1 按顺序给数组的10个元素赋值,然后按逆序输出。程序如下:main( ) int i,a10;for (i=0;iaj+1) t=aj;aj=aj+1;aj+1=t;for(i=0;i数组长度,则作语法错误处理;如果初值个 数小于数组长度,则只将这些字符赋给数组中前面那些元素,其余的元素自动定 为空字符(即0)。例如: char c6=g,o,o,d

4、;此时 c4和c5都为0。 (3)如果初值个数与数组长度相同,在定义时可以省略数组长度,系统会自动根 据初值个数确定数组长度。例如: char c =g,o,o,d;数组c的长度自动定为4。(4)二维字符数组也可以初始化。4.3.3 字符数组的引用引用字符数组中的一个元素,可以得到一个字符。 例4-6 输出一个字符串。第4章 数组程序如下:main( ) char c10=I, ,a,m, ,a, ,b,o,y;int i;for(i=0;i字符串2,函数返回值正整数。(3)使用说明不能使用关系运算符“= =”来比较两个字符串,只能用strcmp()函数来处理。字符串的比较函数可以用来设置用户

5、程序密码。例4-8 核对密码。main( )char str10;gets(str);if(strcmp(str,“2005-1-1“)= =0) printf(“yes!“);/*输入字符串2005-1-1时正确*/else exit( );/*输入错误时退出程序,exit( )函数的作用是退出程序*/第4章 数组6求字符串长度 strlen()函数(1)调用方式:strlen(字符串)。(2)函数功能:求字符串(常量或字符数组)的实际长度,函数值为字符串中实际长度,不包括0在内。例如:char str10=“China“;printf (“%d“,strlen(str);输出结果不是10,

6、也不是6,而是5。也可以直接测字符串常量的长度,例如:strlen (“China“)7将字符串中大写字母转换成小写字母 strlwr()函数(1)调用方式:strlwr(字符串)。(2)函数功能:将字符串中的大写字母转换成小写,其他字符(包括小写字母和非字母字符)不转换。8将字符串中小写字母转换成大写字母 strupr()函数(1)调用方式:strupr(字符串)。(2)函数功能:将字符串中小写字母转换成大写,其他字符(包括大写字母和非字母字符)不转换。第4章 数组例4-9 输入一行英文单词,单词之间用空格隔开,统计其中有多少个单词。 main( ) char str 81;int i, n

7、um=0,word=0;char c;gets(str);for (i=0;(c=str i)!= 0;i+) /*从字符串的第一个字符开始,依次赋给c,至字符串结束为止*/if (c= = ) word=0; /*当str i为空格符时,word赋值0 */else if (word= =0) word=1;num+; /*当str i 为单词头一个字母时,word赋值1(原来为0),num加1;当str i 为单词的后续字母时, 因word的值是1,不做任何操作,返回去继续循环*/printf(“There are %d words in the linen“,num);程序运行结果:键盘

8、输入 I am a boy 回车屏幕输出 There are 4 words in the line程序中变量i作为循环变量,num用来统计单词个数,word作为判别是否单词的标志,word=0表示未出 现单词,如出现单词word就置成1。第4章 数组本 章 小 结1数组是一个有序数据的集合。数组元素可以是基本数据类型,如数值型或字符 型。数组元素的下标从0开始,到(常量表达式1)为止。2一维数组有两种方法赋值,一是使用scanf()函数,二是在定义数组时给它赋 值(数组的初始化)。3二维数组可以看成是一种特殊的一维数组,这个特殊的一维数组的元素又是一 维数组。因此定义的二维数组可以理解为定义

9、了几个一维的数组。C语言的这种处 理方法在数组初始化和用指针表示时显得很方便。二维数组初始化用花括号来 分行,可以全部赋值,也可部分赋值;第一维的长度可以不指定,但第二维的长 度必须指定。4用来存放字符的数组是字符数组。一般人们关心的是有效字符串的长度而不是 字符数组的长度,为此,C语言规定了一个字符串结束标志 0,它是一个“ 空操作符”,不能显示输出。它的作用就是在程序中依靠检测0来判定字符串是 否结束。系统会对字符串常量自动加一个0作为结束符。用格式符“%c”可进行单 个字符的输入输出,用格式符“%s”可进行字符串的输入输出。遇到第一个0字符 串的输入输出就结束。字符串的处理函数有许多,常用的有连接、复制、比较、 测长度、大小写转换等。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号