江苏大学c语言课件第六章.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
江苏大学c语言课件第六章

4.字符数组的输入/输出: · 整个字符串用格式符%S。 · scanf键入多个字符串时,空格为分隔符。P145 static char c[8 ]; scanf(%s,c); /* 是数组名,并且不要加地址符 */ printf(%s,c); /* 是数组名,不能写成数组元素 */ (2)连接两个串:strcat(str1 , str2 )返回str1首地址。 数组str1的元素个数≥合并后串的长度;前一串合并后其原末尾的 \0 取消,只在新串最后保留一个 \0 。 (1)puts(str)、gets(str)单个串的写读。 5.字符串处理函数: puts(字符数组名), gets(字符数组名) (3)字符串拷贝函数:strcpy(str1 , str2) 即str2拷贝到str1中去。 strcpy(str1 , str2 , n):只复制前n个。 C语言中不能用赋值语句将一个字符串常量或字符数组直接赋值给一个字符数组。 例:str1={China}; str2=str1; 5.字符串处理函数: 这样做是错误的 (4)串比较strcmp(str1 , str2) = ( 0、正值、负值 ) (5)测试字符串长度的函数 strlen( str1 ) 函数的值为字符串中实际长度,不包括 \0 在内。 ① 如果str1 == str2 ,函数值为0。 ② 如果str1 str2 ,函数值为正值。 ③ 如果str1 str2 ,函数值为负值。 5.字符串处理函数: * * 定义:数组是有序数据的集合.其每一个元素的类型相同. 一维数组的说明 一般形式: 类型说明符 数组名[ 常量表达式 ] 如: int a[10] (数组a有10个元素) 说明: 元素的下标从0开始. 上例中引用元素a[10]是错的 不允许动态数组.如: int n;scanf(“%d”,n);int a[n];是不允许的 第六章数组 一维数组的引用 数组一定要先说明,后引用 一次不能引用整个数组 数组元素形式: 数组名[表达式] 例:逆序输出一批数 main( ) {int j,a[10]; for(j=0;j=9;j++)scanf(“%d”,a[j]); for(j=9;j=0;j--)printf(“%d,”,a[j]);} (1)对静态数组初始化可节省运行时间 (2)给所有元素初始化可省写元素个数.如: static int a[10]={0,1,2,3,4,5,6,7,8,9};可写成: static int a[ ]={0,1,2,3,4,5,6,7,8,9}; 一维数组的初始化 (3)给部分元素初始化,后面的元素置0.如: static int a[10]={0,1,2,3,4}; 后5个元素为0,此时长度不能省 (4)不允许用重复系数表示相同的数.如: static int a[10]={0,0,0,0,0,0,0,0,0,0}; 不能写成: static int a[10]={10*0}; 一维数组的初始化 (1)实现数组元素逆序存放(即首尾互换) (2)实现数组元素前半部和后半部平移交换 (3)求数组元素之和及平均数 一维数组的基本应用 1. 顺序查找 假定把一列数放在一维数组a中,待查找的数放在x中,把x与a数组中的元素从头到尾一一进行比较,查找x的值在a数组中是否存在,这种方法称为是顺序查找。 p=1 算法: p:表示a数组元素的下标,称位置指针。 p首先置0,使x与a[p]比较,若x不等a[p],则使p=p+1,不断重复这个过程;一旦x等于a[p]则退出循环。此外,当p大于数组长度,循环也应停止。 使p=p+1重复执行的条件是:x!=a(p)p10 例:查找 x=91, p=0 p=2 p=3 p=4 p=4 〖顺序查找程序〗 sxfind.c #define N 10 main() {static int a[N]={23,56,11,87,91,35,41,44,60,6}; int p,i,x; for(i=0;iN;i++) printf(%3d,a[i]); printf(\n); printf(Please Enter find number:); scanf(%d,x); p=0; while(x!=a[p]pN) p=p+1; /* 不断查找的过程 */ if(x==a[p]) printf(%d Position is %d\n,

文档评论(0)

haocen + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档