c ,改错题1、给定程序MODI1.C中函数fun的功能是:先将在字符串s中的字符按正序存放到t串中,然后把s中的字符按

问题描述:

c ,
改错题1、给定程序MODI1.C中函数fun的功能是:先将在字符串s中的字符按正序存放到t串中,然后把s中的字符按逆序连接到t串的后面.
例如:当s中字符串为:"ABCDE"时,则t中字符串应为:"ABCDEEDCBA".后面的是改正内容
#include
#include
void fun (char *s,char *t)
{int i,sl;
sl = strlen(s);
//
t[sl]='\0';/* t[2*sl]='\0' */
main()
{char s[100],t[100];
printf("\nPlease enter string s:"); scanf("%s",s);这个s的前面没有&可以么
fun(s,t);
printf("The result is:%s\n",t); }
1个回答 分类:综合 2014-10-28

问题解答:

我来补答
t[sl+i] = s[sl-i-1]; 实现把s中的字符按逆序连接到t串的后面.
i初值为0,sl-i-1为sl-1,s[sl-1]就是s字符串中最末一个字符.
随着i增大,sl-i-1会减小,即对于s字符串从末往前读取字符.
t[sl+i]即随着i增大,从t[sl]开始依次反向写入s中的字符.
scanf("%s",s);对于字符串,字符串名就是指针,表示字符串地址,不用使用取地址运算符&.
 
 
展开全文阅读
剩余:2000