저는 C 프로그래밍을 처음 접했고 간단한 문제가 생겼습니다. 나는이 사이트의 모든 부분을 보았지만 이에 대한 해답을 찾고있다. 입력 파일의 끝에 공백이 있으면 프로그램이 제대로 실행됩니다. | 유닉스코드가 선행 공백으로 올바르게 인쇄됩니다.
./program-name < file.txt를
에 명령 줄에서 프로그램을 실행 예를 들어, file.txt를이 아 파크 공백으로 // 경우 | 공간이다. 고양이 란. | | 이 고양이의 란 경우
나는 올바른 출력 1 1 1
를 얻을. 어떤 도움에 감사드립니다
//I have to use C for this program.
#include <stdio.h>
int main(void){
int i=0;
char c;
int NOV=0;
while((c=getchar())!=EOF && c !='\n' && c !=10){
if(c=='a'||c=='e'||c=='i'||c=='o'||c=='u'){
NOV++;
}
if(c==' '){
printf("%d ",NOV);
NOV=0;
}
}
printf("\n");
return 0;
}
(공백없이 내가 한 일을 얻을).
이 프로그램은 출력 파일에서 읽을 수있는 모든 공간에 NOV''의 값을 보인다. 'NOV'는 시작 단어마다 모음의 수를 세는 것으로 보입니다. 예상되는 결과는 무엇입니까? 마지막 단어에 삽의 숫자를 공백으로 끝내지 않으려면 루프 다음에'(c == '')'에 대한 명령문을 실행하거나 다른 단어를 사용해야합니다 고리. – Codor
코드를 올바르게 포맷하면 오류를 찾는 데 도움이됩니다. –
@codor : 'wovels'? 소설 (또는 나는 보넬을 의미합니까?). –