真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

C語言編程遞歸方法與非遞歸方法實(shí)現(xiàn)將參數(shù)字符串中的字符反向排列-創(chuàng)新互聯(lián)

//題目要求要求:不能使用C函數(shù)庫中的字符串操作函數(shù)
(否則本題也沒什么意義了?。?/p>

成都創(chuàng)新互聯(lián),專注為中小企業(yè)提供官網(wǎng)建設(shè)、營(yíng)銷型網(wǎng)站制作、成都響應(yīng)式網(wǎng)站建設(shè)公司、展示型成都網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計(jì)等服務(wù),幫助中小企業(yè)通過網(wǎng)站體現(xiàn)價(jià)值、有效益。幫助企業(yè)快速建站、解決網(wǎng)站建設(shè)與網(wǎng)站營(yíng)銷推廣問題。

<1>非遞歸方法
此方法基本思想是設(shè)立兩個(gè)指針,分別指向字符串的頭尾
并且依次交換所指向的數(shù)據(jù),代碼中為left和right
源代碼:

#include
#include
#include//因?yàn)橐褂胹trlen()語句
void reverse_string(char str[])
{
    int temp;
    char *left = str;
    char *right = str + strlen(str) - 1;
   while (*left <* right)
    {
        temp = *left;
        *left = *right;
        *right = temp;
        *right--;
        *left++;
    }
}
int main()
{
    char str[] = "chooseyou";
    printf("%s\n", str);
    reverse_string(str);
    printf("%s", str);
    system("pause");
    return 0;
}

<2>遞歸方法
遞歸方法思想如下圖
類似于非遞歸的left與right指針?biāo)笖?shù)據(jù)互換
遞歸時(shí)只訂立一個(gè)指針,每一次通過未交換字符串的長(zhǎng)度(len)來表示所指向的元素的字符串倒數(shù)除\0外第一個(gè)元素。

每一次的遞歸將指針?biāo)傅脑貎?chǔ)存進(jìn)一個(gè)變量,并且將倒數(shù)第一個(gè)元素(除\0外),與所知元素?fù)Q再把最后元素置為\0,然后改變len進(jìn)行下次遞歸。

最后的效果是字符串由長(zhǎng)變短再變長(zhǎng)得以完成反向排列
詳解如圖

C語言編程  遞歸方法與非遞歸方法 實(shí)現(xiàn)將參數(shù)字符串中的字符反向排列
C語言編程  遞歸方法與非遞歸方法 實(shí)現(xiàn)將參數(shù)字符串中的字符反向排列

源代碼:

#include
#include
void reverse_string(char *str)
{
    int len = strlen(str);
    char temp=*str;//當(dāng)前所指元素
    *str = *(str + len - 1);//除\0外最后一個(gè)元素
    *(str + len - 1) = '\0';//置\0
    if (strlen(str + 1) >= 2)//長(zhǎng)度小于等于1則不需要交換
    {
        reverse_string(str + 1);
    }
    *(str + len - 1) = temp;//將儲(chǔ)存的元素反序序放回字符串完成反向排序
}
int main()
{
    char str[] = "chooseyou";
    printf("%s\n", str);
    reverse_string(str);
    printf("%s\n", str);
    system("pause");
    return 0;
}

注意:要修改的字符串要以數(shù)組類型存儲(chǔ)(str[]),*str儲(chǔ)存為只讀類型,強(qiáng)行寫值會(huì)出錯(cuò)

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。


網(wǎng)頁名稱:C語言編程遞歸方法與非遞歸方法實(shí)現(xiàn)將參數(shù)字符串中的字符反向排列-創(chuàng)新互聯(lián)
網(wǎng)頁網(wǎng)址:http://weahome.cn/article/dghhid.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部