10개의 정수를 입력받아 100 미만의 수 중 가장 큰 수와 100 이상의 수 중 가장 작은 수를 출력하는 프로그램을 작성하시오. (입력되는 정수의 범위는 1이상 10000미만이다. 만약 해당하는 수가 없을 때에는 100을 출력한다.)
88 123 659 15 443 1 99 313 105 48 |
#include<stdio.h>
int main()
{
int num[10];
int a;
int min=9999;//입력되는 정수 범위는 10000미만이니 9999겠고
int max=0;
for(a=0;a<10;a++)
{
scanf("%d",&num[a]);
}
for(a=0;a<10;a++)
{
if(100>num[a]&&max<num[a])
{
max=num[a];
}
else if(100<num[a]&&min>num[a])
{
min=num[a];
}
if(max<1)//위에 까지는 알겠는데 이거 하나만 모르겠네요 모르겠다기 보다는 조금 아리송해서요
위에 max들어가있는 if문에 해당되지 않는정수가 입력되면 max는 0이되서 지금 이 if문이 실행되는건가요?
{
max=100;
}
if(min>10000)//이건 아까 10000미만이니까 넘으면 min을 100으로 하는거 이해가 가는데 위에 것이 제가 생각한거랑 맞는지 확인하고 싶어서요
{
min=100;
}
}
printf("%d %d",max,min);
printf("\n");
}
위에 문제입니다