[혼공학습단]Chapter 03~04

suyeon·2022년 8월 25일
1

혼공단8기 C언어

목록 보기
2/6
post-thumbnail

chapter03-1|변수 확인문제(p71)

  1. 다음 자료 중에서 실수형에 O표를 하세요.
    답: float, double
    풀이과정: 실수형에는 flaot(4byte), double(8byte), long double(8byte 이상)

  2. 다음 프로그램의 실행결과를 예상해보세요.

    실행결과:

    풀이과정:
    a=a+1 = 1=0+1 a의 초기값이 0이기 때문에 a=0
    a=a+2 = 3=1+2 a의 값이 1이 되었기 때문에 a에 1대입
    a=a+3 = 6=3+3 a의 값이 3이 되었기 때문에 a에 3대입

  1. 국어, 영어, 수학 점수의 합을 구하고 세과목의 점수와 총점을 출력하는 프로그램을 작성하세요.

    실행결과:

    풀이과정:
    tot= kor(70)+eng(80)+mat(90)=240
    번거롭게 숫자끼리 더하지 않고 변수끼리 더하게 해서 더 편리하게 계산할 수 있다.


chapter03-2|데이터입력 확인문제(p82)

  1. 다음과 같이 변수가 선언 되었을 때, scanf 함수의 사용법이 옳은 것을 고르세요.
    ① scanf("%d",&ch);        풀이과정: "%c"가 되어야함
    ② scanf("%d",&sh);        풀이과정:"%hd"가 되어야함
    ③ scanf("%d%f",%in, %ft);
    ④ scanf("%f",&db);       풀이과정: "%lf"가 되어야함

    정답: ③

  2. 다음 프로그램의 빈칸에 알맞은 내용을 채워보세요.

    실행결과:

    풀이과정:

    • scanf함수는 키보드에서 입력한 값을 변수에 저장할 수 있는 함수이다.
    • #define CRT_SECURE_NO_WARNINGS은 시스템 보안 검사 기능을 제한하는 문장인 속성
    • char(%s) 배열에는 &기호를 붙이지 않는다./그 이외에 변수에는 &붙인다.
  3. 키보드로 문자를 입력하여 아스키 코드 값을 출력하는 프로그램을 작성하세요.

    실행결과:

    풀이과정:
    scanf("%c",&ch); 변수 ch에 문자 입력
    아스키코드값 = 정수 = %d


chapter03-1|변수 확인문제(p71)

  1. 다음 자료 중에서 실수형에 O표를 하세요.
    답: float, double
    풀이과정: 실수형에는 flaot(4byte), double(8byte), long double(8byte 이상)

  2. 다음 프로그램의 실행결과를 예상해보세요.

    실행결과:

    풀이과정:
    a=a+1 = 1=0+1 a의 초기값이 0이기 때문에 a=0
    a=a+2 = 3=1+2 a의 값이 1이 되었기 때문에 a에 1대입
    a=a+3 = 6=3+3 a의 값이 3이 되었기 때문에 a에 3대입

  1. 국어, 영어, 수학 점수의 합을 구하고 세과목의 점수와 총점을 출력하는 프로그램을 작성하세요.

    실행결과:

    풀이과정:
    tot= kor(70)+eng(80)+mat(90)=240
    번거롭게 숫자끼리 더하지 않고 변수끼리 더하게 해서 더 편리하게 계산할 수 있다.


