真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

C語言藍(lán)橋杯真題:單詞分析-創(chuàng)新互聯(lián)

創(chuàng)新互聯(lián)公司是一家專注于成都網(wǎng)站建設(shè)、成都做網(wǎng)站與策劃設(shè)計,麻城網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)十載,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:麻城等地區(qū)。麻城做網(wǎng)站價格咨詢:18982081108第一個代碼解析:?

#include#includeint main()
{
  int count[26]={0};
  char ch=0;
  int maxc=0;
  while((ch=getchar())!='\n')
  {
    if(++count[ch-97]>=count[maxc])
    {
      maxc=ch-97;
    }
  }
  printf("%c\n%d",maxc+97,count[maxc]);
  return 0;
}
初始化:?

創(chuàng)建字母表count,巧妙地串聯(lián)起了單詞順序,主要作用是記錄單詞出現(xiàn)的個數(shù)

解釋:我們已知ASCII碼中,小寫的字母a之后的ASCII碼為97,98....后面的代碼中將輸入的字符ch-97,我們可知'a'-97=0,'b'-97=1,'c'-97=2....

即作者意圖將count創(chuàng)立為count[0]表示a,count[1]表示b,count[2]表示c以此類推

數(shù)組內(nèi)部則統(tǒng)計各個字母出現(xiàn)的個數(shù)

ch用來遍歷

maxc記錄出現(xiàn)最多次的單詞,作為輸出內(nèi)容的一部分(原變量名為maxInside,我改成了maxc,意思是maxchar 大的字符,這個因人而異,但是有一個好的變量名稱習(xí)慣是很必要的!)

初始化為0,在下一步中默認(rèn)為count[0],即第一個字母a

遍歷過程:
while((ch=getchar())!='\n')
  {
    if(++count[ch-97]>count[maxc])
    {
      maxc=ch-97;
    }

循環(huán)條件為? ch接收的getchar函數(shù)讀取的字符不為回車符?

進(jìn)入if條件后,先對出現(xiàn)的字符進(jìn)行計數(shù):? ++count[ch-97],前置++

然后對其進(jìn)行比較出現(xiàn)次數(shù)的大小判斷:

第一次進(jìn)入時:maxc為0,即count[0],表示的是第一個字母a

如果ch-97>=maxc,即 '輸入字母'>='a'? ?則將最多次數(shù)的字母的位置記錄為maxc

? 因為是前置++,所以第一次肯定更新maxc

?????除非是a,因為count[0]=count[0]

后面遍歷的情況:

因字符而異啦

進(jìn)入條件先對讀取字符的次數(shù)加一,然后判斷

如果讀取的字符出現(xiàn)的次數(shù) 大于 目前出現(xiàn)次數(shù)最多的字符

更新 maxc

輸出過程:
printf("%c\n%d",maxc+97,count[maxc]);

因為maxc的大小和ch-97是配合起來的,哪怕是初始化,當(dāng)maxc=0時,maxc+97為a的ASCII碼值

所以這里直接輸出字符%c,按照char類型輸出maxc+97? 及%d,按照Int類型輸出數(shù)組的內(nèi)容count[maxc]即出現(xiàn)最多的字符

第二個代碼解析:?
#include#includeint main(int argc, char *argv[])
{
  // 請在此輸入您的代碼
  int count[26]={0},max=0,i;
  char ch;
  while((ch=getchar())!='\n')
    count[ch-'a']++;
  for(i=1;i<26;i++)
    if(count[i]>count[max])
      max=i;
  printf("%c\n%d",max+'a',count[max]);
  return 0;
}

這個寫的很清晰很簡單,但是它不如第一個簡約:

1.先while循環(huán) 進(jìn)行字母出現(xiàn)次數(shù) 計數(shù)

2.進(jìn)行for循環(huán)遍歷,看看哪個出現(xiàn)的字母個數(shù)最多

這里需要注意的點是: i=1,它沒有從0開始

? 因為第一次進(jìn)入后count[1]先和count[max]比較,此時的max=0,很細(xì)節(jié)的優(yōu)化

3.輸出

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧


網(wǎng)頁名稱:C語言藍(lán)橋杯真題:單詞分析-創(chuàng)新互聯(lián)
網(wǎng)站鏈接:http://weahome.cn/article/dhjdei.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部