全形、英文、符號判斷
C++:
-
#include <iostream .h> // 引入標準輸入/輸出函數標題檔
-
#include <string .h> // 引入字串函數標題檔
-
#include <ctype .h> // 引入字元測試與轉換函數標題檔
-
-
int main()
-
{
-
int print = 0, digit = 0, lower = 0, upper = 0;
-
int punct = 0, space = 0, control = 0, chinese = 0;
-
char string[] = "Developer Studio 是一個整合式的開發環境"
-
"(Integrated Development Environment;IDE),"
-
"它提供 Visual Basic、Visual C++、與其他程式的開發環境。";
-
int len = strlen(string); // 取得字串長度
-
for (int i = 0; i <= len; i++) // 字元檢查迴圈
-
{
-
if (isprint(string[i]) != 0) // 若為可列印字元
-
{
-
print++;
-
if (isdigit(string[i]) != 0) // 為數字字元
-
digit++;
-
else if (islower(string[i]) != 0) // 為小寫字元
-
lower++;
-
else if (isupper(string[i]) != 0) // 為大寫字元
-
upper++;
-
else if (ispunct(string[i]) != 0) // 為符號字元
-
punct++;
-
else // 否則為空白字元
-
space++;
-
}
-
else if (iscntrl(string[i]) != 0) // 若為控制符號字元
-
{
-
control++;
-
}
-
else // 否則為全形文字(中文)字元
-
{
-
chinese++;
-
i++; // 全形字為2bytes,要多移一個字元
-
}
-
}
-
cout <<"英數符號字數:" <<print; // 顯示訊息字串
-
cout <<"n 大寫字數:" <<upper; // 顯示訊息字串
-
cout <<"n 小寫字數:" <<lower; // 顯示訊息字串
-
cout <<"n 數字字數:" <<digit; // 顯示訊息字串
-
cout <<"n 空白字數:" <<space; // 顯示訊息字串
-
cout <<"n 符號字數:" <<punct; // 顯示訊息字串
-
cout <<"n控制符號字數:" <<control; // 顯示訊息字串
-
cout <<"n全形文字字數:" <<chinese; // 顯示訊息字串
-
cout <<endl <<endl;
-
return 0;
-
}