C언어 및 실습 2021 1학기 중간고사 (김용운 교수님)

2.논리적으로 틀린 부분을 찾아 옳게 고쳐쓰기.

#include <stdio.h>

void main()

{

int score;

printf("점수를 입력하시오. : ");

scanf("%d", &score);

if ( score>=60 )

printf(" degree='D' \n");

else if ( score>=70 )

printf(" degree='C' \n");

else if ( score>=80 )

printf(" degree='B' \n");

else if ( score>=90)

printf(" degree='A' \n");

else

printf(" degree='F' \n");

}

정답.

#include <stdio.h>

void main()

{

int score;

printf("점수를 입력하시오. : ");

scanf("%d", &score);

if ( score>=90)

printf(" degree='A' \n");

else if ( score>=80 )

printf(" degree=‘B' \n");

else if ( score>=70 )

printf(" degree='C' \n");

else if ( score>=60 )

printf(" degree=‘D' \n");

else

printf(" degree='F' \n");

}

//첫 번째 조건의 범위가 이후의 조건을 포함하므로 이후의 조건 검사는 이뤄지지 않음

3.for문을 while문으로 바꿔서 쓰기

# include <stdio.h>

void main(void)

{

int i , sum;

sum = 0;

for( i = 1; i <= 100; i++)

{

sum + = i;

}

printf( "1 부 터 100 까지의 정수의 합 : %d\n\n",sum);

}

정답.

#include <stdio.h>

void main(void)

{

int i , sum;

sum = 0;

i = 1;

while (i <= 100)

{

sum + = i;

i++;

}

printf ("1 부 터 100 까지의 정수의 합 : %d\n\n" , sum);

}

4.while문을 for문으로 바꿔서쓰기

#include <stdio.h>

void main (void)

{

i n t i , sum ;

sum = 0 ;

i = 1 ;

while (i <= 100)

{

sum + = i;

i++;

}

printf("1 부 터 100 까지의 정수의 합 : %d\n\n" , sum);

정답.

#include <stdio.h>

void main(void)

{

long fact = 1;

int i = 1 , n ;

printf ("정수를 입력하시오 : ");

scanf("%d", &n);

for( ; ; )

{

if( I <= n )

face * = i

else

break;

i++;

}

printf("(%d!) 은 % d 입니다.\n\n", n, fact);

}

5.for문을 이용하여 다음과 같은 구구단 만들기 for,while,do while문중 하나를 꼭 사용할것

정답.for문

#include <stdio.h>

void main()

{

int i, j, su, dan;

for ( i = 0; i <= 2; i++ ) {

for ( su = 1; su <= 9; su++ ) {

for ( j = 1; j <= 3; j++ ) {

dan = 3 * i + j;

printf("%d * %d = %2d\t", dan, su, dan * su);

}

printf(" \n");

}

printf(" \n");

}

}

정답.while문

#include <stdio.h>

void main()

{

int i = 0, j = 1, su = 1, dan;

while (i <= 2) {

su = 1;

while (su <= 9) {

j = 1;

while (j <= 3) {

dan = 3 * i + j;

printf("%d * %d = %2d\t", dan, su, dan * su);

j++;

}

su++;

printf(" \n");

}

i++;

printf(" \n");

}

}

6.switch 문을 이용하여 양수와 음수 구별하기

#include <stdio.h>

void main()

{

int num,number = 0;

printf("enter a number: ");

scanf_s("%d", &num);

switch( number >> 31)

{

case -1 :

printf("number is negative\n ");

break;

default :

printf("number is positive\n ");

}

}