zerojudge c636.十二生肖

 zerojudge c636.十二生肖

解題思路:

1.switch case

2.建表


注意事項:

1.沒有民國0年,所以-100到-1年要加1    


2.取陣列的第負數個或超過你當初給的範圍會出現SEG ERROR:core dumped.

如:

int table[13];

cout<<table[-1];

 cout<<table[13];

而且陣列是從第0開始,所以要當你輸入12的倍數(包括但不限於)(假設為12K K為正整數)會是負1(因為12K%12-1=-1),這時要加12


如果下面的程式碼看不懂(不包括註解後文字),代表你要理解判斷符號會傳回布林值(假(0)或真(1))


如下:

                        num=num+(num<=0);//same as if(num<=0)num++;
               		num=(num%12)-1;
                	num=num+12*(num<0);// n=num<0; means that if num<0,n=1 . Else,n=0;  
                        //same as if(num<0)num+=12;


3.一個中文字至少占4空間(經過不斷的測試)

X:char table[12][3];

O:char table[12][4];



Comments

Popular posts from this blog

zerojudge c561. Bert 愛搗蛋

zerojudge d122. Oh! My Zero!!