跳轉到內容

C 程式設計基礎/實用函式

來自華夏公益教科書,開放的書籍,為開放的世界

在本章中,您將獲得一些可以用來使程式更友好的程式碼。我們每天都會看到很多程式。我們可以在 16 位 DOS 環境中製作這樣的程式嗎?不,我們不能。但我們可以儘量接近它。考慮到這一點,下面提供了一些您可能希望包含在程式中的特定函式。

在我們日常遇到的程式中,我們會看到輸出位於螢幕的特定部分,而不是像我們迄今為止看到的程式那樣位於最左側的角落。那麼如何在 DOS 中構建這樣的方框呢?以下是實現此目的的程式碼

雙線方框

[編輯 | 編輯原始碼]


void drawbox(int boxa,int boxb,int boxc,int boxd)
{
	int i,j;
	char s=205,c=201,q=186,d=187,e=200,f=188;
	gotoxy(boxa,boxb);
	cout<<c;
	gotoxy(boxa,boxd-1);
	cout<<e;
	gotoxy(boxc-1,boxb);
	cout<<d;
	gotoxy(boxc-1,boxd-1);
	cout<<f;
	for(i=boxa+1;i<boxc-1;i++)
	{
		for(j=boxb;j<boxd;j++)
		{
			gotoxy(i,j);
			cout<<s;
		}
	}
	for(i=boxa;i<boxc;i++)
	{
		for(j=boxb+1;j<boxd-1;j++)
		{
			gotoxy(i,j);
			cout<<q;
		}
	}
	for(i=boxa+1;i<boxc-1;i++)
	{
		for(j=boxb+1;j<boxd-1;j++)
		{
			gotoxy(i,j);
			cout<<" ";
		}
	}
	gotoxy(boxa+1,boxb+1);
}

傳遞給此函式的座標是我們要列印的方框的左上角和右下角的 x 和 y 座標。然後,在螢幕上的指定點上列印每個角的特殊字元。然後,使用 for 迴圈列印水平線和垂直線。然後使用 for 迴圈清除它們之間的空格,並在座標上列印 ' ' 字元。您可以嘗試試驗傳遞給 drawbox() 的值,並檢視結果。此函式的函式呼叫可能類似於

        drawbox(7,2,37,24);
	drawbox(45,2,75,24);

這兩個呼叫將在螢幕上建立兩個方框。即使您無法深入瞭解此函式,您也可以透過在 main() 函式之前貼上程式碼來輕鬆使用它。

華夏公益教科書