写一个函数,使输入的一个字符串按反序存放。要求形参为指针变量。在主函数中输入和输出字符串

如题所述

第1个回答  2011-12-14
#include <stdio.h>
#include <string.h>
void reverse(char* p)
{char c,*q;
q=p+strlen(p)-1;
for(;p<q;p++,q--)
{c=*p;*p=*q;*q=c;}
}
int main()
{ char s[100];
gets("%s", s);
reverse(s);
puts(s);
}
第2个回答  2011-12-14
字数限制太严,写不下,我一段一段贴,你追记,我回答,直到贴完

#include<stdio.h>
#include<string.h>

void yuan(char *a)
{
char temp;
int i;
int count;
count = strlen( a ) - 1;
第3个回答  2011-12-15
下面那位兄弟用的是指针来解决的,其实你可以试试用那函数的 递归调用 来解决的。这其中包含栈(先进后出)的思想!
if(s[i++]!='\0')
dgf(s[i]);
printf("%c ",s[i]);
部分语句在上面!你可自己动手编程试试!
第4个回答  2011-12-16
void exchange(char **str,int i)
{
static int a = 0;
int j = i +1;
char tem;
tem = str[i - a];
str[i -a] = str[j + a];
str[j +a] = tem;
a++;
}
这是子函数 主函数评论里面
第5个回答  2011-12-14
void change(char *c)
{ int l, i = 0;char d;
l = strlen(c);
while(i <= (l/2 - 1))
{ d = *(c + i);*(c + i )= *(c + l - 1 -i);
*(c + l - 1- i++) = d; }
}
c为字符数组地址。

C语言编程,写一个函数,使输入的一个字符串按反序存放,在主函数中输入和...
include <string.h> void input(char st[]);\/\/定义输入函数 void reverse(char st[]);\/\/定义反序函数 int main(){ char s[20];input(s);\/\/调用输入函数 printf("Original string: %s\\n", s);\/\/输出原字符串 reverse(s);\/\/调用反序函数 printf("New string: %s\\n", s);\/\/输出反...

C语言编程,写一个函数,使输入的一个字符串按反序存放,在主函数中输入和...
c = str[i];str[i] = str[len -i -1];str[len -i -1] = c;} }

C语言 写一个函数使输入的一个字符串按反序存放
编写一个函数,使输入的一个字符串按反序存放,在主函数中输入和输出字符。可以设置一个中间值,让两端的字符相交换,然后前头的向后移动一位,后头的向前移动一位。当前头的变量大于中间值时。程序停止执行。根据此原理编写代码如下:include<stdio.h> define N 100 void inverse(char[]);int main(...

写一个函数 使输入的一个字符串按反序存放,在主函数中输入和输出字符串...
include<stdio.h>int main(){char word(char a[30]);char a[30];int i=0;gets(a);\/\/输入字符while(a[i]!='\\0'){printf("%c",a[i]);\/\/以数组形式输出字符i++;\/\/控制每一个数组元素}word(a);printf("\\n反转后的字符是:%s\\n",a);return 0;}char word(char a[30]){int...

C语言编程,写一个函数,使输入的一个字符串按反序存放,在主函数中输入和...
include <stdio.h>#include <stdlib.h>#define N 10void fanzhuan(char* a);int main() {int i;char a[N]={'\\0'};printf("请输入字符串:");scanf("%s",a);fanzhuan(a);return 0;}void fanzhuan(char* a){int i;for(i=strlen(a)-1;i>=0;i--){printf("%c",a[i]);}...

C语言: 写一函数,使输入的一个字符串按反序存放,在主函数中输入和输出字...
现在思考你要解决的问题:将一个字符串(或者说是字符数组)翻转。这就要求你必须为yuan函数传递个字符串参数a;然后就是翻转,但是翻转的字符串不会超出原字符串的长度,故而可设计用它自身将翻转值带出。可将翻转函数原型设计为 void yuan(char *a); 实现如下:void yuan(char *a){ char t...

...将一个字符串按逆序存放。在主函数中输入和输出字符串。
include <stdio.h>#include <string.h>\/\/ 反序字符串x并返回char* reverse(char *x){ int len = strlen(x); int i, n = len \/ 2; char tem; for (i = 0; i <= n; i++) { tem = x[i]; x[i] = x[len - 1 - i]; x[len - 1 - i] =...

...写一个函数,使输入的一个字符串按反序存放,在主函数中输入和输出字...
先修正如下 \/\/ 作者: 点点点呀呀呀 \/\/ 函数功能:反转c型字符串 \/\/ 修改: Poseidon0922 include <stdio.h> include <string.h> void fanxu(char *dst, const char *src);int main(void){ char str0[100];char str1[100];gets(str0);fanxu(str1, str0);puts(str1);return 0;} ...

C语言编程,写一个函数,使输入的一个字符串按反序存放,在主函数中输入和...
void printit(char *str,int length) \/\/返序输出函数{ int i; for(i=length-1;i>=0;i--) \/\/从给定的字符串的最后一位依次向前遍历各字符 putchar(*(str+i)); \/\/每向前一个字符即打印该字符,直至第一个字符为止。}int main(){ char str[80]=""; \/\/定义一个长度为80字节的字符串数组,并...

c++写一个函数,使输入的一个字符串反序存放,在主函数中输入和输出字符串...
include<stdio.h>#include<string.h>void fun(char *a) \/\/其实你的n没有用。可以去掉{ int i,j; char t; \/\/字符 j=strlen(a); for(i=0;i<j\/2;i++)\/\/一半就行{t=a[i];a[i]=a[j-i-1];a[j-i-1]=t; \/\/这里需要{}; }\/\/是从j-1开始; \/\/ return a[...

相似回答