MUstar

IoT C언어 0613 - 날짜입출력프로그램V2

Jun 15th, 2017
59
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <stdio.h>
  2. #include <string.h>
  3. #include <stdlib.h>
  4.  
  5. int menu(void);
  6. int view(void);
  7. int edit(int ch);
  8. int dele(void);
  9. int somo(void);
  10. int pause(int err);
  11. int end(void);
  12. int year , month, day, ckdel=0;
  13. int *py , *pm, *pd;
  14.  
  15. int main(void){
  16.     menu();
  17.     end();
  18. }
  19.  
  20. int menu(void){
  21.     py=&year;pm=&month;pd=&day;
  22.     *py=1980;*pm=4;*pd=5;
  23.     while(1){
  24.         int sele;
  25.         system("clear");
  26.         printf("날짜입출력프로그램V2\n");
  27.         printf("1)보기 2)수정 3)삭제 4)추가 5)일부수정 6)종료 \n");
  28.         printf(">");scanf("%d", &sele);
  29.        
  30.         if(sele==1) view();
  31.         else if (sele==2) edit(0);
  32.         else if (sele==3) dele();
  33.         else if (sele==4) edit(1);
  34.       else if (sele==5) somo();
  35.         else if (sele==6) break;
  36.         else pause(1);
  37.     }
  38. }
  39.  
  40. int view(void){
  41.     system("clear");
  42.     if(ckdel==1)printf("현재 필드가 비여있습니다.\n");
  43.     else printf("현재 입력된 날짜는 %d년/%d월/%d일 입니다.",*py,*pm,*pd);
  44.     pause(0);
  45. }
  46.  
  47. int edit(int ch){
  48.     system("clear");
  49.     while(2){
  50.     if((ch==1)&&(ckdel==0)){printf("값을 삭제해주세요.");break;}
  51.     else if((ch==0)&&(ckdel==1)){printf("값을 추가해주세요.");break;}
  52.     else{
  53.             if(ckdel==1)printf("새로 입력할 날짜를 입력해주세요.");
  54.             else printf("수정할 날짜를 입력해주세요.");
  55.             printf(" 년/월/일 구분은 스페이스바 또는 엔터로 구분합니다.\n");
  56.             printf(">");scanf("%d%d%d",py,pm,pd);
  57.             printf("값이 저장되었습니다.\n");
  58.             ckdel=0;
  59.             break;
  60.     }
  61.     }
  62.     pause(0);
  63. }
  64.  
  65. int dele(void){
  66.     *py=0x00;*pm=0x00;*pd=0x00;
  67.     system("clear");
  68.     printf("입력되어있는 날짜가 삭제되었습니다.\n");
  69.     ckdel=1;
  70.     pause(0);
  71. }
  72.  
  73. int somo(void){
  74.     int sel2, num;
  75.     while(3){
  76.     system("clear");
  77.     printf("멀 수정할래?\n");
  78.     printf("1)년 2)월 3)일\n");
  79.     printf(">");scanf("%d", &sel2);
  80.     if((sel2<=0)||(sel2>=4))pause(1);
  81.     else{
  82.         printf("값입력>");scanf("%d", &num);
  83.         if(sel2==1) *py=num;
  84.         else if(sel2==2)*pm=num;
  85.         else if(sel2==3) *pd=num;
  86.         else
  87.         printf("완료되었습니다.\n");
  88.         pause(0);
  89.         break;
  90.         }
  91.     }
  92. }
  93.  
  94. int pause(int err){
  95.     char p_dummy[100];
  96.     if(err==1){system("clear"); printf("잘못된 값을 입력했습니다.");}
  97.     printf("\n-------");
  98.     printf("\n계속하실려면 아무글자나 입력후 엔터를 눌려주세요.\n");
  99.     scanf("%s", p_dummy);
  100.     strcpy(p_dummy, " ");
  101. }
  102.  
  103. int end(void){
  104.     system("clear");
  105.     printf("프로그램을 종료합니다.\n");
  106.     return 0;
  107. }
RAW Paste Data