C语言实现(小米面试题)给定一个句子(只包含字母,空格,逗号和句号), 将句子中的单词位置反转,符号不变。(使用指针)
例子
输入: hello xiao.mi
输出: olleh oaix.im
思路:输入一个句子(只包含字母,空格,逗号和句号),指针指向该字符串首地址,遍历字符串找到字符串中非字母处,记下该位置记录到整型数组中,调用反转字符串的数组,利用记下的位置分单词反转。
//Dev-Cpp下实现
#include <stdio.h>
char*fan(char*p,int b[10],int j)
{ char t;int i;for(i=b[j];i<(b[j+1]+b[j])/2;i++){t=p[b[j]];p[b[j]]=p[b[j+1]];p[b[j]+1]=t;}return (p);
}
int main()
{ char a[100],*p=a;int i,j=1,b[10]={0};printf("输入一个句子(只包含字母,空格,逗号和句号):\n");gets(a);for(i=0;i<100;i++){if((a[i]<='z'&&a[i]>='a')||(a[i]>='A'&&a[i]<='Z'))continue;else b[j++]=i;//记下除字母外的字符的位置 } for(j=0;j<10;j++){if(b[j]==0&&b[j+1]==0)break;//没有记下位置的后边的元素默认为0,以此作为结束标志 else fan(a,b,j);}printf("%s",p);
}
C语言实现(小米面试题)给定一个句子(只包含字母,空格,逗号和句号), 将句子中的单词位置反转,符号不变。(使用指针)相关推荐
- 给定一个句子(只包含字母和空格), 将句子中的单词位置反转,单词用空格分割, 单词之间只有一个空格,前后没有空格。
给定一个句子(只包含字母和空格), 将句子中的单词位置反转,单词用空格分割, 单词之间只有一个空格,前后没有空格. 比如: (1) "hello xiao mi"-> &qu ...
- 连续字母长度 给定一个字符串 只包含大写字母
注意!答案仅作为参考(实际考试中下列代码通过用例100%,但不代表最优解) 给定一个字符串 只包含大写字母 求在包含同一字母的子串中 长度第K长的子串 相同字母只取最长的子串 输入第一行 一个子串 1 ...
- 2014年去哪儿网笔试题--给定一个整型数组,对这个整型素组排序,使得按序拼接数组各元素得到的值最小
2014年去哪儿网笔试题--给定一个整型数组,对这个整型素组排序,使得按序拼接数组各元素得到的值最小. 我的大致思路是把这个整型数组转换成String数组,然后通过String类的compareTo方 ...
- c语言在平面直角坐标系中,给定一个圆的圆心坐标Ox,Oy以及半径R,在再给定一个点的坐标PX,Py,请判断这个点与圆的位置关系。
在平面直角坐标系中,给定一个圆的圆心坐标Ox,Oy以及半径R,在再给定一个点的坐标PX,Py,请判断这个点与圆的位置关系. 输入格式: 先输入三个正整数,分别代表圆心的横纵坐标x,Oy和半径R. 在输 ...
- C语言试题五十七之假定输入的字符串中只包含字母和*号。请编写函数function,它的功能是:删除字符串中所有*号。在编写函数时,不得使用c语言提供的字符串函数。
1. 题目 假定输入的字符串中只包含字母和*号.请编写函数function,它的功能是:删除字符串中所有*号.在编写函数时,不得使用c语言提供的字符串函数. 2 .温馨提示 C语言试题汇总里可用于计算 ...
- C语言试题四十二之假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:将字符串中的前导*号全部移到字符串的尾部。
1. 题目 请编写一个函数function,它的功能是:假定输入的字符串中只包含字母和*号,它的功能是:将字符串中的前导*号全部移到字符串的尾部. 2 .温馨提示 C语言试题汇总里可用于计算机二级C语 ...
- 李洋疯狂C语言之将”you are come from shanghai ”倒置为”shanghai from come are you”,将句子中的单词位置倒置,而不改变单词内部结构
题目: 编写一个C函数,将"you are come from shanghai "倒置为"shanghai from come are you",及将句子中的 ...
- 给定一个任意的大写字母A~Z,转换为小写字母。
/** 给定一个任意的大写字母A~Z,转换为小写字母.* */ package com.homework;import java.util.*;public class Deom3 {/*** @pa ...
- 对给定的字符串(只包含'z','o','j'三种字符),判断他是否能AC。 是否AC的规则如下: 1. zoj能AC; 2. 若字符串形式为xzojx,则也能AC,其中x可以是N个'o' 或者为空;
对给定的字符串(只包含'z','o','j'三种字符),判断他是否能AC. 是否AC的规则如下: 1. zoj能AC: 2. 若字符串形式为xzojx,则也能AC,其中x可以是N个'o' 或者为空: ...
- 87.假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:除了字符串前导的*号之外,将串中其他*号全部删除。在编写函数时,不得使用C语言提供的字符串函数。
87.假定输入的字符串中只包含字母和号.请编写函数fun,它的功能是:除了字符串前导的号之外,将串中其他*号全部删除.在编写函数时,不得使用C语言提供的字符串函数. 例如,若字符串中的内容为****A ...
最新文章
- Charles抓取微信小程序数据 以及 其它应用网站数据
- 2019/2/23研究日志
- v380云存储怎么用_云智中国-百度智能云薄磊:海量无限存储,助力产业智能化升级...
- 来自过气科技网红的2020年终总结
- 二维数组的对角搜索C++
- 新编C语言程序设计入门,新编C语言程序设计教程(本科)第3篇.pdf
- Java基础day16
- 2019第十届蓝桥杯C/C++ B组省赛 —— 第二题:年号字串
- OpenStack 的部署T版(三)——Glance组件
- Mysql5.5部署MHA
- C++ Primer 小贴士之第一二章
- 【数据结构与算法】拓扑排序问题C语言实现
- java中有ClockPane类吗_Java程序设计教程 冶金工业出版社第9章
- linux get current thread count and system threads limit
- java.lang.ClassNotFoundException: com.sun.xml.ws.spi.ProviderImpl解决办法
- 怎样做才是一个独立自主的人?
- Atitit 核心代码包括哪些 重要部分 压缩 分类 图像处理部分 爬虫 分词检索部分 多媒体 基础设施代码 非功能性 类库框架 源到源的语言翻译 跨语言集成 互操作通讯 算
- MYSQL入门基础知识
- ARM SMMU的原理与IOMMU
- win10+Ubuntu18.04双系统安装后无法进入win10或者无法进入Ubuntu的解决方案
热门文章
- 职场技巧:高效实用的四象限法则
- lighttpd使用
- 杭州最新公交线路一览(91-100)
- 关于手机传感器,你需要了解的一些(一)
- 六十星系之54廉贞破军坐卯酉
- ES分片UNASSIGNED解决方案(ALLOCATION_FAILED,REPLICA_ADDED,NODE_LEFT,REINITIALIZED,CLUSTER_RECOVERED等等)
- javag关于视频转码技术点分析!
- 为什么我们创业失败了和选择创业公司的思考
- C语言试题八十六之兔子生兔子问题
- 联想小新air pro 13的 win10和ubuntu17.10双系统安装,彻底解决找不到磁盘问题。