2010-11-23 2 views
0

안녕하세요, 제가 할 수있는 일을 성취하려고합니다. 그러나 나의 시도는 매번 실패하는 것처럼 보입니다. 내 노력은 Objective -c에서 코드 작성을 배우고 좋은 진행을하고있다. 내가 뭘하고 싶은지는 현재의 응용 프로그램에 루프를 추가하여 마지막에 다시 실행하거나 그와 관련하여 어떤 것을하고 싶다면 예 또는 아니오로 회신합니다. 프로그램이 종료되지 않았 으면 예가 끝나면 프로젝트의 맨 위로 돌아가서 다시 시작합니다. 나는 아래있는 것을 좋아해? 저를 용서하십시오 저것이 아주 완벽하지 않은 경우에, 나는 아직도 프로그램에 익숙해 있고 그것을 믿을 수 없을만큼 재미있는 찾아 내고있다.예 또는 아니오로 프롬프트가 반복됩니까?

#include <stdio.h> 
int main(void) 
{ 
    char loop = yes; 

    while (loop = yes) 
{ 
    . 
    . 
    . 
} 
    printf ("would you like to continue (yes/no)/n"); 
    scanf ("%s", loop); 
} 
+0

왜 이런 일이 태그로 '목적 - c'이 있습니까? 그것은 C 코드처럼 보입니다. –

답변

1

printf와 scanf는 while 루프의 중괄호 안쪽으로 이동해야합니다. 또한 printf에서/n 대신 \ n을 원한다. 마지막으로, 그 scanf() 호출로 문자열을 되 찾을 것이므로, 루프를 문자 배열로 선언하고 while 루프에서 'y'에 대해 해당 배열의 첫 번째 요소를 확인하십시오. 또는 'n'또는 그런 것. 또한 일종의 scanf() 대신 getchar()을 사용하는 것이 좋습니다.

1
여기에 컴파일되지

하지만 작업을 수행해야합니다

#include <stdio.h> 
int main(void) 
{ 
    char buffer[256]; 

do { 
    . 
    . 
    . 
    printf ("would you like to continue (yes/no)/n"); 
    scanf ("%s", buffer); 
} while (strcmp(buffer,"yes") != 0); 

} 

하나는 실제 응용 프로그램에서 그런 아무것도 할 것이지만, 데모 목적을 위해 그것을 확인해야합니다.

문자열은 C의 문자 배열이므로 길이를 256 바이트 (구분 기호로 255 자 + 0 바이트)로 설정하므로 변수를 배열로 만들었습니다. 루프를 적어도 한 번 실행되도록 변경했습니다. 문자열 비교를 위해 함수를 호출해야합니다. strcmp은 동일한 문자열의 경우 0을 반환합니다. 마지막으로 질문은 이고 루프는입니다.

Objective-C를 사용하지 않고 일반 C입니다.

-1
#include <stdio.h> 
int main(void) 
{ 
    avi; 
char loop[10]; 
while (loop = yes) 
{ 
. 
. 
. 
} 
    printf ("would you like to continue (yes/no)/n"); 
    scanf ("%s", loop); 
    if(strcpm(loop,"YES")==0) goto avi: 
} 
+0

일반적으로 goto를 사용하는 것은 사람이 읽는 것이 어렵 기 때문에 나쁜 행동입니다. 이 방법을 제안 할 수 있습니까? – LeeNeverGup

+0

정말요? 나는'goto X'를보고 내 눈이하는 것을 알고 있니? 그들은 "goto x". 중첩 된 더미'do ... while (0)'과'break '문장을 모든 곳에서 시도해보십시오.' –

0
int main() { 

    char A = 'n'; 
    char B = 'y'; 
    char Answer; 


    printf("Does the subject have a glazed over look? (y/n): \n"); 
    scanf("%c",&Answer); 

    if (Answer=='N'||Answer=='y'|| Answer=='N'||Answer=='Y') 

     printf("Good\n"); 

    else 
       printf("Please enter 'y' or 'n' \n "); 


    return 0; 
} 
관련 문제