一道C语言的题目,麻烦大家帮我改对!作业来的..

来源:百度知道 编辑:UC知道 时间:2024/06/28 04:13:32
紧急,麻烦大家帮我修改这道C语言,题目:

定义第一个函数以$符号为终止符号接收一组字符,定义第二个函数在相同的数组空间逆序存储这组字符,在主函数中调用这两个函数并输出逆序存放的字符串。要求用指针方式操作。

谢谢了,我出高分...

#include"stdio.h"
int receive(char *string)
{
int i;
puts("Please input a string end with $:");
for(i=0;(*string=getchar())!='$';i++);
return i;
}
void reverse(char *string,int size)
{
char p,q,temp;
for(p=*string,q=*string+size-1;p<q;p++,q--)
{
temp=p;
p=q;
q=temp;
}
}
void main()
{
char c[80],temp,size;
char *p;
p=&c[80];
size=receive(p);
reverse(c,size);
for(p=c;p<c+size;p++)
putchar(*p);
printf("\n");
system("pause");
}

给你改好啦,已经用TC运行正常。希望对你有帮助!!!
#include"stdio.h"
int receive(char *string)
{
int i;
puts("Please input a string end with $:");
for(i=0;(*(string+i)=getchar())!='$';i++);
return i;
}
void reverse(char *string,int size)
{
char *p,*q,temp;
for(p=string,q=string+size-1;p<q;p++,q--)
{
temp=*p;
*p=*q;
*q=temp;
}
}
void main()
{
char c[80],temp;
int size;
char *p;
p=c;
size=receive(p);
reverse(c,size);
for(p=c;p<c+size;p++)
putchar(*p);
printf("\n");
system("pause");
}

for(i=0;(*string=getchar())!='$';i++);
你始终在往string[0]里写