【データ構造学習記録6】-スタックアプリケーション

1.ベース変換

1.原則

なぜなら、除N取余この方法でN項変換を実現し、剰余の結果を逆の順序で出力するからです。逆の順序なので、そうです后进先出、それがスタックのモデルです。したがって、16進変換を完了するには、各剰余の結果をスタックに入れ、最後にすべてを出力するだけで済みます。
次に、10转N16進プログラム(0 <N <= 36)を与えます。

2.コードの実装

コードのこの部分は比較的単純なので、配列を直接使用してスタックをシミュレートします。

#include <stdio.h>

int main()
{
    
    
    int number;
    int stack[32];
    int top = 0;
    int N;

    scanf("%d %d", &number, &N);
    while(number > 0)
    {
    
    
        ++top;
        stack[top] = number % N;
        number /= N;
    }
    while(top > 0)
    {
    
    
	    if (stack[top] > 9)
        {
    
    
            printf("%c", stack[top]-10+'A');
        }
        else
        {
    
    
            printf("%c", stack[top]+'0');
        }
        --top;
    }
    printf("(%d)\n", N);

    return 0;
}

2.発現評価

ああ、これは、本がキューのアプリケーションを書いていないので、キューと一緒に話したいと思います。それで、私はこの質問をキューに入れてスタックし、一緒に話し合います。

おすすめ

転載: blog.csdn.net/u011017694/article/details/109387557