我是靠谱客的博主 糟糕太阳,最近开发中收集的这篇文章主要介绍测试程序,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

#include <stdio.h>
//二叉树的类型定义 
typedef struct BiNode{
	char data;
	BiNode* LChild;
	BiNode* RChild;
}BiNode,*BiTree;
//队列的类型定义 
typedef struct Node{
	char data;
	struct Node* next;
}LinkQueueNode;

typedef struct{
	LinkQueueNode *front;
	LinkQueueNode *rear;
}LinkQueue;

//初始化队
int InitQueue(LinkQueue *q)
{
	q->front=(LinkQueueNode*)malloc(sizeof(LinkQueueNode));
	if(q->front!=NULL)
	{
		q->rear=q->front;
		q->front->next=NULL;
		return(1);
	}
	else return(0);
} 
//入队操作
int EnterQueue(LinkQueue *q,char x)
{
	LinkQueueNode *NewNode;
	NewNode=(LinkQueueNode*)malloc(sizeof(LinkQueueNode));
	if(NewNode!=NULL)
	{
		NewNode->data=x;
		NewNode->next=NULL;
		q->rear->next=NewNode;
		q->rear=NewNode;
		return(1);
	}
	else return(0);
} 

//出队操作
int DeleteQueue(LinkQueue *q,char *x)
{
	LinkQueueNode *p;
	if(q->front==q->rear)
	 return(0);
	p=q->front->rear;
	q->front->next=p->next;
	if(q->rear==p)
	 q->rear=q->front;
	*x=p->data;
	free(q);
	return(1)
} 
//按层序打印二叉树 
void printInLines(BiTree* T)
{
	LinkQueue q;
	InitQueue(&q);
	if(T==NULL)
	 return;
	EnterQueue(&q,T);//根节点进队
	while(isEmpty(&q))
	{
		//出对保存队头并访问 
		BiNode *s;
		DeleteQueue(&q,s);
		printf("%c",s->data);
		//将出队结点的左子树根入队
		EnterQueue(&q,s->LChild);
		//将出队结点的右子树根入队
		EnterQueue(&q,s->RChild); 
	} 
	
}
//建立二叉树 
createBiTree(BiTree* T)
{
	char ch;
	scanf("%c",&ch);
	if(ch=' ')
	 *T=NULL;
	else
	{
		*T=(BiTree)malloc(sizeof(BiNode));
		if(!*T)
		{
			return;
		}
		createBiTree(T->LChild);
		createBiTree(T->RChild);
	}
}
void main()
{
	BiTree T;
	createBiTree(&T);
	 
}

 

最后

以上就是糟糕太阳为你收集整理的测试程序的全部内容,希望文章能够帮你解决测试程序所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(37)

评论列表共有 0 条评论

立即
投稿
返回
顶部