c 转置字符串You are a so cheap man ->man cheap so a are You
解题思路:
1、将字符串转置
2、对转置后的字符串中单词转置
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<stdbool.h>
//字符串转置
void tranStr(const char *p,char *s)
{
int len = strlen(p);
int i,j;
for(i=len,j=; i>=,j<len; i--,j++)
{
*(s+j) = *(p+i-);
}
*(s+j) = '\0';
} //判断是否为字母
bool isChar(char c)
{
bool isC = false;
if((c >='a' && c<='z')
||(c>='A'&&c<='Z'))
isC = true;
return isC;
}
//转置单词
void tranWord(char *a,int count)
{
int i;
char temp;
for(i=; i<count/; i++)
{
temp = *(a+count--i);
*(a+count--i) = *(a+i);
*(a+i) = temp;
}
} //对转置字符串中的单词转置
void tranStrWord(char *a)
{
int i=,count=,len;
for(i=; i<len; i++)
{
if(isChar(*(a+i)))
count++;
else
{
tranWord(a+i-count,count);
count = ;
}
if(count> && i==len-)
{
tranWord(a+i-count+,count);
}
}
} int main(void)
{
char arr[],brr[];
scanf("%[^\n]", arr); //遇到回车符结束,这样可以接收空格符
tranStr(arr,brr);
tranStrWord(brr);
puts(brr);
return ;
}
c 转置字符串You are a so cheap man ->man cheap so a are You的更多相关文章
- Benchmarking Apache Kafka: 2 Million Writes Per Second (On Three Cheap Machines)
I wrote a blog post about how LinkedIn uses Apache Kafka as a central publish-subscribe log for inte ...
- java基础知识小总结【转】
java基础知识小总结 在一个独立的原始程序里,只能有一个 public 类,却可以有许多 non-public 类.此外,若是在一个 Java 程序中没有一个类是 public,那么该 Java 程 ...
- awk案例学习
awk是一个强大的文本分析工具,awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理.awk语言的最基本功能是在文件或者字符串中基于指定规则浏览和抽取信息,awk抽取 ...
- java 转载
这几天忙于其他的事情,编程的习惯没有继续下去,偶然间看到了这篇文章,感觉收益颇丰,言归正传,下面即入主题 java基础知识小总结 在一个独立的原始程序里,只能有一个 public 类,却可以有许多 n ...
- awk书上练习
文件car: plym fury chevy malibu ford mustang volvo s80 ford thundbd chevy malibu bmw 325i honda accord ...
- java基础知识小小结
java基础知识小总结 在一个独立的原始程序里,只能有一个 public 类,却可以有许多 non-public 类.此外,若是在一个 Java 程序中没有一个类是 public,那么该 Java 程 ...
- 没想到 Hash 冲突还能这么玩,你的服务中招了吗?
背景 其实这个问题我之前也看到过,刚好在前几天,洪教授在某个群里分享的一个<一些有意思的攻击手段.pdf>,我觉得这个话题还是有不少人不清楚的,今天我就准备来“实战”一把,还请各位看官轻拍 ...
- java子类对象和成员变量的隐写&方法重写
1.子类继承的方法只能操作子类继承和隐藏的成员变量名字类新定义的方法可以操作子类继承和子类新生命的成员变量,但是无法操作子类隐藏的成员变量(需要适用super关键字操作子类隐藏的成员变量.) publ ...
- +5v to +13v Converter
http://www.romanblack.com/smps/conv.htm What is it? This is a simple smps voltage converter, it mak ...
随机推荐
- OpenCV学习 4:摄像头视频读写与边缘检测
原创文章,欢迎转载,转载请注明出处 想实现人脸识别,车辆识别,车牌识别.一般我们可不是读硬盘里面的视频文件的,都是直接从摄像头读取视频流然后直接识别的.所以读取摄像头的视频流这是基础...OpenCV ...
- Hash算法原理理解
我们有很多的小猪,每个的体重都不一样,假设体重分布比较平均(我们考虑到公斤级别),我们按照体重来分,划分成100个小猪圈. 然后把每个小猪,按照体重赶进各自的猪圈里,记录档案. 好了,如果我们要找某个 ...
- CDC不同模式在ODI体现系列之二 异步模式
CDC不同模式在ODI体现系列之二 异步模式 2 异步模式需要在数据库中做一些准备工作: 改数据为归档并启用logminer: SQL> shutdown immediate 数据库已经关闭. ...
- poj1665
#include <stdio.h> #include <stdlib.h> #define pi 3.1415926 int main() { float dia,tim; ...
- Netfilter-packet-flow.svg
调试网络的方法:(Debugging the kernel using Ftrace) $ watch -n1 -d sudo cat /proc/net/snmp$ watch -n1 -d su ...
- linux 查看信息命令
# uname -a # 查看内核/操作系统/CPU信息# head -n 1 /etc/issue # 查看操作系统版本# cat /proc/cpuinfo # 查看CPU信息# hostname ...
- QT 声明全局变量
声明 qdatabasemanager.h #include"qdatabasemanager.h" externQDatabaseManager*Database; 引用 mai ...
- eclipse 修改编码
在Eclipse的开发使用中,我们经常使用的是UTF-8,但是刚刚安装的或者是导入的项目是其他编码的默认是GBK的,这就造成我们的项目乱码,一些中文解析无法查看,对我们的开发造成不便. 工具/原料 E ...
- cmd命令行--切换盘符
- Android知识简单测试题
上周去了一场Android考试,前面基础的题目很简单却答不上来,看过跟做过,懂了和会讲差距还是很大的,下面整理一下还记得的几个问题,自勉! 还是觉得,要好好看官方文档才是正道的啊! 1. Androi ...