7.(編程)統計一段任意字符串中各字符種類的數量


題目:求一段任意字符串中各字符種類的數量(指定為ASas,./,[;];[]da cpwjok54511kv ;[]vkvkkkkk)

解題思路:首先要明白,各字符種類在ASCII中分布的區間,例如:數字0~9是48~57,a~z是97~122等。其次,字符是以整數形式(字符ASCII碼十進制)在內存單元中存儲的,可以通過整數來和字符相互轉化。

還要了解getchar()和putchar()的用法!

 

注意事項:1.要注意while循環控制條件中 (c=getchar())最外層括號不可省略,具體可參考C語言運算符優先級參考表。

              2.if選擇結構中也可不采用ASC||碼,可直接用對應字符作為判斷條件

 1 //代碼:
 2 #include<stdio.h>
 3 int main()
 4 {
 5     int letter=0,number=0,nul=0,other=0;
 6     int c;
 7     while((c=getchar())!='\n')
 8     {
 9         if(65<=c&&c<=90||c>=97&&c<=122)    //字母在ASCII表中在的區間
10         {
11             letter++;
12         }
13         else if(48<=c&&c<=57)                //數字在ASCII表中所在的區間
14         {
15             number++;
16         }
17         else if(c==32)                       //空格在ASCII是32
18         {
19             nul++;
20         }
21         Else                              //其他
22             other++;
23     }
24     printf("%d %d %d %d\n",letter,number,nul,other);
25     return 0;
26 }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM