在此示例中,對(duì)用戶輸入的字符串中的元音,輔音,數(shù)字和空格進(jìn)行計(jì)數(shù)。
要理解此示例,您應(yīng)該了解以下C語(yǔ)言編程主題:
#include <stdio.h> int main() { char line[150]; int vowels, consonant, digit, space; vowels = consonant = digit = space = 0; printf("輸入一行字符串: "); fgets(line, sizeof(line), stdin); for (int i = 0; line[i] != '\0'; ++i) { if (line[i] == 'a' || line[i] == 'e' || line[i] == 'i' || line[i] == 'o' || line[i] == 'u' || line[i] == 'A' || line[i] == 'E' || line[i] == 'I' || line[i] == 'O' || line[i] == 'U') { ++vowels; } else if ((line[i] >= 'a' && line[i] <= 'z') || (line[i] >= 'A' && line[i] <= 'Z')) { ++consonant; } else if (line[i] >= '0' && line[i] <= '9') { ++digit; } else if (line[i] == ' ') { ++space; } } printf("元音: %d", vowels); printf("\n輔音: %d", consonant); printf("\n數(shù)字: %d", digit); printf("\n空格: %d", space); return 0; }
輸出結(jié)果
輸入一行字符串: adfslkj34 34lkj343 34lk 元音: 1 輔音: 11 數(shù)字: 9 空格: 2
在此,用戶輸入的字符串存儲(chǔ)在line變量中。
最初,變量vowel,consonant,digit,和space的值被初始化為0。
然后,使用for循環(huán)來迭代字符串的字符。在每次迭代中,都會(huì)檢查字符是否為元音,輔音,數(shù)字和空格。假設(shè)字符是元音,在這種情況下,vowel變量增加1。
當(dāng)循環(huán)結(jié)束時(shí),元音,輔音,數(shù)字和空格的數(shù)量分別被存儲(chǔ)在變量vowel,consonant, digit和space。