'C언어'에 해당되는 글 3건

  1. 2015.03.27 C언어 HW 03
  2. 2015.03.27 C언어 HW 02
  3. 2015.03.27 C언어 HW 01

C언어 HW 03

|


[ hw03 ]


---------------------------------------------------------------------


#1


#include <stdio.h>


int main(){

int age;


while(1)

{

printf("나이를 입력하시오 : ");

scanf("%d", &age);


if (age >= 0)

break;

printf("나이를 잘못 입력하셨습니다. 다시 입력 해 주세요.\n");      // 사실 문제에선 그리 요구하는 필수사항은 아니었지만..ㅎㅎ

}


if (age < 8 || age >59)                                   // 어떻게 하면 더 효과적으로 if 및 else를 사용할 수 있을까?

printf("입장료는 무료입니다.\n");

else if (age < 20)

printf("입장료는 2,000원 입니다.\n");

else

printf("입장료는 3,000원 입니다.\n");

return 0;


}



---------------------------------------------------------------------


#2


#include <stdio.h>


int main(){

char c;


printf("한 문자를 입력하시오 : ");

scanf("%c", &c);


if (48 <= c && c <=57)

printf("숫자 입니다.\n");

else if (65 <= c && c <= 90)

printf("%c", c+32);

else if (97 <= c && c <= 122)

printf("%c", c-32);

else

printf("영문자나 숫자가 아닙니다");

return 0;


}


---------------------------------------------------------------------


#3


#include <stdio.h>


int main(){

int year;


printf("연도를 입력하시면 그 해가 윤년인지 아닌지 알려드립니다.\n연도를 입력하시오 : ");

scanf("%d", &year);


if (year % 400 == 0)

printf("%d년은 윤년입니다.\n", year);

else if (year % 100 == 0)

printf("%d년은 평년입니다.\n", year);

else if (year % 4 == 0)

printf("%d년은 윤년입니다.\n", year);

else

printf("%d년은 평년입니다.\n", year);

return 0;


}


---------------------------------------------------------------------


#4


#include <stdio.h>


int main(){

int a, b;


while(1)

{

printf("서로 다른 두 숫자를 입력하시오 (a, b) : ");

scanf("%d, %d", &a, &b);

if (a!=b)

break;

else

printf("다시 입력하시오.\n");           // 조건에서 서로 다른걸 입력하랬는데 그걸 또 검사하는 나란 놈은..ㅋㅋ

}


if (a>b)

printf("%d\n", a);

else

printf("%d\n", b);

return 0;


}



---------------------------------------------------------------------



#5



#include <stdio.h>


int main(){

int grade;


printf("학년에 따른 등록금 안내 해드립니다. 몇학년 이세요? : ");

scanf("%d", &grade);


switch(grade)

{

case 1 : printf("300만원\n"); break;              // 근데 왜 break; 까지 엔터 치면 칸이 이쁘게 안나올까..? 결과는 맞는데.ㅎㅎ

case 2 : printf("250만원\n"); break;

case 3 : printf("250만원\n"); break;

case 4 : printf("200만원\n"); break;

default : printf("그런 학년은 없습니다.\n");    // default 라 함은 else와 같은 맥락~

}

return 0;


}


---------------------------------------------------------------------


#6


#include <stdio.h>


int main(){

int no;

float kw;


printf("사용 전력랑(Kw)를 입력하세요 : ");

scanf("%f", &kw);


while(1)

{

printf("코드번호를 입력하세요. (가정용은 1, 산업용은 2, 교육용은 3 입니다.) : ");

scanf("%d", &no);


if(no == 1 || no == 2 || no == 3)

break;

else

printf("코드번호를 잘못 입력하셨습니다. 다시 입력하세요.\n");

}


switch(no)

{

case 1 : printf("%0.1f원 입니다.\n", kw*127.8+1130); break;

case 2 : printf("%0.1f원 입니다.\n", kw*88.5+660); break;

case 3 : printf("%0.1f원 입니다.\n", kw*52.0+370); break;

}

return 0;


}


---------------------------------------------------------------------




'Study > C언어' 카테고리의 다른 글

C언어 HW 06  (0) 2015.03.27
C언어 HW 05  (0) 2015.03.27
C언어 HW 04  (0) 2015.03.27
C언어 HW 03  (0) 2015.03.27
C언어 HW 02  (0) 2015.03.27
C언어 HW 01  (0) 2015.03.27
Trackback 0 And Comment 0


C언어 HW 02

|


[ hw02 ]


---------------------------------------------------------------------


#1


#include <stdio.h>

#include <stdlib.h>


