第15周报告2
实验目的:学会操作字符数组
实验内容:完成对字符数组的操作
* 程序头部注释开始
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称:
* 作
* 完成日期:
* 版本号:
* 对任务及求解方法的描述部分
* 输入描述:要处理的字符串在程序中通过赋初值完成
* 问题描述:求出字符数组中字符的个数及计算句子中各字符出现的频数
* 程序输出:字符数组中字符的个数和句子中各字符出现的频数
* 程序头部的注释结束
#include<iostream>
using namespace std;
int length(char str[]);
void output_frequency(char str[]);
//函数声明
int main(void) //不要对main函数有任何改动
{
char str[] = "he threw three free throws";
cout << "要处理的字符串为:" << str << endl ;
cout << "字符串长度为:" << length(str) << endl ;
cout << "字符串中各字符出现的频数为:" ;
output_frequency(str);
cout << endl;
return 0;
}
int length( char str[])
{
int n= 0, i;
for( i = 0; str[i] != '\0'; i++ )
{
n++;
}
return n;
}
void output_frequency( char str[] )
{
int i,j, num;
num = length(str);
for(i = 0; i < num; i++)
{
int n = 0;
for(j = 0; j < num; j++)
{
if(str[i] == str[j])
{
if(j < i)
{
break;
}
else
{
n++;
}
}
}
if (n != 0)
{
cout<< str[i] << "-" << n << ' ';
}
}
return;
}
运行结果:
经验积累:
1.对数组的理解和循环相结合。
上机感言:对于此次的剔除重复字符,确实没有想出来,不过在经过小组成员的启发下,还是做出来了。