实验四 数组及其字符串的处理
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验四数组及其字符串的处理
1.输入一串英文字母,统计每个字母(不区分大小写)出现的次数。(输
出统计结果时一律显示为小写字母)
如输入:Good
则输出:字母d有1个
字母g有1个
字母o有2个
请根据提示填空,使程序实现相应功能。
#include
main()
{
char ch[10000]; //用于保存输入的字母串
int nnum[26]=【1】;/* 赋初值,使各元素值为0
nnum用于存储各字母出现的次数,
因字母表共有26个字母,因此元素个数为26 */
int i,j;
printf("请输入一串字母\n");
scanf("%s",【2】);//读取字符串
i=0;//变量i用于遍历整个字符串各元素,初值为0,表示从字符数组首元素开始
while(【3】) //依次读取各元素,直至遇到字符串结束符’\0’
{
j=(ch[i]>=65&&ch[i]<=90)?ch[i]-65:ch[i]-97; /*若输入为字母,则用j 保存其在字母表中的位
次*/
if (【4】)nnum[j]++;//若j值不超限,则将该字母累计数加1
【5】;// 改变i值,换至下一个元素
}
for(i=0;i<26;i++)
if(nnum[i]!=0) printf("字母%c有%d个\n",97+i,【6】); //按题目要求输出结果
return;
}
编程题
2.输入10个整数存入数组,找出其中的最大数及其位置。
(位置从0开始编号)
3.求裴波那契数列(1 1 2 3 5 8 13 21 34……)的前18项。
4.求字符串长度(实现strlen 函数的功能)
提示:可参考第1题。
5.输入一个5*5的矩阵(#define N 5),求
(1)所有元素的和
(2)主对角线元素之和
(3)最大值及最小值所在位置
#include
main()
{
double mat[5][5];
int i,j;
【此处补充定义其它所需变量】
for(i=0;i<5;i++)
for (j=0;j<5;j++)
scanf("%lf",&mat[i][j]);
【完成其余代码,实现该题(1)(2)(3)的功能】
return;
}