1樓:1024程式設計師
c語言經典例子之統計英文、字母、空格及數字個數
2樓:匿名使用者
printf("輸入一行字元:");
char str[100];//首先你是要輸入一行字元,char str 定義的是一個字元,你要使用陣列
int i=0,a=0,b=0,c=0,d=0;
gets(str);
while(i!=strlen(str))//這裡迴圈條件要改下如果陣列內容遍歷完了就退出迴圈
printf("字母有%d個,空格有%d個,數字有%d個,其他字元有%d個\n",a,b,c,d);
新手c語言小白求教
3樓:
第一個問題,你的**在ch=getch()之前就給password[i]賦值,就會造成你輸入6個字元後
實際長度為7,這實際上已經陣列越界了,再加上最後的結束符,越界2個位元組。
所以,把先把password[i]=ch; 這句移到這裡if(ch!='\r'&&ch!='\b')第二個問題,如果你要輸入6位字元,那麼字元陣列應該定義為char password[7];
char passwordsure[7];
因為要多1個位元組儲存結束符'\0',否則輸滿6個字元的情況下,再password[i]='\0';
這會觸發陣列越界的錯誤,就算你的編譯器沒有觸發這個錯誤,這也是不對的。
4樓:
ch定義後,在while迴圈中,未輸入值就引用,是錯誤的。
c語言題目輸入一行字元,分別統計出其中英文字母,空格,數字和其他字元的個數。
5樓:非常可愛
錯誤**:
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;}
6樓:匿名使用者
錯誤**:
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;}
7樓:匿名使用者
一、問題分析:
輸入一行字母,那麼會以換行結束。所以可以存入陣列,也可以逐個輸入,遇到換行結束。
要統計各個類的個數,就要逐個判斷是哪個分類的。
由於在ascii碼中,數字,大寫字母,小寫字母分別連續,所以可以根據邊界值判斷型別。
二、演算法設計:
1、讀入字元,直到遇到換行結束。
2、對於每個字元,判斷是字母還是數字,或者空格,或者是其它字元。
3、對於每個字元判斷後,對應類別計數器自加。
4、最終輸出結果。
三、參考**:
#include
int main()
printf("%d %d %d %d\n", a,b,c,d);//輸出結果。
return 0;}
8樓:gta小雞
開始↓gets()讀一行字元存到char *s中strlen()函式求字串s長度
陣列cal[4]用來累計字母、空格、數字、特殊字元的個數for(i=0;i
輸出cal陣列各元素的值結束
9樓:匿名使用者
即學了程式設計又學了英語(沒學好……),豈不美哉?
(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;}
10樓:匿名使用者
#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;}
11樓:匿名使用者
clear
accept "請輸入一串字元:" to xstore 0 to dyw,xyw,kg,sz,qtm=len(x)
for i=1 to m
x1=substr(x,i,1)
k=asc(x1)
do case
case k=32
kg=kg+1
case k>=48 and k<=57
sz=sz+1
case k>=65 and k<=90
dyw=dyw+1
case k>=97 and k<=122xyw=xyw+1
other
qt=qt+1
endcase
endfor
?"其中空格有: "+alltrim(str(kg))+"個"
?"大寫字母有: "+alltrim(str(dyw))+"個"
?"小寫字母有: "+alltrim(str(xyw))+"個"
?"數字有: "+alltrim(str(sz))+"個"
?"其它字元有: "+alltrim(str(qt))+"個"
12樓:匿名使用者
#include
int main(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);
return 0;}
13樓:程式設計師的每一天
c語言經典例子之統計英文、字母、空格及數字個數
14樓:瞌睡貓然
1 while語句:
#include
int main(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);
return 0;
}2 ,do while語句:
#include
int main(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);
return 0;}
15樓:聽不清啊
#include
int main()
16樓:我的小名叫仙女
|#include
#define n 100
int main()
printf("英文字母:%d\n",m);
printf("數字字元:%d\n",n);
printf("空格:%d\n",b);
printf("其他字元:%d\n",c);
return 0;}
17樓:
#include
#include
int main()
int qt=strlen(c)-zm-sz-kg;
printf("字母為%d 空格為%d 數字為%d 其它為%d\n",zm,kg,sz,qt);
return 0;
}望採納,不懂可追問.
18樓:匿名使用者
輸入一行字元=input("請輸入任意資料:")
數字個數=len(list(i for i in 輸入一行字元 if i.isdigit()==1))
中英文字母個數=len(list((i for i in 輸入一行字元 if i.isalpha()==1)))
空格個數=len(list(i for i in 輸入一行字元 if i==" "))
其他個數=len(輸入一行字元)-數字個數-中英文字母個數-空格個數
print("中有個數字,箇中英文字母,個空格個數,個其他".format(輸入一行字元,數字個數,中英文字母個數,空格個數,其他個數))
19樓:匿名使用者
#include
#include
#define a 80
main()
printf("英文字元有:
%d\n",letter);
printf("數字字元有:%d\n",digit);
printf("空格有:%d\n",space);
printf("其他字元有:%d\n",others);}
20樓:匿名使用者
非要限制輸入的大小麼?過會兒給你發個
#include
#include
void main()
printf("lowercase:%d\t uppercase:%d\t digit:
%d\t space:%d\t others:%d\n",lowercase,uppercase,digit,space,others);}
c語言 輸入一行字元,分別統計出其中英文字母 空格 數字和其他字元的個數
可以用組合鍵的方式,比如ctrl c或者ctrl d。c語言經典例子之統計英文 字母 空格及數字個數 c語言程式設計 輸入一行字元,分別統計出其中英文字母,空格,數字和其他字元的個數,用while語句 謝謝 include int main printf 剛才輸入的字元中英文字元個數為 d n ch...
c語言,求大神編寫輸入字串,長度小於50,統計其中相鄰字元對出現的次數,然後輸出
從字bai符串第一個字元開始,把字元轉du成ascii碼,逐一向後zhi做減法,等於 dao1或者 1的時候就記一次相鄰 回int funcsub char szstr szstr return ret 主函式你自己寫吧 就是相鄰,之間沒有空格就是相鄰字元對?兩個for迴圈,搞定 c語言 對於給定的...
c語言如何使一行字串,按空格分開形成多個字串,然後再記錄每個已分開字串,比出長度最長的輸出
這個題是,一到測試題,條件太多了,答案比較籠統,但是對了 include include int main void chars 0 else chars printf d len j 1 for i k i printf c str i printf n return 0 include incl...