(C语言)字符串反转相关问题
来源:互联网 发布:林忆莲 都市触觉 知乎 编辑:程序博客网 时间:2024/06/10 15:27
问题描述:
将“student a am i”变成“i am a student ”输出
程序分析:
(1)思路如下:根据这个问题和要求,本程序是先将这句话中的每个单词反转,再将整个字符串反转过来。
(2)程序的实现:a.再主函数中定义一个字符串数组并初始化;
b.写一个字符串反转函数和一个用于查找单词并且调用反转函数的函数c.调用这个函数,并且输出结果。
代码如下:
#include<stdio.h>#include<string.h>//编写一个字符串反转函数void reverse_string(char *l,char *r) {char temp;while(l < r){temp = *l; //进行值的交换*l = *r;*r = temp;l++;r--;}}//reverse 用于找到新单词,并且调用上面的函数反转void reverse(char str[],int n){int i = 0;//定义i表示数组的下标char *l = str; //定义指针l用来指向单词的每个单词首字母出现的位置char *r = str; //定义指针r用来指向单词的每个单词尾的空格位置while(str[i])//当这个字符串中的字符不为'\0'时{if(str[i] == ' ') //当出现空格的时候交换这个反转这个单词{reverse_string(l,r-1);l = ++r; //使l指向下一个单词的首字母}else{r++; //如果还没出现空格,使l往后值,寻找空格;}i++; //整个while循环中,i必须往后加;}reverse_string(str,str+n-1);//反转每个单词后,再将整个字符串反转}int main(){char ch[] = "student a am i";reverse(ch,strlen(ch)); //在这里只需调用reverse函数即可printf("%s\n ",ch);return 0;}
0 0
- (C语言)字符串反转相关问题
- c语言中关于字符串反转问题
- C语言字符串反转
- 字符串反转(C语言)
- C语言字符串反转
- C语言字符串反转
- (c语言)字符串的反转函数
- (C语言)递归实现字符串反转
- C语言字符串反转函数
- C语言字符串反转函数
- C语言字符串反转函数
- C语言字符串反转函数
- C语言字符串反转函数
- 字符串反转函数,C 语言。
- C语言实现字符串反转
- C语言字符串反转函数
- C语言字符串反转函数
- C语言实现字符串反转程序
- 使用Bioconductor下载GEO(Gene Expression Omnibus)上的数据
- 【提权】udf提权入侵
- Struts2中使用validate校验框架
- Struts与Spring整合Scope
- KANSEI ROBOT
- (C语言)字符串反转相关问题
- 绘制字符串与图像
- C# 多线程
- Android各国语言values命名规则
- Maven报错
- CSAPP bomblab
- 小糖出品:类与对象的概念
- 文章标题
- 免费申请一年TexturePack和Phsics Editor使用