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

2021-05-20 03:13:29 字數 6978 閱讀 6366

1樓:匿名使用者

可以用組合鍵的方式,比如ctrl+c或者ctrl+d。

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

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

c語言程式設計:輸入一行字元,分別統計出其中英文字母,空格,數字和其他字元的個數,用while語句~~謝謝

3樓:匿名使用者

#include

int main()

printf("剛才輸入的字元中英文字元個數為 %d\n", ch);

printf("剛才輸入的字元中空格個數為 %d\n", space);

printf("剛才輸入的字元中數字個數為 %d\n", num);

printf("剛才輸入的字元中其他個數為 %d\n", n);

return 0;}

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

4樓:凌亂心扉

#include

int main()

printf("字母有%d個,數字有%d個,空格有%d個,其他有%d個",letters,digits,spaces,others);

return 0;

}while語句若一直滿足條件,則會不斷的重複下去。但有時,需要停止迴圈,則可以用下面的三種方式:

一、在while語句中設定條件語句,條件不滿足,則迴圈自動停止。

如:只輸出3的倍數的迴圈;可以設定範圍為:0到20。

二、在迴圈結構中加入流程控制語句,可以使使用者退出迴圈。

1、break流程控制:強制中斷該執行區內的語句,跳出該執行區,繼續執行區域外的語句。

2、continue流程控制:也是中斷迴圈內的執行操作,並且從頭開始執行。

三、利用標識來控制while語句的結束時間。

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

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

6樓:函念之公承

/*輸入一行文字,找出其中大寫字母,小寫字母,空格,數字,及其他字元各有多少個.

*/#include

intmain()p=

&s[0];

while

(*p!=

'\n')

else

if(('a'

<=*p)&&

(*p<=

'z'))

else

if(''==

*p)else

if((*p

<='9')

&&(*p

>='0'))

else

p++;

}std::cout<<"upper

case:

"<結果:

input

string:

today

is2000/1/1

upper

case:

1lower

case:

6space:

2digit:

6other:

2press

anykey

tocontinue*/

7樓:其鴻熊璞

1while語句:

#include

intmain(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);

return0;}

2,do

while語句:

#include

intmain(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);

return0;}

8樓:荊芳菲力蒼

程式如下所示,僅供參考

:#include

void

hlw(char

*s)printf("\n\n輸入的字串中\n\n字母個數為:%d\n數字個數為:%d\n空格個數為:

%d\n其他的字元個數為:%d\n\n",zimu,shuzi,kongge,qita);

}void

main()

希望對你有幫助,呵呵!

9樓:拓跋秀榮鞏寅

((ch=getchar())!='\n')的作用首先將getchar()賦值給ch,然後將ch的值作為括號內賦值表示式的結果參與!=運算.這個表示式在一行內實現了賦值和判斷.

其意義就是判斷getchar取得的字元是否為回車,並把getchar()賦值給ch.

getchar只能接受單個字元

想接受一行字元可以使用getline().getline會在輸入流中讀取連續的字元直到遇到回車符,如果讀入流為空則返回0.

10樓:釁行令家美

其它都沒有問題,第7行最後多了個分號

1while((c=getchar())!='\n');

應該為1

while((c=getchar())!='\n')

11樓:萬理鳳歆美

用字元讀,然後一個個判斷,

你可以一樣寫,比如先統計字母,

然後再加入統計空格,

一個測試正確了再加入其他功能,這樣最後就全了

12樓:我是老才不壞

有這樣的軟體啊!這個軟體據說是電腦上都配備的有。不能,不但能檢測出一段文稿的字數。還能檢測出裡面有多少錯別字,有多少字母,有多少數字。那功能是相當強的,非常實用。

13樓:匿名使用者

這個用c語言還是用c加加寫出來

14樓:示辰檢任真

#include

"stdio.h"

void

main()

printf("%d,%d,%d,%d",yw,kg,sz,qt);}

15樓:代任岑安安

||#include

"stdio.h"

#include

void

main()

printf("%d,%d,%d,%d",yw,kg,sz,qt);}

16樓:丘燦墨梓榆

|可能是優先順序的問題,你在判斷的時候加上括號,還有最後一個不需要條件。

if(i[j]='

')kg++;

else

if((i[j]>='a'&&i[j]<='z')||(i[j]>='a'&&i[j]<='z'))

yw++;

else

if(i[j]>='0'&&i[j]<='9')sz++;

else

qt++;

17樓:墨霖祈從蕾

c++**如下:

有問題還請追問.

#include

using

namespace

std;

intmain()

cout<<"英文字

母:"<<**t_e<

<<"數字:"<<**t_n<

<<"其他:"<<**t_other<

return0;}附圖:

18樓:興義焦亦綠

c語言如下

:struct

result

;void

check(char*

str,struct

result&

ret)

cout

'\0')}

19樓:種令芮德曜

vb可以不?vb的**我有

20樓:隨澤申彤雲

幾個小錯誤,我都標記出來了,另外我的編譯器是預設intmain()如果你的不是,請繼續用voidmain()這個程式已在devc++下編譯通過,並且結果正確。

程式如下,改過的地方用粗體標出了:

#include

#include

void

main()

printf("%d,%d,%d,%d",yw,kg,sz,qt);}

21樓:昝揚第五天驕

主要是沒賦初值

和==才是等於

=是賦值

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

22樓:非常可愛

錯誤**:

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;}

23樓:匿名使用者

錯誤**:

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;}

24樓:匿名使用者

一、問題分析:

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

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

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

二、演算法設計:

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

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

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

4、最終輸出結果。

三、參考**:

#include

int main()

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

return 0;}

25樓:gta小雞

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

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

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

26樓:匿名使用者

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

(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;}

27樓:匿名使用者

#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;}

凶求教c語言輸入一行字元分別統計出其中字母

c語言經典例子之統計英文 字母 空格及數字個數 printf 輸入一行字元 char str 100 首先你是要輸入一行字元,char str 定義的是一個字元,你要使用陣列 int i 0,a 0,b 0,c 0,d 0 gets str while i strlen str 這裡迴圈條件要改下如...

輸入一行字串,統計每個字母出現的次數? 比如 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 b i printf c d次 i a b i printf n c語言 輸入一行字串,統計每個字母出現的次數?比如 a 1次...

c語言問題 一行語句中不同單詞個數統計

如果只要思路的話,可以 用切割函式strtok 對這一段話進行切割,得到的單詞儲存在一個二維char陣列裡面,並計算出所有單詞的個數num,然後將第一個單詞和後面num 1個單詞比較,有重複的,將num 1,最後可以得到單詞個數。太複雜了,沒心情寫!一個strng陣列用來儲存已經擷取的單詞 使用fo...