欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

教你如何使用C++ 統(tǒng)計(jì)地鐵中站名出現(xiàn)的字的個(gè)數(shù)

 更新時(shí)間:2022年01月27日 10:37:02   作者:計(jì)算機(jī)知識(shí)雜談  
通過本文教大家如何使用C++ 統(tǒng)計(jì)地鐵中站名出現(xiàn)的字的個(gè)數(shù),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧

最近網(wǎng)上看到一個(gè)話題,也很有意思的,就寫到這里來了。

上海地鐵的站名中,出現(xiàn)頻率最高的字是什么?

正好,練習(xí)自己的C++代碼能力,給定一些站名,計(jì)算一下。

首先是一個(gè)文件,記錄了所有的站名,這個(gè)文件內(nèi)容比較長(zhǎng),摘錄一部分下來。這個(gè)文件可以作為我們的輸入文件來用。

注意,這個(gè)文件內(nèi)容上只是把所有線路的名稱羅列了一遍,可能有重復(fù)。因此,在我們計(jì)算的一開始,要把這些內(nèi)容去重。
最前面的部分如下:

#include<iostream>
#include<string>
#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
string name[15000];
int nPos=0;
int main(){
	freopen("Name.txt","r",stdin);
	freopen("Calc.txt","w",stdout);
	//1.排重
	string s;
	while(cin>>s){
		int flag=0;
		for(int i=1;i<=nPos;i++){
			if(name[i]==s)flag=1;
		}
		if(flag==0)name[++nPos]=s;
	}

nPos這個(gè)變量用于記錄目前的name數(shù)組總共有多少個(gè)元素。大體邏輯就是這樣。

接下來,我們要統(tǒng)計(jì)出現(xiàn)的字符的數(shù)量。我們使用一個(gè)結(jié)構(gòu)體來記錄:

struct Count{
	char T[4];//出現(xiàn)的中文漢字 
	int times;
	Count(){
		T[0]=T[1]=T[2]=T[3]=0;
	}
}strCount[15000];
int sPos=0;

由于是中文漢字,我們考慮使用字符串來存儲(chǔ),大小放大一點(diǎn),就寫成4個(gè)字節(jié)吧。

我們從1開始,順次遍歷name數(shù)組的每個(gè)元素,然后把name中每個(gè)中文字符拿出來和strCount中比對(duì)。出現(xiàn)過就+1,沒出現(xiàn)過就新建一個(gè)。

for(int i=1;i<=nPos;i++){
		for(int j=0;j+1<name[i].size();j+=2){
			char c[3];c[0]=name[i].at(j);c[1]=name[i].at(j+1);c[3]='\0'; //提取成中文
			int flag=0;
			for(int k=1;k<=sPos;k++){
				if(check(strCount[k].T,c)){//這個(gè)字已經(jīng)出現(xiàn)過
					strCount[k].times++;
					flag=1;
				}
			}
			if(flag==0){
				strncpy(strCount[++sPos].T,c,2);
				strCount[sPos].times=1;
			}
		}
}

這里用到了一個(gè)check函數(shù)判斷字符串的相等,由于只有2個(gè)元素所以直接寫就可以了,不用循環(huán)來比對(duì)了。

bool check(char *A,char *B){
	if(A[0]==B[0] && A[1]==B[1] )return true;
	return false;
}

然后最后的部分,進(jìn)行排序和輸出。

bool comp(Count A,Count B){
	return A.times>B.times;
}

int main(){
	//中略
	//3.輸出信息
	sort(strCount+1,strCount+sPos+1,comp);
	for(int i=1;i<=50;i++){
		cout<<strCount[i].T<<" "<<strCount[i].times<<endl;
	}
	return 0;
}

最終的輸出結(jié)果,這里我們只輸出前50名,摘取一些貼在下面:

本文所有內(nèi)容下載見:http://xiazai.jb51.net/202201/yuanma/calc_jb51.rar

到此這篇關(guān)于教你如何使用C++ 統(tǒng)計(jì)地鐵中站名出現(xiàn)的字的個(gè)數(shù)的文章就介紹到這了,更多相關(guān)C++ 統(tǒng)計(jì)地鐵中站名出現(xiàn)字的個(gè)數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • C++ string類getline()用法實(shí)例詳解

    C++ string類getline()用法實(shí)例詳解

    C++ getline()是一種標(biāo)準(zhǔn)庫函數(shù),用于從輸入流中讀取字符串或行,它是<string>標(biāo)頭的一部分,本文介紹C++ string類getline()用法詳解,感興趣的朋友一起看看吧
    2024-03-03
  • C++之Qt5雙緩沖機(jī)制案例教程

    C++之Qt5雙緩沖機(jī)制案例教程

    這篇文章主要介紹了C++之Qt5雙緩沖機(jī)制案例教程,本篇文章通過簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • C?語言中布爾值的用法實(shí)戰(zhàn)案例

    C?語言中布爾值的用法實(shí)戰(zhàn)案例

    這篇文章主要為大家介紹了C語言中布爾值的用法實(shí)戰(zhàn)案例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-12-12
  • C語言超詳細(xì)講解循環(huán)與分支語句基礎(chǔ)

    C語言超詳細(xì)講解循環(huán)與分支語句基礎(chǔ)

    各位小伙伴們,今天給大家?guī)淼氖茄h(huán)與分支語句,本篇將會(huì)向大家介紹這些語句的格式和使用的基本方法,感興趣的朋友來看看吧
    2022-04-04
  • C語言中如何通過指針參數(shù)返回值

    C語言中如何通過指針參數(shù)返回值

    這篇文章主要介紹了C語言中如何通過指針參數(shù)返回值問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • C語言與C++中關(guān)于字符串使用的比較

    C語言與C++中關(guān)于字符串使用的比較

    字符串是我們?cè)偈煜げ贿^的東西了,任何語言中字符串都是基礎(chǔ)都要經(jīng)常用到,那么在不同語言中字符串的用法一樣嗎?下面我們來看看C語言與C++中字符串使用的比較
    2022-05-05
  • C++ 中RTTI的使用方法詳解

    C++ 中RTTI的使用方法詳解

    這篇文章主要介紹了C++ 中RTTI的使用方法詳解的相關(guān)資料,希望通過本文大家能理解使用RTTI,需要的朋友可以參考下
    2017-09-09
  • C++命名空間5種常見用法實(shí)例解析

    C++命名空間5種常見用法實(shí)例解析

    這篇文章主要介紹了C++命名空間5種常見用法實(shí)例解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-06-06
  • Qt實(shí)現(xiàn)FTP的上傳和下載的實(shí)例代碼

    Qt實(shí)現(xiàn)FTP的上傳和下載的實(shí)例代碼

    本篇文章主要介紹了Qt實(shí)現(xiàn)FTP的上傳和下載的實(shí)例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-07-07
  • Qt實(shí)現(xiàn)網(wǎng)絡(luò)聊天室的示例代碼

    Qt實(shí)現(xiàn)網(wǎng)絡(luò)聊天室的示例代碼

    本文主要介紹了Qt實(shí)現(xiàn)網(wǎng)絡(luò)聊天室,實(shí)現(xiàn)一個(gè)在線聊天室, 使用tcp對(duì)客戶端和服務(wù)器端進(jìn)行通訊。具有一定的參考價(jià)值,具有一定的參考價(jià)值,
    2021-06-06

最新評(píng)論