コード例 #1
0
/*
将变量val从队尾入队
*/
bool enter_queue(PQUEUE pQueue,int val)
{
	if(full_queue(pQueue))
	   return false;
	else
	{
	   pQueue->pBase[pQueue->rear] = val;
	   pQueue->rear = (pQueue->rear+1)%(len+1);
	   return true;
	}
}
コード例 #2
0
bool en_queue(QUEUE *pQ,int Val)
{
	if(full_queue(pQ))
		return false;
	else
	{
		pQ->pBase[pQ->rear]=Val;
		pQ->rear=(pQ->rear+1)%6;
		return true;
	}
}
コード例 #3
0
ファイル: queue.c プロジェクト: wcybxzj/shangguan
status_t enq_queue(QUEUE *ptr, DATA_T data)
{
	if (full_queue(ptr))
		return FAIL;
	ptr->queue[ptr->rear] = data;	

	ptr->rear = (ptr->rear + 1) % QUEUEMAX;
	flag = ENQ_LAST;

	return OK;
}
コード例 #4
0
ファイル: 队列.cpp プロジェクト: Medivh0416/C-DataCons
bool en_queue(QUEUE * pQ,int val)
{
    if (full_queue(pQ)) {
        return false;
    }
    else
    {
        pQ->pBase[pQ->rear]=val;
        pQ->rear=((pQ->rear+1)%6);
        return true;
    }
}
コード例 #5
0
void enqueue(int item){
	if(full_queue()){
		printf("Full!\n");
		return;
	}
	if(!full_one())
		push_one(item);
	else{
		while(!full_two() && !empty_one())
			push_two(pop_one());
		push_one(item);
	}
}
コード例 #6
0
void en_queue(cir_queue *q, person_type p)//进队函数,使p进入队列
{

	if (full_queue(q))//判断是否为满
	{
		printf("队列已满,无法实现进队操作,程序终止!");
		exit(-1);
	}
	else             //不满进行操作
	{
		q->qBase[q->rear] = p;
		q->rear = (q->rear + 1) % queuesize; //尾指针指向下一个位置
	}
}
コード例 #7
0
ファイル: main.c プロジェクト: ribeiroti/estrutura-de-dados-i
int main () {
    int option, option2, entry, entry2;
    node *head, *tail, *temp;

    head = init();
    tail = head;

    do {
        printf("Digite a opção desejada:\n1 - Inserção\n2 - Remoção\n3 - Verifica se está vazia\n4 - Imprime fila\n0 - Sair\n");
        scanf("%d", &option);

        switch (option) {
            case 1:
                if (!full_queue(size, max)) {
                    printf("Digite um valor: ");
                    scanf("%d", &entry);
                    temp = push(tail, entry);
                    if (temp != NULL) {
                        tail = temp;
                        if (empty_queue(size)) {
                            head = tail;
                        }
                        size++;
                    } else {
                        printf("Erro de alocação!\n");
                    }
                } else {
                    printf("Não é possível adicionar: FILA CHEIA!\n");
                }
            break;
            case 2:
                if (!empty_queue(size)) {
                    head = pop(head);
                    size--;
                } else {
                    printf("Não é possível retirar: FILA VAZIA!\n");
                }
            break;
            case 3:
                if (empty_queue(head))
                    printf("Fila está vazia\n");
                else
                    printf("Fila NÃO está vazia\n");
            break;
            case 4:
                if (!empty_queue(size)) {
                    print_queue(head);
                } else {
                    printf("Não é possível imprimir: FILA VAZIA!\n");
                }
            break;
            case 0:
                printf("Encerrando...");
            break;
            default:
                printf("Opção inválida!\n");
        }

    } while (option != 0);

    return 0;
}