int main(){


int age;

char *location, *blood, *name;


location = (char *)malloc(sizeof(char) * 10);    // 기억이 나지 않아 살짝 구글링 했지.. 

blood = (char *)malloc(sizeof(char) * 10);       // 근데 이렇게 말고 진짜로.. 내가 입력받는 만큼 생성하는 것은 없나?

name = (char *)malloc(sizeof(char) * 10);

printf("당신이 사는 곳은?   ");

scanf("%s", location);

printf("당신의 혈액형은?   ");

scanf("%s", blood);

printf("당신의 나이는?   ");

scanf("%d", &age);

printf("당신의 이름은?   ");

scanf("%s", name);

printf("아하, 당신은 %s에 사는 %d살의 %s이라는 분이군요! 혈액형은 %s.\n", location, age, name, blood);


free(location);                // free로 메모리 없애주기

free(blood);

free(name);


return 0;


}


---------------------------------------------------------------------


#2


#include <stdio.h>


int main(){


float second;


printf("10km/h로 달리는 철수가 달린 초(second)를 입력하면 뛴 거리(km)를 계산하는 프로그램 입니다.\n철수가 달린 초(second) : ");

scanf("%f", &second);


// 10km/h -> 10/60/60 km/s          // 1초에 몇키로를 가는지 계산하는 중..ㅋㅋ


printf("철수가 뛴 거리(km) : %0.3f\n", ((second*10)/60)/60);      // 1초에 몇키로를 가는지만 알면 거기에 시간을 곱하면 된다.


return 0;


}


---------------------------------------------------------------------


#3


#include <stdio.h>


int main(){


int minute, day, hour;


printf("분(min)을 입력하세요 : ");

scanf("%d", &minute);


day = minute/(24*60);                       // day는 int 형이기 때문에 나누면 정수만 입력된다. 즉 몇일인지가 day 입력 된다.

minute = minute - (day*24*60);           // 그리고 입력된 분에서 day 대한 분만큼 뺀다.

hour = minute/60;                            // 그리고 같은 원리로 시간이 int형이니 초로 나눠서 시간을 만든다.

minute = minute -(hour*60);                // 역시나 같은 원리~


printf("%d 일  %d 시간  %d 분\n", day, hour, minute);


return 0;


}



---------------------------------------------------------------------


#4


#include <stdio.h>


int main(){


float time;

int hour, minute, second;


printf("시간을 입력하세요 : ");

scanf("%f", &time);


hour = time;

time = time - hour;             // time은 실수, hour은 정수이므로 소수부분만 time에 다시 입력되겠지..ㅎㅎ

minute = time * 60;            // 그리곤 거기에 60을 곱해서 다시 int형인 분으로 넣으면 몇분인지 정수만 또 나온다.


// 1분 = 60초


second = ((time * 60) - minute)*60;     // 여기선 다시 분에 대한 소수점만 나오게 한다음 60을 곱해서 몇초인지 구함


printf("%d시간 %d분 %d초\n", hour, minute, second);

return 0;


}



---------------------------------------------------------------------


#5


#include <stdio.h>


int main(){


float time;

int day, hour, minute, second;


printf("일 수를 입력하세요 : ");

scanf("%f", &time);


day = time;


time = time - day;                                 // 이것도 위에랑 비슷~ 소수부분만 남기는 스킬을 활용했다.

//0.xx 일 남음 & 1일 = 24시간               // 근데 알고보니 뭐 시간에 관련된 함수 있는거 아님..? ㅋㅋㅋㅋㅋ

hour = time * 24;


time = (time * 24) - hour;

// 0.xx 시간 남음 & 1시간 = 60분

minute = time * 60;              // 1시간이 60분이니 시간을 나타낸 소수점에 60을 곱하면 소수점이 몇분인지 나온다.


time = (time * 60) - minute; 

//0.xx 분 남음 & 1분 = 60초

second = time * 60;             // 위에랑 같은 원리



printf("%d일 %2d시간 %2d분 %2d초\n", day, hour, minute, second);

return 0;


}



---------------------------------------------------------------------


#6


#include <stdio.h>


int main(){


printf("char             : %d 바이트\n", sizeof(char));            // 각각의 형이 몇바이트인지 알기 위함임.

printf("short            : %d 바이트\n", sizeof(short));

printf("int              : %d 바이트\n", sizeof(int));

printf("long             : %d 바이트\n", sizeof(long));

printf("float            : %d 바이트\n", sizeof(float));

printf("double           : %d 바이트\n", sizeof(double));

printf("long double      : %d 바이트\n", sizeof(long double));

return 0;


}



---------------------------------------------------------------------


#7


#include <stdio.h>


int main(){


int kor, eng, math;


printf("각각의 점수를 입력하시오(국어, 영어, 수학) :  ");

scanf("%d, %d, %d", &kor, &eng, &math);


printf(" ==================================================\n");

printf("│  국어  │  영어  │  수학  │  총점  │  평균  │\n");

printf(" ==================================================\n");

printf("│     %2d │     %2d │     %2d │    %3d │   %0.2f │\n", kor, eng, math, kor+eng+math, (kor+eng+math)/3);

printf(" ==================================================\n");

return 0;            // 여기서 다시 공부. int 형으로 받아도 실수가 발생할 때만 출력을 실수로 하면 된다.


}



