求数字在数组中出现的次数

来源:互联网 发布:形容男人帅的网络词 编辑:程序博客网 时间:2024/05/17 05:04

// CountTimeInArray.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <iostream>using namespace std;void CountTimeInArray(char *chArray);void CountTimeInArrayFromFile(char *chFileName);//求数字在排序数组中出现的次数//从一串字符中找出0,1,2...9出现的次数//从一个文件中读出字符,统计0,1,2...9出现的次数int _tmain(int argc, _TCHAR* argv[]){char ch[1024] = "abc123455432100009";CountTimeInArray(ch);CountTimeInArrayFromFile("d:\\test.txt");system("pause");return 0;}void CountTimeInArray( char *chArray ){int nCount[10]={0,0,0,0,0,0,0,0,0,0};//0,1,2...9出现的次数 初始化为0int i = 0;while (chArray[i]){if ((chArray[i]>='0')&&(chArray[i]<='9')){int nTemp = chArray[i]-'0';++nCount[nTemp];}++i;}for (i=0;i<10;++i){cout<<i<<" count:"<<nCount[i]<<endl;}cout<<endl;}void CountTimeInArrayFromFile( char *chFileName ){FILE *fp;errno_t nErr;nErr = fopen_s(&fp,chFileName,"r+");if (nErr!=0){cout<<"Open file error."<<endl;return;}char chArray[1024];fseek(fp,0,SEEK_END);//文件指针移动文件结尾int nSize = ftell(fp);fseek(fp,0,0);//文件指针移动文件头部fread(chArray,sizeof(char),nSize,fp);if (fp){fclose(fp);}int nCount[10]={0,0,0,0,0,0,0,0,0,0};//0,1,2...9出现的次数 初始化为0int i = 0;while (chArray[i]){if ((chArray[i]>='0')&&(chArray[i]<='9')){int nTemp = chArray[i]-'0';++nCount[nTemp];}++i;}for (i=0;i<10;++i){cout<<i<<" count:"<<nCount[i]<<endl;}cout<<endl;}



0 0
原创粉丝点击