Jump to content

Recommended Posts

Posted

Probl: scrieti un program care sa afiseze un fisier text astfel: daca fisierul contine texte intre acolade '{' si '}', acelea sa fie afisate in alb deschis, iar restul textului in alb inchis. De asemenea, se cere ca literele sa fie afisate "cu incetinitorul".

Vom deschide un fisier in mod binar, pentru a nu avea neplaceri cauzate de caracterul Enter si, citind caracter cu caracter, il vom analiza si afisa. Exceptiile sunt date de cele doua caractere speciale, care vor controla culorile.

#include<stdio.h>

#include<conio.h>

#include<dos.h>

#define pauza 20

void main(void)

{


	FILE *fis;

	char nume_fis[13];

	char linie[255];

	char c;

	textcolor(7);

	textbackground(0);

	clrscr();

	printf("Dati numele fisierului: ");

	gets(nume_fis);

  if((fis=fopen(nume_fis, "rb"))==NULL)

	{


		printf("Nu se poate deschide fisierul.\n");

		return;

	}

	while(!feof())

	{

		c=fgetc(fis); //fgetc preia un caracter dintr-un fisier

		if(c=='{')

                        textcolor(15);

                else

                if(c=='}')

			textcolor(7);

		else

			if(c==9)

			{

				putc(' ');

				putc(' ');

				putc(' ');


			}

			else

			{

				putc(c);

				delay(pauza);

			}

	}fclose(fis);

}

Afisarea pe ecran a caracterului citit se face cu putc, care tine cont de culori. De asemenea, se observa ca Tab(caracterul cu codul ASCII =9) este inlocuit cu trei spatii.

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.