Advertisement
Wanderlust1998

in lịch

Mar 15th, 2018
873
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include<stdio.h>
  2. int ngay(int thang,int nam){        // Ham nay tra ve so ngay trong thang ke tu thang 1 -> thang 12
  3.     switch(thang){
  4.         case 1:
  5.         case 3:
  6.         case 5:
  7.         case 7:
  8.         case 8:
  9.         case 10:
  10.         case 12:return 31;  // Thang 1 3 5 la 31 ngay
  11.         case 4:
  12.         case 6:
  13.         case 9:
  14.         case 11:return 30;  // Thang 4 6 la 30 ngay
  15.         case 2: if(nam%400==0 ||(nam%100!=0 && nam%4 == 0)){
  16.         return 29;  // Thang 2 la 28 ngay
  17.     }
  18.     return 28;
  19. }}
  20. int main(){
  21.     printf("Nhap nam: ");
  22.     int nam;
  23.     scanf("%d",&nam);
  24.     int nhuan = (nam%28)/4;
  25.     if(nhuan!=0) nhuan--;
  26.     int m = (nam%7)+6+nhuan;    // danh dau vi tri in so ( ko can thiet lam . Chi la lam dep)
  27.     int move ;  // so khoang trang se in ra ( cho dep )
  28.     for(int i=0;i<12;i++){  // 6 thang for 6 lan
  29.        
  30.         move = m;   // cho move gia tri de in khoang trang
  31.         printf("\n\nThang %d\n",(i+1));     // Thang 1 , 2 3 4 5 6
  32.         printf("\nSu\tMo\tTu\tWe\tTh\tFr\tSa\n");   // Chu nhat ... Thu 7
  33.         if(move >=7) move=move-7;   // bo di cung duoc :v cho dep thoi .
  34.     //      printf("\n%d<<<<\n",(ngay(i+1,nam)));
  35.         for(int k=0;k<move;k++){    // in so khoang trang theo so move
  36.             printf("  \t");
  37.         }
  38.    
  39.         for(int j=move;j<(ngay(i+1,nam)+move);j++){
  40.            
  41.             if(j%7==0&&j!=0) {
  42.                 printf("\n");       // in het 7 ngay trong tuan thi xuong dong
  43.                 m=0;        // xuong dong xong thi cho m ve 0
  44.             }
  45.             printf("%2d\t",j+1-move);   // in ngay
  46.             m++;        // ngay tang len 1 thi move tang len 1 (move luon phai nho hon 7 de danh dau vi tri trong tuan)
  47.         }
  48.     }
  49.     return 0;
  50. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement