十五周任务二

来源:互联网 发布:linux dd u盘 编辑:程序博客网 时间:2024/06/12 01:29

第15周报告2
实验目的:学会操作字符数组
实验内容:完成对字符数组的操作

* 程序头部注释开始
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称:                             
* 作    者:         董宝文                    
* 完成日期:     2011    年   12    月       日
* 版 本 号:         

* 对任务及求解方法的描述部分
* 输入描述:要处理的字符串在程序中通过赋初值完成
* 问题描述:求出字符数组中字符的个数及计算句子中各字符出现的频数
* 程序输出:字符数组中字符的个数和句子中各字符出现的频数
* 程序头部的注释结束

 

#include<iostream>using namespace std;int num;int length(char count[]);void output_frequency(char fre[]);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 arr[])函数;int length(char count[]){ int i=0,num=0; while(count[i]!='\0') {  i++;  num++; } return num;}//定义void output_frequency(char arr[])函数;void output_frequency(char arr[]){ int i=0,k,count,c; do {  k=0;  while(k<i)  {   c=1;   if(arr[i]==arr[k])   {    c=0;    break;   }   k++;  }    if(c)  {   k=i;   count=0;   do{       if(arr[i]==arr[k])    {     count++;    }    k++;   }while(arr[k]!='\0');   cout<<arr[i]<<"-"<<count<<" ";  }  i++; }while(arr[i]!='\0');}    


运行结果

第15周报告2

 

 

经验积累:
1.要学会分部分解决问题,不要想着一股脑的全部解决,一步一个台阶才是王道。
2.只有先明白问题的流程,才能解决问题。

题外话:不得不佩服机房的机子效率...(见以上内涵图)...

上机感言:革命尚未成功,同学我仍需努力.........