版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、12021-12-1322021-12-133l一个人一个人N门课的成绩怎样存储和处理?门课的成绩怎样存储和处理?l一个班一个班N门课的成绩怎样存储和处理?门课的成绩怎样存储和处理?.2021-12-134数据类型数据类型 数组名数组名常量表达式常量表达式;2021-12-1352021-12-136score0score1score2score3score491.534.567.572.084.0低地址低地址高地址高地址score数组数组2021-12-1372021-12-138 C编译系统不做越界检查,如果引用的数组元素编译系统不做越界检查,如果引用的数组元素超出数组范围会破坏其他变量的
2、值。超出数组范围会破坏其他变量的值。2021-12-139 是是引用数引用数组元素时,根据数组的组元素时,根据数组的和和数,计算出该元素的实数,计算出该元素的实际地址,取出该地址的际地址,取出该地址的进进行操作。行操作。如引用如引用 score2:(1)计算计算 2000+2*4=2008(2)取出取出2008的内容的内容2000H2004H2008H200CH218CHscore0score1score2score3score491.534.567.572.084.02021-12-13101在定义数组时,对全部数组元素赋初值在定义数组时,对全部数组元素赋初值 例如:例如:int a5=0,
3、1,2,3,4;此时可以省略数组长度,例如:此时可以省略数组长度,例如:int a =0,1,2,3,4;2在定义数组时,对部分数组元素赋初值在定义数组时,对部分数组元素赋初值 例如:例如:int a5=1,2,3;系统为其余元素赋系统为其余元素赋 0 。3当初值的个数多于数组元素的个数时,编译出错当初值的个数多于数组元素的个数时,编译出错 例如:例如: int a5=0,1,2,3,4,5;2021-12-1311运行情况如下:运行情况如下:67 74 89 92 34 67 83 95 73 78 78.0 73.0 95.0 83.0 67.0 34.0 92.0 89.0 74.0 6
4、7.02021-12-13122021-12-1313程序运行情况如下:程序运行情况如下:5 7 2 3 1 5 1 2 3 72021-12-1314第一趟排序情况如下:第一趟排序情况如下: 3 7 5 6 8 0第一次第一次 3和和7比较,不交换比较,不交换 3 7 5 6 8 0第二次第二次 7和和5比较,交换比较,交换 3 5 7 6 8 0第三次第三次 7和和6比较,交换比较,交换 3 5 6 7 8 0第四次第四次 7和和8比较,不交换比较,不交换 3 5 6 7 8 0第五次第五次 8和和0比较,交换比较,交换 3 5 6 7 0 8在第一趟排序中,在第一趟排序中,6个数比较了个
5、数比较了5次,把次,把6个数中的最大数个数中的最大数8排在最后。排在最后。2021-12-13152021-12-1316 冒泡法排序冒泡法排序for (i=0; iN; i+) 输入输入ai for (j=1;jN; j+) for (i=0; iai+1 T F ai与与ai+1交换交换输出输出a0aN-12021-12-1317程序运行情况如下:程序运行情况如下:3 7 5 6 8 0 0 3 5 6 7 82021-12-13182021-12-1319图6.3 选择法排序for (i=0; iN; i+) 输入ai for (j=0; jN-1; j+) for (i=j+1; ia
6、i T F aj与ai交换 输出a0aN-12021-12-1320程序运行情况如下:96 78 65 86 40The sorted numbers: 40 65 78 86 962021-12-1321数据类型数据类型 数组名常量表达式数组名常量表达式1常量表达式常量表达式2; 的定义的定义2021-12-1322x00 x01x02x10 x11x12元素元素的的2021-12-1323x0是数组名,是元素是数组名,是元素x00的地址的地址x1是数组名,是数组名, 是元素是元素x10的地址的地址二维数组可看作是一种特殊的一维数组二维数组可看作是一种特殊的一维数组2021-12-1324a
7、34=3; /* 下标越界下标越界 */a1,2=1; /* 应写成应写成 a12=1; */例:例:int a34; a00=3; a01=a00+10; 2021-12-1325例例:int a23=1,2,3,4,5,6;例:例:int a23=1,4;初始化后结果:初始化后结果: 1 0 0 4 0 02021-12-13262021-12-13272021-12-1328程序运行情况如下:程序运行情况如下:1 2 3 4 5 6 7 8 9 10 11 12 1 2 34 5 67 8 910 11 122021-12-1329 图图6.4 查找最大元素查找最大元素max=|a00|
8、,row=0,colum=0 for (i=0; iN; i+) for (j=0; jmax T F max=|aij| row=i colum=j输出绝对值输出绝对值最大的元素及行列下标最大的元素及行列下标2021-12-1330程序运行情况如下:程序运行情况如下:34 56 12 67 23 12 67 43 98 54 65 45 66 16 24 37 83 25 64 19 max=98,row=1,colum=32021-12-13316.3.1 6.3.1 基本概念基本概念不是字符串不是字符串2021-12-13322021-12-1333不是字符串不是字符串2021-12-1
9、3342021-12-1335b0b13思考:哪个数组存放的是字符串思考:哪个数组存放的是字符串2021-12-1336【例例6.8】对字符数组对字符数组c1赋赋 09,对字符数组,对字符数组c2赋赋 AZ,然后输出,然后输出c1和和c2数组中的数据。数组中的数据。 可以为数组元素赋值,也可以输入可以为数组元素赋值,也可以输入/ /输出元素的值。输出元素的值。2021-12-13372021-12-1338C是数组首地址是数组首地址输出时遇输出时遇 0 为止为止 2021-12-1339注意:不可以为数组整体赋值,例如:注意:不可以为数组整体赋值,例如: 2021-12-13402021-12
10、-1341:char str1 = China;char str1 = China;char str2 = Beijing; char str2 = Beijing; puts(str1);puts(str1);puts(str2);puts(str2);输出结果:输出结果:China China BeijingBeijing2021-12-1342程序运行情况如下:程序运行情况如下:How are you? Fine thank you. How are you?Fine thank you. :main( ) char c120,c220; gets(c1); gets(c2); puts
11、(c1); puts(c2);2021-12-1343必须足够大char str121=beijing and ;char str121=beijing and ;char str2 =shanghai;char str2 =shanghai;printf(%s,strcat(str1,str2);printf(%s,strcat(str1,str2);2021-12-1344s1必须足够大思考:这样赋值s1=Beijing ;或 s1=s2;可以吗?为什么?s1的结果的结果char s110,s2 = Beijing;char s110,s2 = Beijing; strcpy(s1,s2)
12、; strcpy(s1,s2);或:或:strcpy(s1,Beijing);strcpy(s1,Beijing);2021-12-1345abcde0str1abcde0str2abcabcde0bcd0Abcde0str1str2str1str22021-12-1346思考:若有语句if (s1= =s2) printf(s1=s2);比较的是什么?2021-12-1347思考:字符串China和str数组在内存中各占几个字节?char str10= China;printf(%d,strlen(str);或或printf(%d,strlen(China);2021-12-1348char
13、 str =MICRO SOFT WORD ;strlwr(str);puts(str);printf(%s,strlwr(AbCd);2021-12-1349char ch10=pascal;printf(%s,strupr(ch);2021-12-1350【例例6.96.9】从标准输入设备上输入一个字符串,分别统计其中每个数字、空格、从标准输入设备上输入一个字符串,分别统计其中每个数字、空格、字母及其他字符出现的次数。字母及其他字符出现的次数。用用gets( )函数读字符串,然后判断每一个字符是否是函数读字符串,然后判断每一个字符是否是数字数字、空格空格、大小写大小写字母字母或或其他字符其他字符,用循环实现。,用循环实现。此题要求分别统计每个数字出现的次数,而不是统计数字出现的总次数。此题要求分别统计每个数字出现的次数,而不是统计数字出现的总次数。用一个一维整型数组存放每个数字出现的次数。用一个一维整型数组存放每个数字出现的次数。2021-12-1351程序运行情况如下程序运行情况如下:China 1949.10.12004.10.10:4个 1:5个 2:2个 3:0个 4:1个 5:0个 6
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年白城职业技术学院单招职业适应性测试题库含答案解析
- 2026年上半年甘肃省事业单位招聘分类考试笔试参考题库及答案解析
- 2026福建厦门翔安区金海第二中心幼儿园招聘非在编合同教师1人笔试模拟试题及答案解析
- 2026枣庄机场建设投资有限公司专业人员招聘(29人)考试参考题库及答案解析
- 2026汉中兴汉新区第四幼儿园见习招聘考试备考试题及答案解析
- 2026年阳江职业技术学院单招职业技能考试题库含答案解析
- 2026山东省中国海洋大学食品科学与工程学院实验技术人员招聘2人笔试模拟试题及答案解析
- 2026四川成都新都区集中招聘编外人员10考试参考题库及答案解析
- 2026年河南应用技术职业学院单招综合素质考试题库附答案解析
- 2026年中国电建集团核电工程有限公司招聘考试参考试题及答案解析
- 2026年基层森林防火知识考试试题及答案
- 2025年内蒙古电子信息职业技术学院单招职业适应性考试题库附答案解析
- 2026年及未来5年市场数据中国电炉钢行业市场全景监测及投资战略咨询报告
- 2026届四川省绵阳市高三2023级二诊语文试题A卷(含答案)
- 2025年金融行业低空经济白皮书-中国工商银行软件开发中心
- 酸碱废气处理设备操作规范详解
- 2025-2026学年教科版(新教材)小学科学三年级下册(全册)课时练习(附目录)
- 上海市嘉定区2026届初三一模英语试题(含答案)
- 2025至2030中国残疾人用车行业运营态势与投资前景调查研究报告
- 某制药厂抗生素废水治理工程方案设计书(6.13修改)
- GB/T 23932-2009建筑用金属面绝热夹芯板
评论
0/150
提交评论