/* * C Program to Replace a specified Line in a Text File */ #include int main(void) { FILE *fileptr1, *fileptr2; char filechar[40]; char c; int delete_line, temp = 1; printf("Enter file name: "); scanf("%s", filechar); fileptr1 = fopen(filechar, "r"); c = getc(fileptr1); //print the contents of file . while (c != EOF) { printf("%c", c); c = getc(fileptr1); } printf(" \n Enter line number to be deleted and replaced"); scanf("%d", &delete_line); //take fileptr1 to start point. rewind(fileptr1); //open replica.c in write mode fileptr2 = fopen("replica.c", "w"); c = getc(fileptr1); while (c != EOF) { if (c == 'n') { temp++; } //till the line to be deleted comes,copy the content to other if (temp != delete_line) { putc(c, fileptr2); } else { while ((c = getc(fileptr1)) != 'n') { } //read and skip the line ask for new text printf("Enter new text"); //flush the input stream fflush(stdin); putc('n', fileptr2); //put 'n' in new file while ((c = getchar()) != 'n') putc(c, fileptr2); //take the data from user and place it in new file fputs("n", fileptr2); temp++; } //continue this till EOF is encountered c = getc(fileptr1); } fclose(fileptr1); fclose(fileptr2); remove(filechar); rename("replica.c", filechar); fileptr1 = fopen(filechar, "r"); //reads the character from file c = getc(fileptr1); //until last character of file is encountered while (c != EOF) { printf("%c", c); //all characters are printed c = getc(fileptr1); } fclose(fileptr1); return 0; /* Enter file name: pgm3.c /* * C Program to Convert Octal to Decimal */ #include #include int main() { long int octal, decimal = 0; int i = 0; printf("Enter any octal number: "); scanf("%ld", &octal); while (octal != 0) { decimal = decimal +(octal % 10)* pow(8, i++); octal = octal / 10; } printf("Equivalent decimal value: %ld",decimal); return 0; } Enter line number to be deleted and replaced 13 replaced Enter new text /* * C Program to Convert Octal to Decimal */ #include #include int main() { long int octal, decimal = 0; int i = 0; replaced printf("Enter any octal number: "); scanf("%ld", &octal); while (octal != 0) { decimal = decimal +(octal % 10)* pow(8, i++); octal = octal / 10; } printf("Equivalent decimal value: %ld",decimal); return 0; }