반응형
임의 개의 수를 읽어 들여 최대값과 최소값 및 최대값과 최소값의 차를 구하는 프로그램을 while문을 포함하여 작성하라.
#include <stdio.h> int main() { // ※변수 선언 int num = 1, input, max, min; char conti = 'y'; do { // ※입력받기 printf("%d번째 수를 입력하세요:", num); scanf_s("%d", &input); // ※첫번째로 입력받은 수 일 때 if (num == 1) { max = input; min = input; } else if (num >= 2) { // ※첫번째로 입력받은 수가 아닐 때 input > max ? max = input : 0; input < min ? min = input : 0; do { while (getchar() != '\n'); //계속 입력받을지 확인 printf("계속 입력하시겠습니까? (y,n)"); scanf_s("%c", &conti, sizeof(char)); if (conti != 'Y' && conti != 'y' && conti != 'N' && conti != 'n') { printf("잘못 입력하셨습니다. \n"); } } while (conti != 'Y' && conti != 'y' && conti != 'N' && conti != 'n'); } num++; } while (conti == 'y' || conti == 'Y'); printf("입력하신 수 중 가장 큰 수는 %d, 가장 작은 수는 %d, 두 수의 차이는 %d 입니다. \n", max, min, max - min); return 0; }
순서도
-1^2+2^2-3^2+... + 100^2의 합을 구하는 프로그램을 while문을 이용하여 작성하라.
#include <stdio.h> int main() { int i = 1, line = 0, sum = 0; while (i <= 100) { if(i%2 == 0) { sum += i*i; printf(" +%5d", i*i); } else { sum -= i * i; printf(" -%5d", i*i); } i++; line++; if (line == 10) { line = 0; printf("\n"); } } printf(" = %d 입니다. \n", sum); }
순서도
반응형