您的位置:首页 > 其它

C Primer Plus学习 六十三 队列 ADT(三)

2016-10-21 11:56 211 查看
测试队列

        在重要程序中使用一个新的设计(比如队列包)之前,应先对这个新设计进行测试。测试的一种方法 是编写一个短小的程序。这样的程序有时被称为驱动程序(driver),其惟一用途是进行测试。例如,程序 清单17.8使用一个可以添加和删除整数的队列。在运行程序之前,要确保下面这行代码出现在头文件 queue.h 中:

typedef int item;

还要记住,需要链接queue.c和use_q.c。

/* use_q.c --测试Queue接口的驱动程序*/

/* compile with queue.c */

#include<stdio.h>

#include"queue.h"/* 限定 queue,Item */

int main(void)

{

Queue line;

Item temp;

char ch;

InitializeQueue(&line);

puts("Testing the queue interface.type a to add a value,");

puts("type d to delete a value,and type q to quit.");

while((ch=getchar())!='q')

{

if(ch!='a'&&ch!='d')

   continue;

        if(ch=='a')

        {

        printf("Integer to add:");

        scanf("%d",&temp.processtime);

        if(!QueueIsFull(&line))

        {

       
printf("Putting %d into queue\n",temp.processtime);

       
EnAddQueue(temp,&line);

       }

       else

           puts("queue is full!");

        }

        else

        {

        if(QueueIsEmpty(&line))

            puts("nothing to delete!");

           else{

         
DeQueue(&temp,&line);

         
printf("removing %d from queue\n",temp.processtime);

        }

        }

        printf("%d items in queue\n",QueueItemCount(&line));

        puts("type a to add, d to delet, q to quit:");

}

EmptyTheQueue(&line);

puts("Bye!");

return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: