亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

C 語言字符串練習

在 C 語言中字符串的應用比較多,所以在這里我們實現一個函數,函數功能是將一串給定的字符串中的大寫字符全部轉換為小寫字符。

1. 示例程序

在程序中,我們需要實現兩個主要的功能,一個是將字符串中的每個字符都訪問一次。另外一個就是將遍歷過程中獲取的大寫字符轉換為小寫字符。

#include <stdio.h>
#include <string.h>
#include <ctype.h>

int main()
{
    char a[100] = "Welcome to our WIKI! It is a interest place.", temp;

    printf("Before convert: %s\n", a);

    for (int i = 0; i < strlen(a); i++)
    {
        temp = tolower(a[i]);
        a[i] = temp;
    }

    printf("After convert: %s\n", a);

    return 0;
}

運行結果:

Before convert: Welcome to our WIKI! It is a interest place.
After convert: welcome to our wiki! it is a interest place.

程序首先通過一個循環語句,遍歷訪問字符串的每一個元素。在這里,我們用了 C 語言標準庫中的字符串函數 strlen 來獲取字符串的長度。不過這里請注意的是,這里獲取的長度不是字符數組的長度,而是里面包含的字符的長度。這樣就不用循環 100 次,因為里面存儲的字符內容很顯然不到 100 個,同時,這個字符數組中在字符后面會緊接著一個字符串的空串符號,也就是 \0 這個字符。但是這個字符不會出現在我們的循環中,因為通過 strlen 這個函數獲取的字符串的長度中是不包含這個符號的。

在循環語句的內部,我們只要簡單的執行將每個元素執行一次大寫轉換為小寫的函數操作就可以了。這個函數是 ctype.h 函數庫中的函數,只會將大寫字母轉換為小寫字母,不會變換小寫字母以及符號。

這里我們需要利用一個臨時的字符變量來存儲變化后的變量,然后再賦值給當前的字符數組。

2. 小結

在這里我們展示了一個簡單的字符串的練習。在 C 語言中對于字符串的處理除了之前介紹的可以使用字符串函數以外,更過的時候是利用其字符數組的特性,可以精確的通過索引訪問到每一個字符元素,然后再對其進行處理。

3. 參考文獻