#include <stdio.h>
#include <stdlib.h>
void star(int);
int main()
{
int temp;
while (1){
printf("How many lines ? <1..100> ");
scanf("%d", &temp);
if(getchar() != '\n')
printf("Invalid input - Range 1..99 <ODD NUMBER>\n");
else if (temp%2 == 1 && temp < 100)
star(temp);
else if (temp == 0)break ;
else
printf("Invalid input - Range 1..99 <ODD NUMBER>\n");
}
}
void star(int temp)
{
int i, j;
int under = 0;
for (i = temp; i > 0; i -= 2) {
for (j = i / 2; j > 0; j--) {
if (i == temp) under++;
printf(" ");
}
for (j = 0; j < temp - ((i / 2) + (i / 2)); j++) {
printf("*");
}
printf("\n");
}
for (i = 1; i <= under; i++) {
for (j = 0; j < i; j++) {
printf(" ");
}
for (j = 0; j < temp - (i * 2); j++) {
printf("*");
}
printf("\n");
}
}
별찍기 코드인데 예외처리 추가된건데 여기서 문제가 공백문자만 입력하거나 1 a 이렇게 하면 오류메시지가 출력해야되는데 이게 잘 안되네요 ㅠㅠ 방법이 있을까요