zhegeyoucuoma,zenmegai

来源:百度知道 编辑:UC知道 时间:2024/06/08 17:05:02
#include<stdio.h>
main()
{
void fun();
char str[50];
printf("请输入字符串:");
scanf("%s",str);
fun(str);
printf("\n 反序后字符串:%s \n",str);

}
void fun(char str1[])
{
char c;
int i,j;
j=strlen(str1);
for(i=0;i<j/2;i++,j--)
{
c=str1[i];
str1[i]=str1[j-i];
str1[j-i]=c;
}
}

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

void main()
{
void fun(char str1[]);//要声明参数
char str[50];
printf("请输入字符串:");
scanf("%s",str);
fun(str);
printf("\n 反序后字符串:%s \n",str);

}
void fun(char str1[])
{
char c;
int i,j;
j=strlen(str1)-1;

//i,j分别指向字符串的头和尾
for(i=0;i<j;i++,j--)
{
c=str1[i];
str1[i]=str1[j];
str1[j]=c;
}

}
已经修改了,可以运行。

你编的没什么地方要改的,只是把调用函数中的j=strlen(str1);语句后面减1就可以了,因为数组是从[]里面0开始的,所以计算了长度后还要再减1

#include<stdio.h>
main()
{
void fun();
char str[50];
printf("请输入字符串:");
scanf("%s",str);
fun(str);
printf("\n 反序后字符串:%s \n",str);

}
void fun(char str1[])
{
char c;
int i,j;
j=strlen(str1)-1;
fo