C語言題目,從鍵盤輸入一行文字,統計其中每個英文字母出現的頻率

2021-04-03 06:06:37 字數 6300 閱讀 5357

1樓:用著追她

1、新建來一個工程和.c檔案 ,輸入頭原始檔和主函式。

2、定義 變數型別,輸入數字。

3、用while語句判斷數字是否在1到4範圍內。

4、呼叫函式。

5、用一個for語句輸出。

6、編譯、執行 ,得到最後的結果。

2樓:匿名使用者

#include

int main(void)

; //存放26個字母的出現頻率

while ((a = getchar()) != '\n') //輸入字元直到遇到回車為止,while迴圈為核心演算法

//第一個元素b[1]存'b'的出現頻率,以此類推}}for (i=0;i<26;++i)

else

}printf("\n");}

3樓:匿名使用者

#include

void main()

c=getchar();

}for(int i=0;i<27;i++)}

編寫一個c語言程式:從鍵盤讀入一行文字,統計每個英文字母出現的次數

4樓:匿名使用者

對於每個英文字母分別判斷個數,並累計,最終輸出即可。

一、演算法:

1、迴圈讀取字元,直到換行為止。對於每個字元,執行以下流程。

2、判斷是否為英文字母,即小寫和大寫兩種。

3、如果是英文字母,則統計個數。

輸入部分,可以存為陣列,也可以每輸入一個字元計算一次。

二、參考**:

#include

int main()

;while((c=getchar())!='\n')//讀取每個字元,直到遇到換行為止。

for(c=0;c<26;c++)//輸出大寫字母統計結果。

if(cnt[c]!=0) printf("%c:%d\n", c+'a', cnt[c]);

for(c=26;c<52;c++)//輸出大寫字母統計結果。

if(cnt[c]!=0) printf("%c:%d\n", c-26+'a', cnt[c]);

return 0;}

5樓:

#include

#include

#define max 100int main()

; // count 陣列用來儲存各個字母出現的次數

scanf("%s", str);

while(str[i] != '\0')if (str[i] >= 'a' && str[i] <= 'z')

i++;

}for (i = 0; i < 26; i++)for (i = 26; i < 52; i++)return 0;}

6樓:匿名使用者

#include

int main(void)

;while ((a = getchar()) != '\n')}}

for (i=0;i<26;++i)

else

}printf("\n");}

c語言 從鍵盤輸入一行字元,分別統計其中數字字元,字母字元和其他字元的個數

7樓:四舍**入

可以參考下面的**:

#include

intmain()

printf("%d%d%d\n",a,b,c);//輸出結果。

return0;}

8樓:匿名使用者

一、問題分析:

輸入一行字母,那麼會以換行結束。所以可以存入陣列,也可以逐個輸入,遇到換行結束。

要統計各個類的個數,就要逐個判斷是哪個分類的。

由於在ascii碼中,數字,大寫字母,小寫字母分別連續,所以可以根據邊界值判斷型別。

二、演算法設計:

1、讀入字元,直到遇到換行結束。

2、對於每個字元,判斷是字母還是數字,或者是其它字元。

3、對於每個字元判斷後,對應類別計數器自加。

4、最終輸出結果。

三、參考**:

#include

int main()

printf("%d %d %d\n", a,b,c);//輸出結果。

return 0;}

9樓:徐力

#include

int main()

;int i;

int c,number,others;

c=number=others=0;

gets(str);

for(i=0;str[i]!='\0';i++)printf("字元個數

:%d,數字個數:%d,其他字元個數:%d\n",c,number,others);

return 0;}

c語言題目輸入一行字元,分別統計出其中英文字母,空格,數字和其他字元的個數。

10樓:非常可愛

錯誤**:

if('a'<=nextchar<='z'||'a'<=nextchar<='z')

else if('0'<=nextchar<='9')修改後:

#include

int main()

}擴充套件資料

c++輸入一行字元,分別統計出其中英文字母、空格、數字和其他字元的個數。

#include

int main()

printf("%d %d %d %d\n",a,b,c,d);

return 0;}

11樓:匿名使用者

錯誤**:

1.'a'<=nextchar<='z'||'a'<=nextchar<='z';

2.'0'<=nextchar<='9'。

錯誤原因:當多個條件時,需要使用邏輯運算子。

修改後**為:

int main(void)

else if (c == ' ')

else if (c >= '0'&&c <= '9')else

}printf("字母=%d,數字=%d,空格=%d,其他

return 0;}

12樓:匿名使用者

一、問題分析:

輸入一行字母,那麼會以換行結束。所以可以存入陣列,也可以逐個輸入,遇到換行結束。

要統計各個類的個數,就要逐個判斷是哪個分類的。

