insert(),top()関数はどのように記載すればよいのでしょう。
#include <stdio.h>
#include <stdlib.h>
#define QMAX 20 //最大要素数
#define LOWER 10 //乱数の下限
#define UPPER 90 //乱数の上限
typedef struct {
int box[QMAX+1];
int front, rear;
} Queue;
void initialize(Queue *q)
{
q->front = 1;
q->rear = 0;
}
////////////////////////////////////////////////////////////
//関数:insert()
//機能:キューの末尾に新しい要素を挿入する
//キューの末尾に要素が挿入され、rearが
// 新しい末尾の添え字である。
////////////////////////////////////////////////////////////
void insert(Queue *q, int item)
{
//①キューの末尾メンバrearが1増やす
//自分のコードはここから
//②キューのメンバboxのrear番目にitemを入れる
//自分のコードはここまで
return;
}
void qdelete(Queue *q)
{
(*q).front = (*q).front + 1;
}
int empty(Queue *q)
{
if(q->rear < q->front)
return 1;
else
return 0;
}
///////////////////////////////////////////////////////////
//関数:top()
//機能:キューの先頭(トップ)の要素を求める
///////////////////////////////////////////////////////////
int top(Queue *q)
{
int p;
//キューのboxメンバの中、frontで示している要素の値を返す
//自分のコードはここから
//自分のコードはここまで
return p;
}
void print_result(int a[], int n)
{
int i;
for (i = 1; i <= n; i++) {
printf("%d\n", a);
}
}
int randAB(int a, int b)
{
int r;
r = a+(int)(rand()*(b-a+1.0)/(1.0+RAND_MAX));
return r;
}
void main(void)
{
int c,data;
Queue q;
initialize(&q);
for(c=0;c<QMAX;c++){
data = randAB(LOWER,UPPER);
printf("%d\n",data);
insert(&q,data);
}
//print_result(q.box, QMAX);
while (!empty(&q)){
printf(" %d ", top(&q));
qdelete(&q);
}
printf("\n");
}
キューに関する
ページ移動
- 掲示板
- ↳ C言語何でも質問掲示板
- ↳ 四聖龍神録2 掲示板
- ↳ 四聖龍神録Plus掲示板
- ↳ AerobeatPlus掲示板
- 副次コンテンツ
- ↳ 作品お披露目掲示板
- 登録ユーザー用コンテンツ
- ↳ 登録ユーザー掲示板
- コミュニティフォーラム
- ↳ みんなでソースコードをレビューしよう
- ↳ 3DCGソフト使用者のコミュ
- ↳ Win32 API
- ↳ 組み込み系スクリプト言語をつかってみよう
- ↳ 東方好きあつまれ
- ↳ C言語誰でも交流サイト - mixC++ -
- ↳ ビット論理演算が好きな人♪
- ↳ 企画関係について語ろうか
- ↳ エフェクトアニメーション
- ↳ 学生で集まってみる?
- ↳ DirectX SDK
- ↳ マイコン/FPGA電子工作部
- ↳ PHPに可能性を無限大
- ↳ Code Golf を楽しもう!
- ↳ 作曲している人で話し合ってみませんか♪
- ↳ ソフト制作コミュ
- ↳ El Shaddai - エルシャダイ -
- ↳ PSPプログラミング
- ↳ CINEMA 4D
- ↳ お絵かきコミュニティ
- ↳ 素材作ってみたよ!
- ↳ OpenGL
- ↳ OpenCV
- ↳ RPGを作りたい!
- ↳ ポケモン好き集まれ
- ↳ ならば .NETをやらないか?
- ↳ 1から勉強してみないか?
- ↳ 赤髪超大好き♪
- ↳ ノースリーブ
- ↳ 伝説の戦士プリキュアを語ろう
- ↳ コンテストコミュニティー
- ↳ DXライブラリ何でも質問コミュニティ
- ↳ 四聖龍神録コミュニティ
- ↳ HTML/CSS/JavaScript
- ↳ 生放送コミュ
- ↳ サンプルを共有するコミュニティ
- ↳ おすすめマーカー
- ↳ minecraft
- ↳ Xtal Language
- ↳ マインクラフト
- ↳ 数学やらないか?
- ↳ 習ったことをプログラムで表してみよう!
- ↳ 小物アプリ作成や ら な い か
- ↳ AIの可能性は無限大
- ↳ 自作OS製作(GUI入門)[雑談]
- ↳ リレーコーディング
- ↳ Unix/Linux
- ↳ 競技プログラミングごっこやろうぜ
- ↳ 夏休みプログラミングイベント2012 in MixC++
- ↳ D言語を広めよう
- ↳ Scala布教の会
- ↳ 3Dゲーム作ろうぜ!モデリング~プログラミングまで
- ↳ 言語に興味を持ったら是非!!
- ↳ レイヴンズ・ネスト
- ↳ C言語とC++言語のコミュニティー!
- ↳ 放課後ふぁんたじあ
- ↳ マイ サンプルズ
- ↳ ガンヲタの館
- ↳ 歯科機器
- ↳ 歯科機器情報
- ↳ 52歳からはじめるC言語
- mixC++更新・仕様変更履歴