chapter03-2|데이터입력 확인문제(p82)

  1. 다음과 같이 변수가 선언 되었을 때, scanf 함수의 사용법이 옳은 것을 고르세요.
    ① scanf("%d",&ch);        풀이과정: "%c"가 되어야함
    ② scanf("%d",&sh);        풀이과정:"%hd"가 되어야함
    ③ scanf("%d%f",%in, %ft);
    ④ scanf("%f",&db);       풀이과정: "%lf"가 되어야함

    정답: ③

  2. 다음 프로그램의 빈칸에 알맞은 내용을 채워보세요.

    실행결과:

    풀이과정:

    • scanf함수는 키보드에서 입력한 값을 변수에 저장할 수 있는 함수이다.
    • #define CRT_SECURE_NO_WARNINGS은 시스템 보안 검사 기능을 제한하는 문장인 속성
    • char(%s) 배열에는 &기호를 붙이지 않는다./그 이외에 변수에는 &붙인다.
  3. 키보드로 문자를 입력하여 아스키 코드 값을 출력하는 프로그램을 작성하세요.

    실행결과:

    풀이과정:
    scanf("%c",&ch); 변수 ch에 문자 입력
    아스키코드값 = 정수 = %d


chapter04-1|산술 연산자, 관계 연산자, 논리 연산자 확인문제(p97)

  1. 4.0과 1.2의 덧셈, 뺄셈, 곱셈, 나눗셈을 한 값을 소수점 이하 첫째 자리까지 출력하세요.

    실행결과:

    풀이과정:

    printf("%.1lf + %.1lf = %.1lf\n", a, b, a + b);		//4.0 + 1.2 = 5.2
     printf("%.1lf - %.1lf = %.1lf\n", a, b, a - b);		//4.0 - 1.2 = 2.8
     printf("%.1lf * %.1lf = %.1lf\n", a, b, a * b);		//4.0 * 1.2 = 4.8
     printf("%.1lf / %.1lf = %.1lf\n", a, b, a / b);		//4.0 / 1.2 = 3.3
  1. 두 과목의 점수를 입력하여 평균을 출력하는 프로그램을 작성하세요.

    실행결과:

    풀이과정:
    ex) a에 70, b에 85로 입력받기
    tot = a(70) + b(85) = 155
    avg = tot(155) / 2.0 = 77.5

  2. 신청한 학점과 평점을 계산하여 10힉점 이상이고 평점 평균이 4.0을 넘는 경우 1을 출력하고, 그렇지 않으면 0을 출력하는 프로그램.

    실행결과:

    풀이과정:
    credits = kor(3) + eng(5) + mat(4) = 12
    grade = ((kscore(3.8) + escore(4.4) + mscore(3.9)) / 3) = 4.033333333333333
    res=((credits가 10보다 크거나 같고) &&(and연산자) (grade가 4.0보다 크다))


    chapter04-2|그 외 유용한 연산자 확인문제(p119)

    1. short형과 long형 중 크기가 큰 자료형이 무엇인지 출력하시오

      실행결과:

      풀이과정:
      res = sizeof(long)(4byte) >= sizeof(short)(2byte)
      printf("%s", (res==1) ? "long" : "short");에서 res가 1이면 long출력, 아니면 short 출력

    2. 야구장의 좌석수가 70개, 입장객 수가 65명일 때 입장률 출력.

      실행결과:

      풀이과정:
      double rate = (double)audience/ (double)seats * 100;
      seats, audience 변수는 원래 int형이었지만 rate변수가 double이기 때문에 형변환(int->double)을 해주었다.
      %.1lf%% .1은 소수점 첫 번째 자리까지 나타내게 해준다.

    3. 3.76시간은 몇 시간, 몇 분, 몇 초인지 출력하기.

      실행과정:

      풀이과정:

      hour = (int)time;		//time 형변환 = 3
      time = time - hour;		//3.76 - 3 = 0.76
      time = time * 60.0;		//0.76 * 60.0 = 45.6
      min = (int)time;		//time 형변환 = 45
      time = time - min;		//일분이 안되는 부분만을 다시 저장
      time = time * 60;		//초 단위로 환산
      sec = (int)time;		//정수 부분만을 골라내어 초로 저장한다

선택미션/ch.04도전 실전 예제(p120)

체중관리 프로그램

실행결과

profile
📖개발블로그📖

0개의 댓글