統計字串中字母、數字、空格個數
阿新 • • 發佈:2019-01-29
題目要求:
編寫一函式,由實參傳來一個字串,
統計此字串中字母、數字、空格和其它字元的個數,在主函式中輸入字串以及輸出上述統計結果。
思路:
定義變數如下:
i迴圈變數,j字母個數,k數字個數,l空格個數,m其他字元
通過判斷ASCII碼值來統計並計數。
原始碼如下:
/* 5、編寫一函式,由實參傳來一個字串, 統計此字串中字母、數字、空格和其它字元的個數, 在主函式中輸入字串以及輸出上述統計結果。 */ #include<stdio.h> static int i=0,j=0,k=0,m=0,l=0;//i迴圈變數,j字母個數,k數字個數,l空格個數,m其他字元 void Count5(char *p) { //p[i]就是主函式的s[i] //p[0]==*p==a[0] p[2]==*(p+2)==*(s+2)==s[2] while(p[i]) { if((p[i]>='a'&&p[i]<='z')||(p[i]>='A'&&p[i]<='Z'))//字母 { j++; } else if(p[i]>='0'&&p[i]<='9')//數字 { k++; } else if(p[i]==32||p[i]==9)//空格 { l++; } else //其他字元 { m++; } i++; } } int main() { char s[100]; printf("請鍵盤輸入一個字串:\n"); gets(s); Count5(s); printf("該字串中有:\n"); printf("字母:%d個,數字%d個,空格%d個,其他字元%d個\n",j,k,l,m); return 0; }
程式截圖: