#includelt;stdio.hgt;
成都創新互聯專注于企業營銷型網站、網站重做改版、中原網站定制設計、自適應品牌網站建設、HTML5建站、商城建設、集團公司官網建設、外貿網站制作、高端網站制作、響應式網頁設計等建站業務,價格優惠性價比高,為中原等各大城市提供網站開發制作服務。
void TongJi(char s[])
{
int ZiMu=0,KongGe=0,ShuZi=0,QiTa=0,i;
for(i=0;slt;igt;!='\0';i++)
{
if(slt;igt;==32)KongGe++;
else if((slt;igt;gt;=48)(slt;igt;lt;=57))ShuZi++;
else if(((slt;igt;gt;=97)(slt;igt;lt;=122))||((slt;igt;gt;=65)(slt;igt;lt;=90)))ZiMu++;
else QiTa++;
}
printf("空格:%d;數字:%d;字母:%d;其他:%d。\n",KongGe,ShuZi,ZiMu,QiTa);
}
int main()
{
char s[100];
printf("請輸入:");
gets(s);
TongJi(s);
return 0;
}
擴展資料:
return用法
C++的關鍵字,它提供了終止函數執行的一種方式。當return語句提供了一個值時,這個值就成為函數的返回值.
說到return,有必要提及主函數的定義,下面是從網絡上找到的資料,好好消化吧,對了解主函數中返回值的理解有很大的幫助.
很多人甚至市面上的一些書籍,都使用了void main(),其實這是錯誤的。C/C++中從來沒有定義過void main()。
C++之父Bjarne Stroustrup在他的主頁上的FAQ中明確地寫著The definition void main(){/*...*/}is not and never has been C++,
nor has it even been C.(void main()從來就不存在于C++或者C)。下面我分別說一下C和C++標準中對main函數的定義。
1.C
在C89中,main()是可以接受的。Brian W.Kernighan和Dennis M.Ritchie的經典巨著The C programming Language 2e(《C程序設計語言第二版》)用的就是main()。不過在最新的C99標準中,只有以下兩種定義方式是正確的:
int main(void)
int main(int argc,char*argv[])
(參考資料:ISO/IEC 9899:1999(E)Programming languages—C 5.1.2.2.1 Program startup)
當然,我們也可以做一點小小的改動。例如:char*argv[]可以寫成char**argv;argv和argc可以改成別的變量名(如intval和charval),不過一定要符合變量的命名規則。
如果不需要從命令行中獲取參數,請用int main(void);否則請用int main(int argc,char*argv[])。
main函數的返回值類型必須是int,這樣返回值才能傳遞給程序的激活者(如操作系統)。
如果main函數的最后沒有寫return語句的話,C99規定編譯器要自動在生成的目標文件中(如exe文件)加入return 0;,表示程序正常退出。不過,我還是建議你最好在main函數的最后加上return語句,雖然沒有這個必要,但這是一個好的習慣。
注意,vc6不會在目標文件中加入return 0;,大概是因為vc6是98年的產品,所以才不支持這個特性。現在明白我為什么建議你最好加上return語句了吧!不過,gcc3.2(Linux下的C編譯器)會在生成的目標文件中加入return 0;。
#include?stdio.h
#include?string.h
int?conNumfromStr(char?*,int);
int?main()
{
char?str[21];
printf("輸入20以內的字符:");
scanf("%s",str);
printf("字符串中數字字符個數為:%d",conNumfromStr(str,strlen(str))?);
return?0;
}
int?conNumfromStr(char?*p,int?len)//計數字符串中數字字符的個數
{
int?i,con=0;
for(i=0;ilen;i++)
{
if(p[i]='0'??p[i]='9')
con++;
}
return?con;
}
EOF的ascall碼值為-1
你輸入的字符的ascall碼都在0到255之間,不可能出現-1
因此用EOF來作為文件結束標志~EOF的全稱也是End Of File
getchar()是一個函數,是輸入字符的函數,顧名思義,呵呵
getchar()則你輸入的都是字符,"w""q""1""+"“-"","這些都是字符就連空格也是字符哦~
而++nc就是在使用nc之前先使他的值+1,那么就得到了輸入一個字符,nc就+1的目的
程序功能就是計算你輸入的字符個數
例如輸入:I love C programme
就會輸出:18
char str[]="\tab\n\012\\\""
字符1: \t 轉義字符:水平制表符 ,其ASCII 值9(十進制)
字符2、3:ab
字符4:\n 轉義字符,換行符,其ASCII 值10(十進制)
字符5:\012 轉義字符,其中012是8進制數,其ASCII值 同\n.
字符6:\\ 轉義字符 反斜杠\,其ASCII值 92(十進制)
字符7:\" 轉義字符 雙引號",其ASCII值 34(十進制)
2.? printf("%d \n", strlen("IBM\n012\1\\"));
字符1、2、3: IBM
字符4:\n?轉義字符
字符5、6、7:012
字符8:\1 其ASCII值 1(8進制).
字符9:\\ 轉義字符 反斜杠\,其ASCII值 92(十進制)
3.?printf("%d \n",strlen("\t\"\065\xff\n"));
?字符1:?\t 轉義字符:水平制表符 ,其ASCII 值9(十進制)
字符2:\" 轉義字符 雙引號",其ASCII值 34(十進制)
字符3:\065 ,代表字符5,其中065為8進制 格式,其ASCII為53(十進制)
?字符4:\xff (這個我不知道怎么解釋,請其它老師幫助解釋)
?字符5:\n
4.?? printf("%d \n",strlen("stop\0\n\""));
?字符1、2、3、4:stop
?因為strlen()函數遇到\0 就結束了,后面的字符就不去判斷了。
?C語言中的字符串 是用\0作為 結束符。
希望我的解答 對你有所幫助,很高興和你一起討論和學習C語言。
while(*tt!='\0')
{
t=tt[i]-'a';
pp[t]++;
tt++;
i++;
}
你用這么幾行代碼就想 每個數字對應是是26個字母在輸入的字符串中的出現個數..
至少要用到switch 來判斷每一個字符 然后加到對應的數組里
switch(tt[i])
{
cast 'a' : pp[0]=pp[0]+1; break;
cast 'b' : pp[1]=pp[1]+1; break;
cast 'c' : pp[2]=pp[2]+1; break;
.......................
}
這樣才對
#includestdio.h
#includestring.h
main()
{
int?i,j=0,k;
char?a[1000];//長度自己根據實際情況調整
printf("請輸入一串字符串:\n");
gets(a);
k=strlen(a);
for(i=0;ik;i++)
if('0'=a[i]='9')
j++;
printf("這串字符串中數字字符有%d個!\n",j);
}
網頁題目:c語言中字符串計數函數 c語言常用字符串處理函數
文章出自:http://vcdvsql.cn/article28/hhpdcp.html
成都網站建設公司_創新互聯,為您提供外貿建站、網站排名、Google、自適應網站、網站制作、品牌網站制作
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