C语言在运行过程中出现了一个问题导致程序停止工作 5
#include<stdio.h>#include<stdlib.h>typedefcharmytype;typedefstructnode{node*lchild,*r...
#include<stdio.h>#include<stdlib.h> typedef char mytype;typedef struct node{ node *lchild,*rchild; mytype data; }node;typedef node*linklist; void creatTree(linklist &T){ char x; scanf("%c",&x); if(x=='.') T=NULL; else { if(T=(linklist)malloc(sizeof(node))) { T->data=x; creatTree(T->lchild); creatTree(T->rchild); } }}void Game(linklist &T){ char answer1=NULL,answer2=NULL; linklist p=T; if(T->lchild) { printf("这种动物是%c的吗?\n",T->data); printf("如果是,请输入1;如果不是,请输入0;\n"); scanf("%d",&answer1); if(answer1) {Game(T->lchild);} else {Game(T->rchild);} } printf("请问这种动物是 %c吗?\n",p->data); printf("如果是,请输入1;如果不是,请输入0;\n"); scanf("%d",&answer2); if(answer2) {printf("哈哈,我聪明吧!\n");} else {printf("我猜错了呀?!\n"); printf("你想的动物是什么呢?\n"); char wanjia; scanf("%c",&wanjia); linklist q=(linklist)malloc(sizeof(node)); q->data=wanjia; q->lchild=NULL; q->rchild=NULL; printf("那么你的动物和%有什么区别呢?\n",p->data); char zhongjie=p->data; scanf("%c",&p->data); linklist t=(linklist)malloc(sizeof(node)); t->data=zhongjie; t->lchild=NULL; t->rchild=NULL; p->lchild=q; p->rchild=t; } } int main(){ int k=1; linklist T; printf("请输入信息:\n"); creatTree(T); while(k) {printf("**********************\n"); printf("* Are you ready? *\n"); printf("**********************\n"); printf("* Let's Go! *\n"); printf("**********************\n"); printf("请你在心里想一个动物,比如:狗。\n"); printf("好了,现在,让我来猜一猜!\n"); printf("\n"); Game(T); printf("要不要再来一局?\n"); printf("继续,输入1;离开,输入0;\n"); scanf("%d",&k); } printf("谢谢使用。\n"); return 0;}
展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询