---------------------------------------------------------------------


#8


#include <stdio.h>


int main(){


printf("C에서 주석문을 넣는 방법에는 %c%c %c%c %c%c과  %c%c %c%c%c 등이 있다.\n:", 47, 42, 126, 126, 42, 47, 47, 47, 126, 126, 126 );                 // ' // '  나  /*   */  때문에 해당 기호에 대한 아스키코드를 썼는데... 일부만 써도 될껄 그랬다는 생각이 든다..ㅎㅎ

printf("줄을 바꾸려면 특수문자 %cn을 출력하면 된다.\n", 92);

printf("C에서 문자열 상수는 %c %c%c %c로, 문자상수는 %c%c%c로 표시한다.\n", 34, 126, 126, 34, 39, 126, 39);

return 0;


}



---------------------------------------------------------------------


#9



#include <stdio.h>


int main(){


int speed;

float hour, minute, second;


printf("시속(km/h) : ");

scanf("%d", &speed);

printf("운전시간(시, 분, 초) : ");

scanf("%f, %f, %f", &hour, &minute, &second);


//1시간에 120km, 1분에 2km, 1초에 2/60 km)     // 각 시간 단위당 몇키로 갔는지 계산 함


printf("\n달린 거리(km) : %0.2f\n", (120*hour)+(2*minute)+(second/30));

return 0;


}



'Study > C언어' 카테고리의 다른 글

C언어 HW 06  (0) 2015.03.27
C언어 HW 05  (0) 2015.03.27
C언어 HW 04  (0) 2015.03.27
C언어 HW 03  (0) 2015.03.27
C언어 HW 02  (0) 2015.03.27
C언어 HW 01  (0) 2015.03.27
Trackback 0 And Comment 0


C언어 HW 01

|


이 게시판 들에는 학원에서 내준 숙제에 대해 내 나름대로의 풀이를 적으려 한다.

각각의 문제는 보내준 분의 개인 자료이니 나만의 답만 적으려 한다.

문제가 무엇이었을지, 결과값은 어떻게 나올지 내 스스로 유추하는 것도 공부일듯~




[ hw01 ]


---------------------------------------------------------------------


#1


#include <stdio.h>


int main(){

printf("컴퓨터시스템 학생들이\n모두 컴퓨터프로그래밍을\n");

printf("잘 할 수 있기를 바랍니다.\n");


return 0;

}


---------------------------------------------------------------------


#2


#include <stdio.h>


int main(){

int age;

printf("나이를 입력하세요: ");

scanf("%d", &age);

printf("당신은 10년 후에 %d살입니다.\n", age+10);


return 0;

}



---------------------------------------------------------------------


#3


#include <stdio.h>


int main(){

int w, h;


printf("== 사각형의 면적계산 프로그램 ==\n");

printf("사각형의 가로길이: ");

scanf("%d", &w);

printf("사각형의 세로길이: ");

scanf("%d", &h);

printf("\n사각형의 면적은 %d입니다.\n", w*h);


return 0;

}


---------------------------------------------------------------------


#4


#include <stdio.h>


int main(){


char a;


printf("문자를 입력하세요: ");

scanf("%c", &a);

printf("문자 = %c       ASCII코드값 = %d\n", a, a);


return 0;


}



---------------------------------------------------------------------


#5


#include <stdio.h>


int main(){


char s[10] = {0};            // pointer 변수로 받아도 될듯.


printf("당신의 이름은 무엇입니까?  ");

scanf("%s", &s);

printf("당신의 이름은 %s 이군요..\n", s);

return 0;


}



---------------------------------------------------------------------


#6


#include <stdio.h>


int main(){


int c;


printf("온도(C)를 입력하세요: ");

scanf("%d", &c);

printf("화씨(F)온도는 %f도입니다.\n", 1.8*c+32);      // 이거 때문에 처음엔 좀 힘들었지..ㅎㅎ %f로 출력. 지금이라면 소수점도 넣을텐데


return 0;

}



---------------------------------------------------------------------


#7


#include <stdio.h>


int main(){


int bp, dp;


printf("과자 판매액(만원)     : ");

scanf("%d", &bp);

printf("음료수 판매액(만원)   : ");

scanf("%d", &dp);

printf("오늘의 수익(만원)     : %0.2f\n", 0.15*bp+0.1*dp);   // 여기서 바로 소수점 제한을 뒀군. bp와 dp는 정수로, 출력은 실수로~

return 0;


}


---------------------------------------------------------------------




'Study > C언어' 카테고리의 다른 글

C언어 HW 06  (0) 2015.03.27
C언어 HW 05  (0) 2015.03.27
C언어 HW 04  (0) 2015.03.27
C언어 HW 03  (0) 2015.03.27
C언어 HW 02  (0) 2015.03.27
C언어 HW 01  (0) 2015.03.27
Trackback 0 And Comment 0


prev | 1 | next