Заданието ми е да се състави с програма която да обработжа текст които се въвежда от потрбителя и се аписва символ по символ в фаил с разширение .с обраотката е брои главни и малки букжи брои символи в коментар брои редове в блок и брои празни редове и е да са в различни функций ако някои ми помогне 6те му бъда безкрайно благодарен ето аз сам я понаписал ама нз колко е вярна защото ми дава няква грешка като почна да въвеждам. Благодаря предварително.
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include<string.h>
void func1(void);
void func2(void);
void func3(void);
void func4(void);
int main(void)
{ char p,c,s,t;
char input[2048],*chp;
char ime[1000],*u;
FILE *fp;
int k=0,i=0, n=0, m,r,q=0;
printf("vavedete ime na faila... s raz6irenie .c:");
gets(ime);
if( (fp=fopen(ime,"w+"))==NULL)
{
printf("Error opening file!");
exit(1);
}
printf("vavedete text:");
u=ime;
do
{
s=getche();
fputc(s,fp);
}while(s!=27);
fclose(fp);
printf("(izberete nomera na jelanata operaciq) \n");
printf("1:PROCENTA PRAZNI REDOVE \n");
printf("2:SREDNIQ BROI NA GLAVNITE I MALKTE BUKVI V TEKSTA \n");
printf("3:OBSHTIQ BROI SIMVOLI V KOMENTARI \n");
printf("4: BROI NA REDOVE \n");
scanf("%d",&m);
switch(m)
{
case '1': func1();
printf("broq na praznite redove e %d\n", r);
break;
case '2': func2();
printf("procentnoto saotno6enie na glavni/malki bukvi e %d, %d\n",(i/(k+i)), (k/(k+i)));
break;
case '3': func3();
printf("broq na simvolite v komentari e %d\n", n );
break;
case '4': func4();
printf("broq na redovete v blok sa %d\n", q ); func4();
break;
default: printf("molq izberete cifra ot 1 do 4 za jelana f-q ot meniuto");
}
if( (fp=fopen(ime,"r")==NULL))
{
printf("Error opening file!");
exit(1);
}
for(;{
t=fgetc(fp);
if(t==EOF) break;
putchar(t);
}
fclose(fp);
}
void func2(char *u)
{ char p;
char input[2048];
char ime[1000];
FILE *fp;
int k=0,i=0;
if( (fp=fopen(ime,"r")==NULL))
{
printf("Error opening file!");
exit(1);
}
while( (p = fgetc(fp) ) !=EOF )
{
while( (p = fgetc(fp) ) !='\r' )
{
if('A'<=p && p<='Z')
i++;
if('a'<=p && p<='z')
k++;
}
}
fclose(fp);
}
void func3(char *u)
{ char p;
char input[2048],*chp;
FILE *fp;
int n=0;
if( (fp=fopen(ime,"r")==NULL))
{
printf("Error opening file!");
exit(1);
}
while( (p = fgetc(fp) ) !=EOF )
{
for(;p=='/*';p++)
n++;
if(p=='*/')
break;
}
fclose(fp);
}
void func1(char *u)
{ char p;
char input[2048],*chp;
FILE *fp;
int r=0;
if( (fp=fopen(ime,"r")==NULL))
{
printf("Error opening file!");
exit(1);
}
while( (p = fgetc(fp) ) !=EOF )
{
if(p=='\r')
r++;
}
fclose(fp);
}
void func4(char *u)
{ char *p;
char input[2048],*chp;
char ime[1000];
FILE *fp;
int q=0;
if( (fp=fopen(ime,"r")==NULL))
{
printf("Error opening file!");
exit(1);
}
while( (p = fgetc(fp) ) !=EOF )
if(p=='{')
{
while( (p = fgetc(fp) ) =='\r' )
{
q++;
if(p=='}')
break;
}
}
fclose(fp);
return 0;
}