[1046]オーディオ聖書

2019年11月29日

最小を見つけるために、再びそれを横断する:問題の論理機能に注意を呼び出す再び書き込みを開始する1046くし良いアイデア。スムーズなを思い付くために多くの方法があります✍

する#include <stdio.hに> 
する#include <STDLIB.H> 

INT find_min(INTマップ[16] [3]、INT R、G INT、INT B)
{ 
    int型のDIS [16]、min_index = 0、分= 255 * 255 * 255、I。
    (I ++; I <16、I = 0)のための
    { 
        [DIS [I] =(R-マップ[i]が[0])*(Rマップ[i]が[0])+(G-マップ[I] 1])*(Gマップ[i]を[1])+(B-マップ[I] [2])*(B-マップ[I] [2])。
    } 
    のためには、(i 0 =; I <16; I ++)
    { 
        IF(DIS [I] <分)
        { 
            min_index = I。
            分= DIS [i]は、
        } 
    } 
    戻りmin_index。
} 
int型のmain()
{ 
    int型のマップ[16] [3]。
    INTインデックス、I、R、G、B。
    ための式(I = 0; iが<16; I ++)
    {
        scanf関数( "%D%D%D"、&マップ[i]が[0]、&マップ[I] [1]、&マップ[I] [2])。
    } 
    のscanf( "%D%D%D"、&R&G、およびB)。
    一方、(R> = 0)
    { 
        インデックス= find_min(マップ、R、G、B)。
        printf(R、G、B、地図[インデックス] [0]、地図[インデックス] [1] "(%のDは、%D、%d)は(%のDは、%D、%d)は\ nにマップ" 、地図[インデックス] [2])。
        scanf関数( "%D%D%D"、&R&G、およびB)。
    } 
    0を返します。
}

 

おすすめ

転載: www.cnblogs.com/calm-blogme/p/11967005.html