今天並沒有怎麼複習,但是對部分知識點做了一下回顧,還是發現了不少漏洞
1、定義數組時
static int arr[10];//數組中所有值爲0
int arr[10];//數組中值隨機
int arr[10]={0};//數組中所有值爲0
int arr[10]={1};//數組中初第一個元素都爲0
2、switch的參數可以爲int、 short、 char 或者 byte,還有enum
3、關於const和宏定義的區別並沒有掌握,詳細見day9
今天改進了萬年曆,更好看了一點,嘿嘿嘿
void wannianli(int year,int month,int day){
int runyear=0,daycount=0;
int allmonth[2][13]={{0,31,28,31,30,31,30,31,31,30,31,30,31},{0,31,29,31,30,31,30,31,31,30,31,30,31}};
if ((year%4==0&&year%100!=0)||year%400==0) {
runyear=1;
}
for (int i=1; i<=month; i++) {
daycount+=allmonth[runyear][i-1];
}
//daycount+=day;//一年中第幾天
//printf("%d \n",daycount);
//printf("%d",year-1 + (year-1)/4 - (year-1)/100 + (year-1)/400);
int monthweek[allmonth[runyear][month]];
for (int i=0; i<allmonth[runyear][month]; i++) {
monthweek[i]=(year-1 + (year-1)/4 - (year-1)/100 + (year-1)/400 + daycount+i+1)%7;
}
printf("% d.%d\n",year,month);
printf("日\t一\t二\t三\t四\t五\t六\t\n");
if (monthweek[0]!=0) {
for (int i=0; i<monthweek[0]; i++) {
printf("\t");
}
}
for (int i=0; i<allmonth[runyear][month]; i++) {
if (monthweek[i]==0) {
monthweek[i]+=7;
}
printf("%d\t",i+1);
if ((monthweek[i])%6==0) {
printf("\n");
}
}
printf("\n\n");
}
nt main(int argc, const char * argv[]) {
@autoreleasepool {
wannianli(2015,7,24);
wannianli(2015,8,24);
wannianli(2015,9,24);
}
return 0;
}
是不是好看了很多