영단어 문자열을 입력 받아서 아스키 코드 값이 가장 큰 문자를 출력하는 문제입니다
#include<stdio.h>
int main(void)
{
char str [100];
int i,j;
int max;
scanf("%s",str);
for(i=0; str[i]!=0 ;i++){ // 문자 길이
}
for(j=0; j<i ;j++){ // 아스키 코드가 가장큰 문자 구하기
if(str[j]>=str[j+1]){
max=str[j];
}
else{
max=str[j+1];
}
}
printf("%c",max);
}
이 경우에 가령 예시 LOVE 를 넣을 경우 , 원하는 답 V 가 아닌 E 가 출력이 됩니다
for(j=0; j<i-1 ;j++){ //
if(str[j]>=str[j+1]){
max=str[j];
}
else{
max=str[j+1];
}
}
하지만 이 경우 ( for 조건을 j<i-1 로 바꾼 경우 ) 에는 정상적으로 V 가 출력됩니다 , 아마 조건 문이 잘못된 것 같기는 한데 뭐가 잘못된 건지는 잘 모르겠습니다
알려주세요 ㅠㅠ