一、綀習題目:顯示聖誕樹功能。
二、需求:
1、使用者 可以輸入 顯示聖誕樹的符號(取一個字)。
2、使用者 可以輸入 顯示聖誕樹的階層大小(取數字)。
3、使用者 可以選擇是否繼續或離開程式(按下y、Y為繼續,n、N及其它任一鍵為離開程式)。
4、程式開始時顯示聖誕樹的範例。

三、流程:
1、顯示程式標題及顯示聖誕樹的範例
2、使用者輸入符號
3、使用者輸入大小
4、顯示聖誕樹
5、是否繼續執行程式
6、選是 -> 從流程2開始
7、選否 -> 離開關閉程式

寫看看這綀習題目吧!

四、參考解答:
#include 
#include

using namespace std;
/*
使用Dev-c++ 4.9.9.2 開發
作者:levin
*/

/*--------------------function start-----------------------*/
/*
顯示一般資訊 並 換幾行
*/
void printMsgNewline(char msg[],int line){
char lines ;
printf("%s",msg);
if(line > 0){
for(int i =0;i0){
printf("輸入錯誤! ");
}
printf("請您輸入想要的階層大小\n");
re++;
}while(1 != scanf("%d",&n));
}

/*
輸入字 取第一個字
*/
void inCharAndPrint(char &w,char msg[]){
do{
printMsgNewline(msg,1);
fflush(stdin);// 刷新緩沖區
}while(1 != scanf("%1s",&w));
}


/*
計算 腳的位置
*/
void printToe(int n){
int toe = 1;
if(n >= 4){
toe = n/2;
}
do{
printfBlank(1,n);
printMsgNewline("█",1);
toe--;
}while(toe > 0);
}

/*
計算顯示 Merry Christmas 的位置
*/
void printEnd(int n){
int endBlank=0;
if(n >4){
endBlank = n/2;
}
printfBlank(1,endBlank);
printMsgNewline("Merry Christmas",1);
}
/*
Merry Christmas主流程
*/
void merryChristmasMain(int n,char w)
{
printf("顯示的符號:%c\n顯示的階層:%d",w,n);
printMsgNewline("",1);
printfBlank(1,n);
printMsgNewline("★",1);

for (int i=1 ; i<=n; i++)
{
printMsgNewline(" ",1);
printfBlank(i,n);
printfSymbol(w,i+i);
printMsgNewline("",1);
}
printToe(n);
printEnd(n);
}
/*
顯示範例樣式
*/
void printExample(){
printMsgNewline("顯示結果範例:",1);
merryChristmasMain(4,'*');
}

int main(int argc, char *argv[])
{
int n;
char w,rePlay;
printMsgNewline("Hello~!\n這是顯示一個聖誕樹程式",2);
printExample();
do
{
printMsgNewline("開始!!",2);
inCharAndPrint(w,"請您輸入想要顯示的符號");
inTreeSize(n);

printMsgNewline("",4);
merryChristmasMain(n,w);
printMsgNewline("",2);

inCharAndPrint(rePlay,"是否繼續:\n 按下(y、Y)為繼續程式\n 按下(n、N及其它任一鍵)為不繼續程式\n輸入完請按下(Enter)");
printMsgNewline("",7);

} while( rePlay == 'y' || rePlay == 'Y' );

return EXIT_SUCCESS;
}





五、測試結果:
圖1 執行開始,顯示範例


圖2 輸入 符號 及 大小


圖3 顯示結果及是否繼續


六、其它參考

C/C++ 目錄

















其它文章

arrow
arrow
    文章標籤
    c C語言 綀習題
    全站熱搜

    PG Levin Li 發表在 痞客邦 留言(0) 人氣()