- 1、本文档共43页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[理学]2010年C语言课件第四章 数组
第四章 复杂数据类型 Fibonacci 数列前20项:设f1、f2为相邻两个数,使用循环每次输出2个数,供循环10次。 Fibonacci 数列前20项:设f为所求,f=f1+f2,每次输出1项,供循环20次。 main() { char a[]={h,e,l,\0,l,o,\0}; printf(%s,a); } 例 输出:hel h e l \0 l o \0 数组中有多个‘\0’时, 遇第一个结束 main() { int i; char a[5]; scanf(%s,a); for(i=0;i5;i++) printf(%d,,a[i]); } 运行情况: (1)若输入 hel , 正常 (2)若输入 hell , 正常 (3)若输入 hello , 用%s 输出时,会出现问题 h e l \0 h e l l \0 h e l l o 输入字符串长度数组元素数 例 字符串输入举例 H o w \0 a r e \0 y o u ? \0 #include stdio.h main() { char a[15],b[5],c[5]; scanf(%s%s%s,a,b,c); printf(a=%s\nb=%s\nc=%s\n,a,b,c); scanf(%s,a); printf(a=%s\n,a); } 运行情况: 输入:How are you? 输出:a=How b=are c=you? 输入:How are you? 输出:a=How scanf中%s输入时,遇空格或回车结束 常用的字符串处理函数 包含在头文件 string.h 字符串输出函数puts 格式:puts(字符数组) 功能:向显示器输出字符串(输出完,换行) 说明:字符数组必须以‘\0’结束 与printf(“%s\n”,字符数组)功能相当。 字符串输入函数gets 格式:gets(字符数组) 功能:从键盘输入一以回车结束的字符串放入字符数组中, 并自动加‘\0’ 说明:输入串长度应小于字符数组元素个数 例 #include stdio.h main( ) { char string[80]; printf(“Input a string:”); gets(string); puts(string); } 输入: How are you? 输出: How are you ? 字符串连接函数strcat 格式:strcat(字符数组1,字符数组2) 功能:把字符数组2连到字符数组1后面 返值:返回字符数组1的首地址 说明:?字符数组1必须足够大 ?连接前,两串均以‘\0’结束;连接后,串1的‘\0’取消, 新串最后加‘\0’ 字符串拷贝函数strcpy 格式:strcpy(字符数组1,字符串2) 功能:将字符串2,拷贝到字符数组1中去 返值:返回字符数组1的首地址 说明:?字符数组1必须足够大 ?拷贝时‘\0’一同拷贝 ?不能使用赋值语句为一个字符数组赋值 例 char str1[20],str2[20]; str1={“Hello!”}; (?) str2=str1; (?) * 4.1 数组 4.1.1 概论 构造数据类型之一 数组:有序数据的集合,用数组名标识 元素:属同一数据类型,用数组名和下标确定 a1 a2 a3 …… an —— 数学中表示法 a[1] a[2] a[3] …… a[n] —C语言中下标表示法 4.1.2 一维数组的定义和引用 合法标识符 表示元素个数 下标从0开始 [ ] :数组运算符 单目运算符 优先级(1) 左结合 不能用( ) 例 int a[6]; a[0] 0 1 4 5 a[1] a[2] a[3] a[4] a[5] 2 3 a 编译时分配连续内存 内存字节数=数组维数*
文档评论(0)