字元反轉
編寫一個函式 reverse_string(char * string)(遞迴實現)
實現:將引數字串中的字元反向排列。
要求:不能使用C函式庫中的字串操作函式。
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
/*******遞迴的方式寫字串長度函式*******/
int my_strlen(char *str)
{
if (*str == '\0') //當傳入的字串中沒有字元
return 0; //字串長度為0
else
return 1 + my_strlen(str + 1); /*運用遞迴,每遞迴一次
長度加1,直到遍歷到的'\0'時結束遞迴*/
}
/*******遞迴方式寫字串反轉*******/
void reverse_string(char *string)
{
int len = my_strlen(string);//呼叫上面的字串長度函式;
if (len <= 1) //當字串長度小於等於1時,不執行;
return;
else
{
char temp = string[0]; //將第一個字元的值儲存在temp中;
string[0] = string[len - 1];//將最後一個字元賦給第一個字元;
string[len - 1] = '\0'; //將最後一個字元的內容賦為'\0';
reverse_string(string + 1);//遞迴呼叫下一次反轉;
string[len - 1] = temp; //將temp賦給當前的最後一個字元;
}
}
int main() {
char ch[] = "qwertyuiop";
reverse_string(ch);
printf("%s ", ch);
printf("\n");
system("pause");
return 0;
}
相關文章
- 2020-11-13整數轉換為字串 字元反轉字串字元
- Python對HTML跳脫字元進行反轉義PythonHTML字元
- 特殊字元——反斜槓(\)字元
- 轉義字元字元
- js將陣列轉字元,字元轉回陣列JS陣列字元
- js全形字元轉為半形字元JS字元
- oracle轉義字元Oracle字元
- 折行轉義字元字元
- Oracle 特殊字元轉義Oracle字元
- 字元編碼轉換字元
- Markdown常用轉義字元字元
- 中文字元轉為HTML字元實體字元HTML
- OpenAI宮鬥反轉反轉再反轉,到底是資本任性還是人性扭曲?OpenAI
- JavaScript 字串反轉JavaScript字串
- 反轉整數
- 反轉字串(JavaScript)字串JavaScript
- 數字反轉
- 如何理解掩碼、反掩碼、萬用字元字元
- php過濾html標籤、特殊字元、轉義字元PHPHTML字元
- SVG 旋轉文字字元SVG字元
- URL地址特殊字元轉換字元
- js視訊轉字元畫 —— 寫一個屬於自己的字元轉換器JS字元
- 將一個字串進行反轉:將字串中指定部分進行反轉。比如“abcdefg”反轉為”abfedcg”字串
- 華為-字串反轉字串
- 反轉連結串列
- 整數反轉(ReverseInteger)
- 經典的反轉
- js陣列反轉JS陣列
- 正規表示式 轉義字元字元
- Python語法的轉義字元Python字元
- web前端---轉義字元的坑Web前端字元
- 利用遞迴方法實現連結串列反轉、前N個節點反轉以及中間部分節點反轉遞迴
- #反轉連結串列_C++版 #反轉連結串列_Java版 @FDDLCC++Java
- .NET IoC模式依賴反轉(DIP)、控制反轉(Ioc)、依賴注入(DI)模式依賴注入
- LeetCode反轉整數(Python)LeetCodePython
- Spring IOC--控制反轉Spring
- LeetCode(7)--.反轉整數LeetCode
- 1025 反轉連結串列