I need help! How to fix my code? My code #include int main(){ char filename[100];//variable to store filename in char line[10000],ch=' ';//input buffers int idx=0; //input of filename printf("\n\tEnter File Name: "); scanf("%s",&filename); FILE *input;//pointer to file if((input = fopen(filename,"r"))){ while(ch != EOF){//until end of file is reached ch = fgetc(input);//read next character if(ch=='\n' || ch==EOF){//if it is a newline character,print the line printf("\t"); int i; for(i=0;i
I need help! How to fix my code?
My code
#include<stdio.h>
int main(){
char filename[100];//variable to store filename in
char line[10000],ch=' ';//input buffers
int idx=0;
//input of filename
printf("\n\tEnter File Name: ");
scanf("%s",&filename);
FILE *input;//pointer to file
if((input = fopen(filename,"r"))){
while(ch != EOF){//until end of file is reached
ch = fgetc(input);//read next character
if(ch=='\n' || ch==EOF){//if it is a newline character,print the line
printf("\t");
int i;
for(i=0;i<idx;i++)
printf("%c",line[i]);
printf("\n");
idx=0;
}
else{//else add the current character to the buffer/array of char
line[idx]=ch;
idx++;
}
}
}
else{
printf("\tThe file can't be open. File does not exits.");
}
fclose(input);//close the file
return 0;
}
I'am using C language Codio!
See in expected result!
![#include<stdio.h>
LAST RUN on 3/28/2021, 9:45:14 AM
int main(){
char filename[100];//variable to store filename in
char line[10000],ch=' ';//input buffers
int idx=0;
Check 1 passed
4
check 2 passed
Check 3 failed
6.
|//input of filename
printf("\n\tEnter File Name: ");
scanf ("%s",&filename);
FILE *input;//pointer to file
if((input = fopen (filename, "r"))){
while (ch != EOF){//until end of file is reached
ch = fgetc(input);//read next character
if(ch=='\n' || ch==EOF){//if it is a newline character,print the line
7
Output:
8
Segmentation fault (core dumped)
9
Expected:
10
11 -
Enter File Name:
12 -
The file can't be open. File does not exists.
13
14 -
Show diff
printf("\t");
int i;
for (i=0;i<idx;i++)
printf("%c",line[i]);
printf("\n");
idx=0;
}
else{//else add the current character to the buffer/array of char
line[idx]=ch;
idx++;
15
16
17
18
19
20
21
22
23
24
25
}
}
else{
printf("\tThe file can't be open. File does not exits.");
}
fclose (input);//close the file
26
27
28 -
29
30
31
32
return 0;
33
}
34
35
0% (1:1)
C](/v2/_next/image?url=https%3A%2F%2Fcontent.bartleby.com%2Fqna-images%2Fquestion%2Fdc293714-e413-4520-9bb8-021c67d9ee55%2F141fc652-1e33-4253-b2dc-53cb82815d0d%2F5z3cqqh_processed.png&w=3840&q=75)

Step by step
Solved in 2 steps









