2013-10-16 4 views
0

단어가있는 행을 삽입 할 수있는 프로그램을 만들어야하며, 프로그램은 모든 단어를 첫 번째와 같이 만듭니다 (상단 소문자).대문자와 소문자

예 :
삽입 라인 - 아바 홀 fameee 클래스

프로그램의 출력은 다음과 같아야합니다 - 아바 홀 FamEee 클래스는

어떻게 전체 단어를 확인 할 수 있고, 거기에 어떤 상징을 얻을 - 위 또는 아래? 그리고 같은 계획으로 모든 말을하십시오.

+0

소년 아 ........ –

+3

이것은 "나에게 숙제를해라"는 웹 사이트가 아닙니다. 우리에게 당신의 노력과 당신이 갇혀있는 곳을 보여주세요. 우리는 도와주고 싶어합니다. –

+0

Yenots1, 나는 영어가 당신의 모국어가 아니지만 그 말에 한번 더 시간을 할애 할 수 있겠습니까? 또한, 당신이 시도한 것을 말하지 않았기 때문에이 질문은 그대로 주제에 관한 것이 아니며, 사람들이 해결해야 할 문제 일뿐입니다. – Gray

답변

3

[설명] 부울 배열을 만들고 첫 번째 단어의 각 문자의 대/소문자 정보를 캡처합니다. 동일한 부울 배열을 사용하여 남은 단어의 서식을 지정하십시오. 이게 내가 너를 도울 수있는 전부 야. 프로그램을 작성하고 포럼으로 돌아가서 더 많은 응답을 얻을 수 있습니다. 내가 대답 섹션에서 내 코멘트를 추가 코멘트 오전를 게시 할 권한이 없기 때문에

[답변] 여기 당신이 가서 ...

#include <stdio.h> 
#include <string.h> 

int main() { 

    char inputStr[] = "AbbA hall fameee class"; 
    char bool_arr[50]; 
    char *ptr; 
    int len = 0; 
    int loopcnt = 0; 
    int i = 0; 

    printf("Input Str: %s\n", inputStr);  

    ptr = strtok(inputStr, " "); 
    len = strlen(ptr); 

    for(i = 0; i < len; i++) { 
     if(toupper(ptr[i]) != ptr[i]) { 
      bool_arr[i] = 0; //Lower case 
     } 
     else { 
      bool_arr[i] = 1; //Upper case 
     } 
    } 

    while(ptr != NULL) { 
     if(strlen(ptr) < len) { 
      loopcnt = strlen(ptr); 
     } 
     else { 
      loopcnt = len; 
     } 

     for(i = 0; i < loopcnt; i++) { 
      if(bool_arr[i] == 0 && 
       (tolower(ptr[i]) != ptr[i])) { 
       ptr[i] = tolower(ptr[i]); 
      } 

      if(bool_arr[i] == 1 && 
       (toupper(ptr[i]) != ptr[i])) { 
       ptr[i] = toupper(ptr[i]); 
      } 
     } 

     printf("%s ", ptr);  

     ptr = strtok(NULL, " ");  
    } 
} 
+0

감사합니다. 이것은 완벽 해! – Yenots1

+1

@ Yenots1 : 네, 이제 복사해서 숙제에 붙여 넣기 만하면됩니다! 당신은 오늘 유용한 기술을 습득했습니다! – usr2564301

0
char str[]=" AbbA hall fameee class"; 
int flag=0; 
int i; 

for(i=0;i<len(str);i++) 
{ 
    if(flag==0 && str[i]==' ') 
    { 
     str[i+1]+=32; 
     flag=1; 
    } 
    else 
    { 
     flag=0; 
    } 

} 
+2

설명을 추가하면 좋을 것입니다. 이것은 "숙제 도움"유형 질문에 특히 중요합니다. 길이 때문에 – Gray

+0

을 컴파일 할 수 없습니다. – Yenots1

관련 문제