本篇文章介绍了4种翻转字符串的方法: 题目要求: 示例: 方法1:通过异或^= 为什么^= 能翻转字符串? 方法2:通过指针 如果觉得有帮助到你的话,就帮忙点个赞 赞 赞吧!! 方法3:通过递归 方法4:通过字符串的长度 文章到这里就结束了,期待我们下次再见~
用户输入一串字符串,程序返回一个反序的字符串。用户输入:asdfghjkl 程序输出:lkjhgfdsa
#include <stdio.h> #include <string.h> void overturn_string(char str[]); int main(void){ char str[40]; //创建一个空字符串数组 gets(str); //获取字符串 overturn_string(str); //调用函数 } void overturn_string(char str[]){ //初始化各变量 int length = 0; length = strlen(str); //获取字符串的长度 int i = 0; for(i = 0; i < length / 2; i++){ //length / 2可以提高交换效率 //采用异或^= 来处理字符串 str[i] ^= str[length - i - 1]; str[length - i - 1] ^= str[i]; str[i] ^= str[length - i - 1]; } //输出字符串 puts(str); }
首先获得字符的ASCII码表的十进制,再转换成二进制。通过异或来处理得出翻转的二进制,再反过来执行一次步骤转化回字符。#include <stdio.h> #include <string.h> int inverse(char *str); int main(void){ char str[40]; //创建一个空的字符串 gets(str); //获取用户输入 inverse(str); //调用函数 } int inverse(char *str){ int length = strlen(str); //获取字符串长度 //初始化变量,创建两个字符串指针 char *p1; char *p2; p1 = str; //指向字符串第一个字符的地址 p2 = str + (length - 1); //指向字符串最后一个字符的地址 while(p1 < p2){ //如果p1 和p2 的地址重合或p2 的地址小于p1 的地址时就会退出循环 char c = *p1; //创建一个char 类型的变量来存储*p1 的值 *p1 = *p2; //*p1 获取*p2 的值 *p2 = c; //*p2 获取临时存储在变量c 中的*p1 的值 ++p1; //将p1 指向的地址向后移动一位 --p2; //将p2 指向的地址向前移动一位 } puts(str); //输出交换后的字符串 }
#include <stdio.h> #include <string.h> void overturn_string(char *str); int main(void){ char str[40]; //创建一个空字符串数组 gets(str); //获取字符串 overturn_string(str); //调用函数 } void overturn_string(char *str){ if(*str != NULL || *str != ' '){ //递归的结束条件 overturn_string(str + 1); //参数指向的地址往下移动一位 } --str; //因为递归*str 指向的是空字符,所以要将指向的地址前移一位 printf("%c", *str); //递归的函数开始从尾到头输出 }
#include <stdio.h> #include <string.h> int main(void){ char str[40]; //创建一个空字符串数组 gets(str); //获取字符串 int length = strlen(str); //求出字符串的长度 //直接获取字符串的长度后,从尾开始往头输出 for(int i = length - 1; i >= 0; i--){ printf("%c", str[i]); } return 0; }
end~
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算