3 回答
TA贡献1891条经验 获得超3个赞
int strcmp(const char * cs,const char * ct)
{
register signed char __res;
while (1) {
if ((__res = *cs - *ct++) != 0 || !*cs++)
break;
}
return __res;
}
//要考虑str2超长的情况,如果超过了str1长度,那么只替换到str1的末尾位置,其余部分不在替换,返回替换串的长度
int strreplace(char* str1 , int i , char* str2)
{
int c = i;
char *p = str1;
while(c--)
p++;
while(p)
p++ = str2++;
return i-strlen(str2);
}
TA贡献1946条经验 获得超4个赞
参考恢复代码
#include<stdio.h>
#include<malloc.h>
#include<stdlib.h>
struct
node
{
char
data;
struct
node
*lchild;
struct
node
*rchild;
};
void
Createbitree(node*
root)
{
char
ch=getchar();
fflush(stdin);
if(ch!='#')
{
root=(node*)malloc(sizeof(node));
root->data=ch;
Createbitree(root->lchild);
Createbitree(root->rchild);
}
return;
}
void
Readbittree(node
*root)
{
printf("%c",root->data);
if(root->lchild!=NULL)
{
Readbittree(root->lchild);
}
if(root->rchild!=NULL)
{
Readbittree(root->rchild);
}
return;
}
int
main()
{
printf("输入内容");
//创建根节点
node*
b
=
NULL;
Createbitree(b);
system("pause");
//输出
return
0;
}
TA贡献1780条经验 获得超1个赞
是个建立二叉树的程序。你这个两句:
root->lchild=create
bitree();
root->rchild=create
bitree();是递归,调用create
bitree函数,但是你有返回值root却没有在create函数前面写上其类型int、float或char,也没有形参的设定、
添加回答
举报