qq_43469725 2018-10-19 20:39 采纳率: 0%
浏览 2350

Dev c++程序出现运行错误 显示 “process exited with return value 322122572

#include
#include
typedef struct BiTNode{
char data;
struct BiTNode *lchild, *rchild; //左右孩子指针
}BiTNode, *BiTree;
//二叉树的二叉链表存储表示

int CreateBiTree(BiTree*T){ //先序建立二叉树
char ch;
printf("请输入字符\n");
scanf("%c",&ch);

if(ch=' '){
T=NULL;
}
else if(!(*T=(BiTree)malloc(sizeof(BiTNode))))
return 0;
(*T)->data=ch;
CreateBiTree(&(*T)->lchild);
CreateBiTree(&(*T)->rchild);
return 1;
printf("%c",&ch);
}

int PreOrderTraverse(BiTree T){
if(T){
printf("%c",&T->data);
PreOrderTraverse(T->lchild);
PreOrderTraverse(T->rchild);

}return 1;
} //先序遍历

int InOrderTraverse(BiTree T){
if(T){
InOrderTraverse(T->lchild);
printf("%c",&T->data);
InOrderTraverse(T->rchild);
}
return 1;
} //中序遍历

int PostOrderTraverse(BiTree T){
if(T){
PostOrderTraverse(T->lchild);
PostOrderTraverse(T->rchild);
printf("%c",&T->data);
}
return 1;

} //后序遍历

int main(){
BiTree T;

int choose;
while(1){
printf("*********菜单********\n");
printf("* 1、先序建立 \n");
printf("
2、先序遍历 \n");
printf("
3、中序遍历 \n");
printf("
4、后序遍历 \n");
printf("
0、退出 \n");
printf("
********************\n");
scanf("%d",&choose);
if(choose==0){
break;
}
switch(choose){
case 1:
CreateBiTree(&T);
break;
case 2:
PreOrderTraverse(T);
break;
case 3:
InOrderTraverse(T);
break;
case 4:
PostOrderTraverse(T);
break;
}
}

}

  • 写回答

1条回答 默认 最新

  • threenewbee 2018-10-20 01:23
    关注

    错误比较多,给你完整改了一遍,如果问题解决,请点我回答右边的采纳,谢谢

    // Q703224.cpp : Defines the entry point for the console application.
    //
    
    #include "stdafx.h"
    
    #include "stdio.h"
    #include "stdlib.h"
    
    typedef struct BiTNode{
    char data;
    struct BiTNode *lchild, *rchild; //左右孩子指针 
    }BiTNode, *BiTree;
    //二叉树的二叉链表存储表示
    
    int CreateBiTree(BiTree*T){ //先序建立二叉树 
    char ch;
    printf("请输入字符");
    fflush(stdin);
    scanf("%c",&ch);
    
    if(ch==' '){
    *T=NULL;
    return 0;
    }
    else 
    {
        *T=(BiTNode *)malloc(sizeof(BiTNode));
        if (!(*T))
            return 0;
        (*T)->data=ch;
        CreateBiTree(&(*T)->lchild);
        CreateBiTree(&(*T)->rchild);
        return 1;
        printf("%c",&ch);
    }
    }
    
    int PreOrderTraverse(BiTree T){
    if(T){
    printf("%c",T->data);
    PreOrderTraverse(T->lchild);
    PreOrderTraverse(T->rchild);
    
    }return 1;
    } //先序遍历
    
    int InOrderTraverse(BiTree T){
    if(T){
    InOrderTraverse(T->lchild);
    printf("%c",T->data);
    InOrderTraverse(T->rchild);
    }
    return 1; 
    } //中序遍历
    
    int PostOrderTraverse(BiTree T){
    if(T){
    PostOrderTraverse(T->lchild);
    PostOrderTraverse(T->rchild);
    printf("%c",T->data);
    }
    return 1;
    
    } //后序遍历
    
    int main(){
    BiTree T;
    
    int choose;
    while(1){
    printf("*********菜单********\n");
    printf(" 1、先序建立 \n");
    printf(" 2、先序遍历 \n");
    printf(" 3、中序遍历 \n");
    printf(" 4、后序遍历 \n");
    printf(" 0、退出 \n");
    printf("********************\n");
    scanf("%d",&choose);
    if(choose==0){
    break;
    }
    switch(choose){
    case 1:
    CreateBiTree(&T);
    break;
    case 2:
    PreOrderTraverse(T);
    printf("\n");
    break;
    case 3:
    InOrderTraverse(T);
    printf("\n");
    break;
    case 4:
    PostOrderTraverse(T);
    printf("\n");
    break;
    }
    }
    
    }
    
    
    

    图片说明

    评论

报告相同问题?

悬赏问题

  • ¥15 活动选择题。最多可以参加几个项目?
  • ¥15 飞机曲面部件如机翼,壁板等具体的孔位模型
  • ¥15 vs2019中数据导出问题
  • ¥20 云服务Linux系统TCP-MSS值修改?
  • ¥20 关于#单片机#的问题:项目:使用模拟iic与ov2640通讯环境:F407问题:读取的ID号总是0xff,自己调了调发现在读从机数据时,SDA线上并未有信号变化(语言-c语言)
  • ¥20 怎么在stm32门禁成品上增加查询记录功能
  • ¥15 Source insight编写代码后使用CCS5.2版本import之后,代码跳到注释行里面
  • ¥50 NT4.0系统 STOP:0X0000007B
  • ¥15 想问一下stata17中这段代码哪里有问题呀
  • ¥15 flink cdc无法实时同步mysql数据