rfh13 二维字符数组和应用.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《rfh13 二维字符数组和应用.ppt》由会员分享,可在线阅读,更多相关《rfh13 二维字符数组和应用.ppt(15页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、补充 二维字符数组Arrays 二维字符数组二维字符数组的定义 与二维数值数组定义方法相同,只是数据类型为char 例:char a25,b37;即:数组a有2行5列,可以存放2个长度为4的字符串;数组b有3行7列,可以存放3个长度为6的字符串。二维字符数组的初始化1、定义时初始化 char a38=str1,str2,string3;03gnirts02rts01rtsa0:a1:a2:a00 char b6=“s1“,st2,str3;03rts02ts01sb0:b1:b2:b00二维字符数组的引用 用i引用i行的字符串,或用ij引用i行j列的字符例:for(i=0;i3;i+)prin
2、tf(“%sn”,ai);/*输出i行字符串*/for(i=0;i3;i+)printf(“%cn”,aii);/*输出i行i列字符*/for(i=0;i3;i+)printf(%sn,&aii+1)/*输出i行i+1列字符开始的字符串*/03gnirts02rts01rtsa0:a1:a2:a00选票:LiuWangWangZhangLiuChengWangLiuLiuZhangchengCheng0Zhang0Wang0Liu0man3man2man1man0候选者名字表:0000b3b2b1b0候选者得票数:读入所有候选者名字放到候选者名字表中,清其得票初始值为0从第0个到第M-1个处理
3、选票,递增1 读选票 查找该名字在候选者名字表中的下标号 若找到,将该标号对应的得票数加1,退出查找循环输出所有候选者名字及得票数2234 例7-14 统计选票设候选人有 N人,参加投票的有 M人#include stdio.h#include string.hmain()char k10,sN10;int bN,i,j;for(i=0;iN;i+)gets(si);bi=0;for(i=0;iM;i+)gets(k);for(j=0;j=0;jN;jN;j+j+)if if(!(!(strcmp(sj,kstrcmp(sj,k))bj+;break;bj+;break;for(i=0;iN;
4、i+)printf(%s:%d,si,bi);#define N 4#define M 20例:输入若干个0到9之间的整数(以输入-1表示终止)统计各整数的个数#include“stdio.h”#define N 10main()int a,b10=0;scanf(“%d”,&a);while(a!=-1)ba+;scanf(“%d”,&a);for(i=0;in;i+)printf(“%d:%d”,i,bi);统计计数值:0000000000b9b8b7b6b5b4b3b2b1b0输入数字:2 5 3 6 9 1 2 4 7 1 4 6 2 7 4 9 5 4 8 6 3 8 4 0 6 7
5、 4-1 2234262321计数数组初始值为0,读第一个数据非“1”对应相计数值加1 读下一个数据输出所有计数值例:按下列要求编程序:产生10个2位随机正整数并存放在a数组中;关键点:产生随机数;在C语言库函数中有一个产生1到32767之间随机数的函数rand()(在文件stdio.h中定义),产生a到a+b之间的随机正整数的方法:rand()%b+a则:rand()%90产生0到89之间的整数,rand()%9010产生10到99之间的整数。int aN+1,n=N;printf(“产生%d个2位随机整数组成数组:n”,n);for(i=0;in;i+)ai=rand()%9010;pri
6、ntf(“%4d”,ai);printf(“n”);s200020012002200320042005C Ch hi in na a00按从小到大的顺序排序关键点:采用选择法排序;for(i=0i=0;in-1in-1;i+i+)k=i;for(j=i+1j=i+1;jnjaj j)k=j;/*只记录需要交换数据的下标编号 if(k!=i)/*本次比较后找到最小值的下标 tmp=ak;/*只做一次交换,节约计算时间 ak=ai;ai=tmp;pringf(“排序后的数组:n”);for(k=0;kn;k+)pringf(“%4d”,ak);任意输入一个数,插入到数组中,使之仍保持有序;关键点:
7、插入时涉及到定位和数据向后挪位。printf(n请输入一个要插入的数k:n);scanf(%d,&k);for(i=0;in;i+)if(ki;j-)ajaj-1;/*aj(jn-1.i+1)后移个位置,腾出ai*/ai=k;/*将k插入到ai中*/n=n+1;/*a数组增加一个元素*/printf(n输出插入后的a数组各元素:n);for(i=0;in;i+)printf(%4d,ai);24 任意输入一个0到9之间的整数k,删除ak。关键点:删除时涉及到向前挪位。printf(n输入要删除数组元素的下标k:n);scanf(%d,&k);for(j=k;jn-1;j+)aj=aj+1;/*
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- rfh13 二维字符数组和应用 二维 字符 数组 应用
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内