Presentation is loading. Please wait.

Presentation is loading. Please wait.

Structured Programming II

Similar presentations


Presentation on theme: "Structured Programming II"— Presentation transcript:

1 Structured Programming II
Text Files CHAPTER 2 Structured Programming II

2 Why we need Files Files are kept in Secondary Storage Units (Disks, Diskettes). Arrays use Primary Storage Units (RAM) of the computer. When you have to make a decision to use either a File or an Array you have to consider the following criterias: Speed of access to the data stored in. Unit Price of the Storage. Durability of the content. Amount of data have to be stored.

3 Why we need Files

4 Using Files in C Large amount of data are usually stored in files.
Obtaining data (numbers or characters) from a file is called READING THE FILE. Placing data into a file is called WRITING TO THE FILE. PROCESSING A FILE, means obtaining data from a file and/or placing data into another. In order to process a file in C, you must first declare the FILE POINTER.

5 Declaration of a File Format : FILE * file_pointer_name;
The second step is the OPENING of the declared file. File_pointer_name = fopen( file_name, Opening_mode); Example : my_file = fopen(“MYFILE.TXT”, “r+”);

6 File Opening Modes Op. Mode: Meaning:
“r” : Read only obtain data from an existing file. “w” : Write only, place data onto a new file. “a” : Append only, appends data to the end of a new or existing file. “r+” : Read and Write “w+” : Write and Read “a+” : Append and read Once program completes its processing with a file, it has to close the used file with fclose() statement. Example : flose(input_file); /* “input_file” is a File Pointer */

7 “fopen()” Function fopen() takes two arguments: file name.
opening mode. fopen returns a NULL pointer when it fails to open a file. Use the following code in order to test the file is opened successfully or not: Example : input_file = fopen(“Myfile.txt”,”r”); if (input_file==NULL) { printf(“\n An Error occurred, Myfile.txt can not opened !”); exit(1); } print(“\n Myfile.txt is opened successfully “);

8 “fscanf()” Function fscanf() is used to read data from a file.
fscanf() function is similar with scanf() function, but needs a file pointer as the first argument. While scanf() is reading data from keyboard, fscanf() is used for reading data from a file. Example : fscanf(input_file,”%d”,&num); sum+= num;

9 Examples Example 1: Write a program in C that will generate random 100 integer numbers between 0-500, and will write them into the file “SALES.DAT”. Example 2: Write a program in C that will read the sales data from the file “SALES.DAT” (containing integer values) and calculate tax amounts ( tax rate is given 25%) and write them into the file “TAX.DAT”. Example 3: Write a program in C, that will read both “SALES.DAT” and “TAX.DAT” to calculate total sales and total tax to print on the monitor.

10 Examples Example 1: # include <stdio.h>
#include <stdlib.h> void main() { FILE *out_file; int cnt; out_file = fopen(“SALES.DAT”,”w”); randomize(); for (cnt=0; cnt<50; cnt++) fprintf(out_file,“\n%d”,rand()%501); } fclose(out_file); } /* end of main */

11 Examples Example 2: # include <stdio.h> void main()
{ int sale_amo; FILE *in_file,*out_file; in_file = fopen(“SALES.DAT”,”r”); out_file = fopen(“TAX.DAT”,”w”); fscanf(in_file,”%d”,&sale_amo); while (sale_amo<>EOF) { fprintf(out_file,“\n%f”,sale_amo * 0.25); } fclose(in_file); fclose(out_file); } /* end of main */

12 Examples Example 3: # include <stdio.h> void main()
{ int tot_sales = 0, sale; float tot_tax = 0, tax; FILE *sale_file,*tax_file; sale_file = fopen(“SALES.DAT”,”r”); tax_file = fopen(“TAX.DAT”,”r”); fscanf(sale_file,”%d”,&sale); fscanf(tax_file,”%f”,&tax); while (sale<>EOF) { tot_sale += sale; } /* program is continuing on the next slide */

13 Examples Example 3: /* The beginning of the program is on the previous slide */ while (tax<>EOF) { fscanf(tax_file,”%f”,&tax); tot_tax += tax; } printf(“\n The total Sales are %d “,tot_sale); printf(“\n The total Taxes are %f “,tot_tax); fclose(sale_file); fclose(tax_file); } /* end of main */


Download ppt "Structured Programming II"

Similar presentations


Ads by Google