1、reverse(s+1);printf(%c,*s);} 這種方法在s很長(zhǎng)的情況下會(huì)一直遞歸到底,不是很好。
創(chuàng)新互聯(lián)成立于2013年,先為賽罕等服務(wù)建站,賽罕等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為賽罕企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。
2、即輸入1234,輸出4321,就可以采用類似的方式:void reverse_int_output(int a){ char buf[20]; sprintf(buf, %d, a);//將a轉(zhuǎn)為字符串 reverse_output_str(buf);//調(diào)用剛才的函數(shù)反序輸出。
3、反序字符串,只需要將首尾字符依次調(diào)換即可。
對(duì)鍵盤輸入的字符串進(jìn)行逆序,逆序后的字符串仍然保留在原來(lái)的字符數(shù)組中,最后輸出。
如果只是要求逆序輸出,那么可以采用類似的方法:void reverse(char *s){ if(*s==\0)return;reverse(s+1);printf(%c,*s);} 這種方法在s很長(zhǎng)的情況下會(huì)一直遞歸到底,不是很好。
j=cnt-1; icnt; i++, j--)b[j]=a[i];for(i=0; icnt; i++)printf(%c, b[i]);return 0;} 運(yùn)行:輸出格式:在一行中輸出逆序后的字符串。
反序字符串,只需要將首尾字符依次調(diào)換即可。
首先,我們定義一個(gè)反序函數(shù) revStr,它的參數(shù)為一個(gè)字符指針。隨后,獲取傳入的字符串的長(zhǎng)度。接著定義一個(gè)臨時(shí)字符變量,以便在交換首尾字符時(shí)使用。最后,通過(guò)一個(gè)循環(huán),從頭尾開始,逐個(gè)交換兩頭的字符。
對(duì)鍵盤輸入的字符串進(jìn)行逆序,逆序后的字符串仍然保留在原來(lái)的字符數(shù)組中,最后輸出。
首先,你的這個(gè)代碼不是實(shí)現(xiàn)逗字符串反序地,而是實(shí)現(xiàn)逗矩陣轉(zhuǎn)置地,不知你是不是復(fù)制錯(cuò)了。其次,這個(gè)代碼在實(shí)現(xiàn)逗矩陣轉(zhuǎn)置地時(shí)也會(huì)出現(xiàn)問(wèn)題。
只需要將字符數(shù)組的前后數(shù)據(jù)進(jìn)行交換就行了。
void fan(char *str1)并將main()中的聲明改為 void fan(char *str1);并且,fan()函數(shù)中for(i=0,j=t-1;j=0;i++,j--)中間的j = 0是賦值,不是判定,且for語(yǔ)句的中間表達(dá)式是該循環(huán),不結(jié)束的條件。