2015-01-11 166 views
2

每當我在下面執行此代碼時,整個屏幕將填充紅色的網格圖案。我只想用紅色填充圓形區域。C:使用填充填充圓形

#include<graphics.h> 
#include<conio.h> 
void main(){ 
    int gm, gd=DETECT; 
    initgraph(&gd,&gm,"c:\\turboC3\\bgi"); 
    circle(100,100,50); 
    setfillstyle(HATCH_FILL,RED); 
    floodfill(100,100,RED); 
    getch(); 
    closegraph(); 
} 

輸出:

enter image description here

回答

3

在線路floodfill(100,100,RED),第三個參數必須是邊界的顏色。因爲默認情況下,你的圈子的邊框顏色爲WHITE,因此您的代碼更改爲:

#include<graphics.h> 
#include<conio.h> 
void main(){ 
    int gm, gd=DETECT; 
    initgraph(&gd,&gm,"c:\\turboC3\\bgi"); 
    circle(100,100,50); 
    setfillstyle(HATCH_FILL,RED); 
    //Change RED to WHITE. 
    floodfill(100,100,WHITE); 
    getch(); 
    closegraph(); 
} 

謝謝你,我今天學到了新的東西。 :)

+1

現在工作。謝謝很多答案! – user3382203