1樓:莫道無情
c語言程式如下:
#include
int main()
;//用於儲存字元的個數
gets(a);//輸入字元
//開始比較
for (int x = 0; x < 24; x++) }if (s[x]>=1)//只輸出輸入中有的字母 的個數}
getchar();
return 0;}
2樓:wsp竹木
#include
void main()
; //陣列s用來統計每個小寫字母的個數printf("please input a string:\n");
scanf("%c",&ch);
while(ch!='\n') //輸入一行字元,以回車鍵結束
printf("\n");
for(i=0;i<26;i++)
if(s[i]) //只輸出輸入過的字母統計printf("%c:%d\n",(char)(i+'a'),s[i]);
//(char)(i+'a')用強制型別轉換,輸出對應字母}
c語言程式設計:輸入一串英文字母,統計每個字母(不區分大小寫)出現的次數
3樓:匿名使用者
#include
#include
using namespace std;
int main()
else
break;
}cout<<"字串的數量為:"
4樓:wsp竹木
#include
void main()
; //陣列s用來統計每個小寫字母的個數printf("please input a string:\n");
scanf("%c",&ch);
while(ch!='\n') //輸入一行字元,以回車鍵結束
printf("\n");
for(i=0;i<26;i++)
if(s[i]) //只輸出輸入過的字母統計printf("%c:%d\n",(char)(i+'a'),s[i]);
//(char)(i+'a')用強制型別轉換,輸出對應字母}
求助:用c語言程式設計 統計輸入的一個字串中每個字母出現的次數
5樓:匿名使用者
答案在北郵出版社郭浩志版c語言程式設計第131頁的例7.23,程式太長了手機打不完啊!主要是根據str[i]-'a'和str[i]-'a'+26統記個數,將其按順序存入陣列c中計數。
6樓:匿名使用者
#include "stdio.h"
#include "stdlib.h"
#include "string.h"
main()
dc++;}
else
i++;
}for(i=0;i<26;i++)
if(zm[i]>0)
printf("\n%c出現了%d次\t",i+'a',zm[i]);
printf("\n共有單詞%d個\n",dc);
system("pause");}
c語言,輸入一串字元,統計其中每個字母出現的次數,求糾正,急
7樓:匿名使用者
1、你的scanf中的輸入的是字串不能用%d的,要用%s 來代替2、在for迴圈中i變數使用之前需要宣告
3、if語句不能這樣寫 要分開來寫的'a' <= s[i] && 'z' >= s[i] 和 'a'<=s[i] && 'z'>=s[i]
4、最後一個for語句應該是i<26,加上=號 陣列會溢位5、最後的printf中的語句應該是printf("%c:%d\n", i+'a', letters[i]); "a"是字串,'a'才是字元,這樣就能正確統計字元個數了,希望對你有幫助
8樓:匿名使用者
輸入錯了,兩個比較錯了:
//輸入可以用 scanf("%s",s);
//或者gets(s);
if(s[i]>='a' && s[i]<='z')...else if (s[i]>='a' && s[i]<= 'z')
...//不能像數學一樣直接連寫的
//輸出是對的
//下次有問題如果可以請直接貼**,方便幫你除錯檢查
9樓:滑卓然春寒
count[26]=代表26個字母出現的次數,while((c=getchar())!='?')
while裡面的是判斷迴圈是否結束的語句
if語句則判斷讀入的c是否是字母,如果是,則count[c-'a']++;count【c-'a'】就是該字母
比如讀入a
a-a就是0
count[0]就代表a字母出現的次數
其餘同理
編寫一個c語言程式:從鍵盤讀入一行文字,統計每個英文字母出現的次數。
10樓:
#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;}
11樓:貢越納喇易文
對於每個英文字母分別判斷個數,並累計,最終輸出即可。
一、演算法:
1、迴圈讀取字元,直到換行為止。對於每個字元,執行以下流程。
2、判斷是否為英文字母,即小寫和大寫兩種。
3、如果是英文字母,則統計個數。
輸入部分,可以存為陣列,也可以每輸入一個字元計算一次。
二、參考**:
#include
int main()
;while((c=getchar())!='\n')//讀取每個字元,直到遇到換行為止。
for(c=0;c<26;c++)//輸出大寫字母統計結果。
if(**t[c]!=0) printf("%c:%d\n", c+'a', **t[c]);
for(c=26;c<52;c++)//輸出大寫字母統計結果。
if(**t[c]!=0) printf("%c:%d\n", c-26+'a', **t[c]);
return 0;}
c語言輸入一行字串,統計每個字母出現的次數? 比如 a 1次b 0次c 10次
include include int main 輸入一行字串,統計每個字母出現的次數?比如 a 1次 b 0次 c 10次 include void main for i 0 i 26 i if a i printf c d次 i a a i printf n for i 0 i 26 i if ...
C語言輸入字串,統計各字母出現的次數,輸出出現了4次的所有字母。英文字母區分大小寫
include include include void init int cascii 52 2 初始化陣列 int main 97 122對應大寫字母a z asc 97 for i 52 i char c 26 i gets st s st while s for i 0 i 26 i if ...
輸入一串字元,直到輸入星號為止,統計(輸出)其中的
樓上的沒有判斷輸入的字串中有否含有其他的字元,如果有的話你的程式就出錯了。如下 scanner in new scanner system.in int ilettercount 0 字母計數 int inumcount 0 數字計數 int isigncount 0 其他符號計數 string s...