0
보고서 파일은 다음을 포함해야합니다. 1. 단어 수 2. 숫자 대문자 소문자의 3. 번호 숫자의 4. 수텍스트 파일의 내용을 읽고 단어, 대문자 및 숫자의 수를 별도의 파일에 작성하는 프로그램을 작성하십시오.
나는 성공적으로 파일을 읽고 단어 문자와 숫자를 계산하지만 난 새 파일에 내용을 작성하는 문제를 데, 어떤 도움이 될 것이다있다 고맙습니다.
#include <stdio.h>
#include <ctype.h>
#define SIZE 40
int main(void)
{
char ch, filename[SIZE];
int digits = 0;
int upper = 0;
int lower = 0;
int entered = 0;
int words = 0;
unsigned long count = 0;
FILE *fp;
printf("Please enter the filename to read: ");
gets(filename);
// "r" reads the file fopen opens the file
if ((fp = fopen(filename, "r")) == NULL)
{
printf("Cannot open the file, %s\n", filename);
}
else
{
puts("Successfully opened, now reading.\n");
while ((ch=getc(fp)) != EOF)
{
if (isalnum(ch))
{
if(!entered)
{
entered = 1;
words++;
}
}
else
{
if (entered)
{
entered = 0;
}
}
if (isupper(ch))
{
upper++;
}
else if (islower(ch))
{
lower++;
}
else if (isdigit(ch))
{
digits++;
}
}
}
fclose(fp); //make sure to close the file if you open one
char filename2 [SIZE];
FILE *fp2;
fprintf(stdout, "Please enter the file name to write in: ");
gets(filename2);
if ((fp2 = fopen("filename2", "w")) == NULL)
{
printf("Cannot create the file, %s\n", filename2);
}
else
{
fprintf(fp2, "The file \"%s\" has %lu Words.\n", filename, words);
fprintf(fp2, "The file \"%s\" has %lu Digits.\n", filename, digits);
fprintf(fp2, "The file \"%s\" has %lu upper case letters.\n", filename, upper);
fprintf(fp2, "The file \"%s\" has %lu lower case letters.\n", filename, lower);
}
fclose(fp2);
return 0;
}
와우 고맙습니다. 선생님, 내 어리 석음을 용서해주십시오. –