解题思路:

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的更多相关文章

  1. 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 ...

  2. java基础知识小总结【转】

    java基础知识小总结 在一个独立的原始程序里,只能有一个 public 类,却可以有许多 non-public 类.此外,若是在一个 Java 程序中没有一个类是 public,那么该 Java 程 ...

  3. awk案例学习

    awk是一个强大的文本分析工具,awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理.awk语言的最基本功能是在文件或者字符串中基于指定规则浏览和抽取信息,awk抽取 ...

  4. java 转载

    这几天忙于其他的事情,编程的习惯没有继续下去,偶然间看到了这篇文章,感觉收益颇丰,言归正传,下面即入主题 java基础知识小总结 在一个独立的原始程序里,只能有一个 public 类,却可以有许多 n ...

  5. awk书上练习

    文件car: plym fury chevy malibu ford mustang volvo s80 ford thundbd chevy malibu bmw 325i honda accord ...

  6. java基础知识小小结

    java基础知识小总结 在一个独立的原始程序里,只能有一个 public 类,却可以有许多 non-public 类.此外,若是在一个 Java 程序中没有一个类是 public,那么该 Java 程 ...

  7. 没想到 Hash 冲突还能这么玩,你的服务中招了吗?

    背景 其实这个问题我之前也看到过,刚好在前几天,洪教授在某个群里分享的一个<一些有意思的攻击手段.pdf>,我觉得这个话题还是有不少人不清楚的,今天我就准备来“实战”一把,还请各位看官轻拍 ...

  8. java子类对象和成员变量的隐写&方法重写

    1.子类继承的方法只能操作子类继承和隐藏的成员变量名字类新定义的方法可以操作子类继承和子类新生命的成员变量,但是无法操作子类隐藏的成员变量(需要适用super关键字操作子类隐藏的成员变量.) publ ...

  9. +5v to +13v Converter

    http://www.romanblack.com/smps/conv.htm What is it?  This is a simple smps voltage converter, it mak ...

随机推荐

  1. 点击按钮改变标签内容(采用lambda函数方式)

    from Tkinter import* window=Tk() counter=IntVar() counter.set(0) def click(variable,value): variable ...

  2. current imporant Posts

    CRUD是指在做计算处理时的增加(Create).读取(Retrieve)(重新得到数据).更新(Update)和删除(Delete) http://www.centos.org/docs/5/htm ...

  3. centos扩容(pv,vg,lv)

    preFace: (应用场景需求分析)

  4. c语言函数---M

    书画小说软件 制作更满意的读.更舒心的写.更轻松的公布 最全古典小说网 由本软件公布所得 main()主函数 每一C 程序都必须有一main()函数, 能够依据自己的爱好把它放在程序的某 个地方.有些 ...

  5. cocos2d-x -- 渠道SDK【棱镜】接入(2)

    上一章<cocos2d-x -- 渠道SDK[棱镜]接入(1)>,已经接入好了SDK.如今要准备加入渠道了,以豌豆荚为例. 详细流程: 1.加入渠道:

  6. JS实现快排

    /*采用快排的方法排序,取第一个值为轴对数组进行分割排序,不断迭代后实现数组的排序*/ //定义分割函数 function partF(A,low, high){ var temp = A[low]; ...

  7. SQL练习之两个列值的交换

    SELECT * FROM dbo.test2

  8. 重启sql server服务两种方式

    1.第一种重启SQl server的方法 点击左侧的数据库重启 如图 右击有个重启操作 2.第二个重启sql server方法

  9. 在MAC下使用github

    一 安装git    这个咱们就不说了,一般安装xcode都会自带git 如果不知道有没有下载git, 在终端运行 $which git  会打印出git的安装路径 /usr/local/bin/gi ...

  10. SSM搭配中的web.xml的配置信息

    最近一段时间在自己学着搭建SSM框架的项目,其实这个项目自由自己不断尝试,不断失败,才能印象更深刻. 下面就说一下在项目中的web.xml的相关配置信息: <?xml version=" ...