您的位置:首页 > 其它

练习 1-19 编写函数 reverse(s),将字符串s 中的字符顺序颠倒过来。使用该函数 编写一个程序,每次颠倒一个输入行中的字符顺序。

2017-06-28 13:46 1116 查看

C语言程序设计(第二版) 练习1-19 个人设计

练习 1-19 编写函数 reverse(s),将字符串s 中的字符顺序颠倒过来。使用该函数编写一个程序,每次颠倒一个输入行中的字符顺序。

#include <stdio.h>
#define MAXLINE 1000

int getline(char line[], int maxline);
void reverse(char to[], char from[]);

main()
{
int len;
char line[MAXLINE];
char op[MAXLINE];

while((len = getline(line, MAXLINE)) > 0)
reverse(op, line);
printf("%s", op);
printf("\n");

return 0;
}

int getline(char s[], int lim)
{
int c, i;

for(i=0; i < lim-1 && (c=getchar()) != EOF && c != '\n'; ++i)
s[i] = c;
if (c == '\n'){
s[i] = c;
++i;
}
s[i] = '\0';
return i;
}

void reverse(char to[], char from[])
{
int i, j, m;

i = 0;
while(from[i] != '\0')
++i;
m = i - 2;
j = m;
for(i = 0; j >= 0; ++i){
to[i] = from[j];
--j;
}
to[i] = '\0';
}


如果程序设计有错误或更简洁的方法,欢迎并感谢您指正出示,谢谢!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