由於在ascii碼中,數字,大寫字母,小寫字母分別連續,所以可以根據邊界值判斷型別。

二、演算法設計:

1、讀入字元,直到遇到換行結束。

2、對於每個字元,判斷是字母還是數字,或者空格,或者是其它字元。

3、對於每個字元判斷後,對應類別計數器自加。

4、最終輸出結果。

三、參考**:

#include

int main()

printf("%d %d %d %d\n", a,b,c,d);//輸出結果。

return 0;}

13樓:gta小雞

開始↓gets()讀一行字元存到char *s中strlen()函式求字串s長度

陣列cal[4]用來累計字母、空格、數字、特殊字元的個數for(i=0;i

輸出cal陣列各元素的值結束

14樓:匿名使用者

即學了程式設計又學了英語(沒學好……),豈不美哉?

(printf()函式能用那種方式是因版本的關係)

本程式的優點:不受到字串長度的限制,執行效率高

#include

int main (void)

++resnum;                    //attention! because of the newline (ascii: 10)!

//data output

printf ("\nthe results of data processing are as fellows.\n");

printf ("the number of letters:%8d\n"

"the number of space: %8d\n"

"the number of digits: %8d\n"

"the number of others:%8d\n",

letnum, spanum, dignum, resnum);

//the end

printf ("\nthank you for your using!");

return 0;}

15樓:匿名使用者

#include

int main()

if(e>='0' && e<='9')// 數字是'0'到'9'的字元,不是ascii值0到9

if((e>=65&&e<=90)||(e>=97&&e<=122))//用c來接受字母的個數

else //用d來接受其他字元的個數

}printf("共輸入空格%d個\n",a);

printf("共輸入數字%d個\n",b);

printf("共輸入字母%d個\n",c);

printf("共輸入其他字元%d個\n",d);

return 0;}

16樓:匿名使用者

clear

accept "請輸入一串字元:" to xstore 0 to dyw,xyw,kg,sz,qtm=len(x)

for i=1 to m

x1=substr(x,i,1)

k=asc(x1)

do case

case k=32

kg=kg+1

case k>=48 and k<=57

sz=sz+1

case k>=65 and k<=90

dyw=dyw+1

case k>=97 and k<=122xyw=xyw+1

other

qt=qt+1

endcase

endfor

?"其中空格有: "+alltrim(str(kg))+"個"

?"大寫字母有: "+alltrim(str(dyw))+"個"

?"小寫字母有: "+alltrim(str(xyw))+"個"

?"數字有: "+alltrim(str(sz))+"個"

?"其它字元有: "+alltrim(str(qt))+"個"

17樓:匿名使用者

#include

int main(void)

else if(ch==' ')

else if(ch>='0'&&ch<='9')else

}printf("字母= %d,空格= %d,數字= %d,其它= %d\n",char_num,kongge_num,int_num,other_num);

return 0;}

18樓:程式設計師的每一天

c語言經典例子之統計英文、字母、空格及數字個數

19樓:瞌睡貓然

1 while語句:

#include

int main(void)

else if(ch==' ')

else if(ch>='0'&&ch<='9')else

}printf("字母= %d,空格= %d,數字= %d,其它= %d\n",char_num,kongge_num,int_num,other_num);

return 0;

}2 ,do while語句:

#include

int main(void)

else if(ch==' ')

else if(ch>='0'&&ch<='9')else

} while((ch=getchar())!='\n')//回車鍵結束輸入,並且回車符不計入

printf("字母= %d,空格= %d,數字= %d,其它= %d\n",char_num,kongge_num,int_num,other_num);

return 0;}

c語言由鍵盤輸入正整數,C語言!!!!!!!!!!!由鍵盤輸入一個正整數,判斷該數是否為平方數,是輸出Y,否則輸出N

思路 將該數開平方得到一個數 看是不是整數,如果是說明是平方數,否則內不是 如下 include include int main else return 0 希望可以幫到你,如有疑問歡迎追問 樓主來你好。很簡單 自 include include int main printf c n pow i...

統計一行文字的單詞個數 輸入一行字元,統計其中單詞的個數 個

部分 include int main else if temp a temp z temp a temp z temp 0 temp 9 temp getchar printf count d n count return 0 效果圖 酷 酷 幣 為您服務.樓主請看這裡這裡 決對好用的程式 inc...

求教C語言 求S 1 2 3n ,n從鍵盤輸入

用遞迴比較容易出錯,你把這些程式都自己除錯一下,選擇一個你能理解和能夠專 執行正確的吧屬!include stdio.h main float f n include void main printf e n sum float f int n 用遞迴比較容易出來錯自 你把這些程式都自己除錯一下,選...