爱问知识人 爱问教育 医院库

计算机编程题

首页

计算机编程题

 用C语言
如果用一个循环数组q[0..m-1]表示队列时,该队列只有一个队列头指针front,不设队列尾指针rear,而改置计数器count用以记录队列中结点的个数。
(1)编写实现队列的三个基本运算:判空、入队、出队
(2)队列中能容纳元素的最多个数是多少?
提示:基本算法如下
typedef struct
{elemtp q[m];
 int front,count;  //front是队首指针,count是队列中元素个数。
}cqnode;           //定义类型标识符。
(1)判空:int Empty(cqnode  cq); //cq是cqnode类型的变量  
{if( unt==0) return(1);else return(0);  //空队列}
入队: int EnQueue(cqnode cq,elemtp x)
{if(count==m){printf(“队满\n”);exit(0); }
             cq.q[( ont+count)%m]=x;   //x入队
             count++; return(1);    //队列中元素个数增加1,入队成功。
}
出队: int DelQueue(cqnode cq)
{if (count==0){printf(“队空\n”);return(0);}
 printf(“出队元素”,cq.q[ ont]);
 x=cq.q[ ont];
 ont=( ont+1)%m;  //计算新的队头指针。
return(x)
}
(2) 队列中能容纳的元素的个数为m。队头指针front指向队头元素。

提交回答

类似问题

换一换
  • 学习帮助 相关知识

  • 教育培训
  • 教育考试

相关推荐

正在加载...
最新问答 推荐信息 热门专题 热点推荐
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200

热点检索

  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
返回
顶部
帮助 意见
反馈

确定举报此问题

举报原因(必选):