Lab works-1(Functions)
1. Write C program to find sum of two numbers using
function named sum().
#include<stdio.h>
int sum(int a, int b);
int main()
{
int
a,b,c;
printf("Enter
two numbers:");
scanf("%d%d",&a,&b);
c=sum(a,b);
printf("Sum
of two numbers = %d",c);
return 0;
}
int sum(int a, int b)
{
int p;
p=a+b;
return
(p);
}
2. Write C program to find area and perimeter of a
rectangle. Use function area_perimeter().
#include<stdio.h>
void
area_perimeter(int l, int b);
int main()
{
int
l,b;
printf("Enter
length and breadth :");
scanf("%d%d",&l,&b);
area_perimeter(l,b);
return
0;
}
void area_perimeter(int l, int b)
{
int
area,perimeter;
area=l*b;
printf("Area
of rectangle = %d",area);
perimeter=2*(l+b);
printf("\n
Perimeter of rectangle = %d",perimeter);
}
3. Write C program to know a number is even or odd using
function named even_odd().
#include<stdio.h>
void even_odd(int n);
int main()
{
int n;
printf("Enter
a number :");
scanf("%d",&n);
even_odd(n);
return
0;
}
void even_odd(int n)
{
if(n%2==0)
printf("Even");
else
printf("Odd");
}
4. Write C program to print multiplication table of a
number using function table().
#include<stdio.h>
void table(int n);
int main()
{
int n;
printf("Enter
a number :");
scanf("%d",&n);
table(n);
return
0;
}
void table(int n)
{
int i;
for(i=1;i<=10;i++)
{
printf("%d\n",n*i);
}
}
5. Write C program to print the greatest value among
three numbers using a function int great(). We have to use return statement.
#include<stdio.h>
int great(int a, int, int c);
int main()
{
int
a,b,c,d;
printf("Enter
three numbers : ");
scanf("%d%d%d",&a,&b,&c);
d=great(a,b,c);
printf("greatest
number is %d",d);
return 0;
}
int great(int a, int
b, int c)
{
if(a>b &&
a>c)
return a;
else if (b>c)
return b;
else
return c;
}
6. Write C program to know a number is prime or not. Take
the function name yourself.
#include<stdio.h>
void test(int n);
int main()
{
int n;
printf("Enter
a number :");
scanf("%d",&n);
test(n);
return
0;
}
void test(int n)
{
int
i,c=0 ;
for(i=1;i<=n;i++)
{
if(n%i==0)
c++;
}
if(c==2)
printf("Prime");
else
printf("not
prime or composite");
}
7. Write C program to find sum of series 1,2, 3,…..200
using function. Assume yourself function name. It returns a floating value.
#include<stdio.h>
float sum();
int main()
{
printf("the
sum is=%f",sum());
return
0;
}
float sum()
{
int
s=0,i;
for(i=1;i<=200;i++)
{
s=s+i;
}
return
s;
}
8. Write C program to input elements of an array and
print them with their sum. Suppose, the array is one dimensional & is of
void type and function to be used is array_elements().
#include<stdio.h>
void array_elements(int a[]);
int main()
{
int
a[5],i,ans;
for(i=0;i<5;i++)
{
printf("Enter
num[%d] : ",i+1);
scanf("%d",&a[i]);
}
array_elements(a);
return 0;
}
void array_elements(int a[])
{
int
s=0,i;
for(i=0;i<5;i++)
{
s=s+a[i];
}
printf("Sum=%d",s);
}
9. Suppose a function string_length(char st[]).Here, we
have passed string as parameter. Use this function to find the length of string
which must return the value.
#include<stdio.h>
int string_length(char st[]);
main()
{
char str[100];
printf(" Enter
any string : ");
scanf("%s",str);
printf(" The
length of string is %d",string_length(str));
}
int
string_length(char st[])
{
int i;
for(i=0;st[i]!='\0';i++);
return
(i);
}
10. Suppose a function void matrix_sum(int a[][],int
b[][]).Here, we have passed array as parameter. Use this function to find sum
of matrices.
#include<stdio.h>
void matrix_sum(int a[][3],int b[][3]);
main()
{
int
a[3][3],b[3][3],i,j;
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
printf("Enter b[%d][%d] : ",i,j);
scanf("%d",&a[i][j]);
}
}
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
printf("Enter b[%d][%d] : ",i,j);
scanf("%d",&b[i][j]);
}
}
matrix_sum(a,b);
}
void matrix_sum(int a[][3],int b[][3])
{
int
c[3][3],i,j;
printf("\n
sum of two 3x3 matrices: \n");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
c[i][j]=a[i][j]+b[i][j];
printf("
%d\t ",c[i][j]);
}
printf("\n");
}
}
11. An array contains some numbers(integer type).WAP to
sort numbers using a function void sort(a[]).We have to pass that array from
main function.
#include<stdio.h>
void sort(int num[],int n);
main()
{
int num[100],n,i;
printf(" Enter
the array size not more than 100 : ");
scanf("%d",&n);
for(i=0;i<n;i++)
{
printf("
Enter num[%d] : ", i+1);
scanf("%d",&num[i]);
}
sort(num,n);
}
void sort(int num[],int n)
{
int
i,j,temp;
for(i=0;i<n-1;i++)
{
for(j=i+1;j<n;j++)
{
if(num[i]>num[j])
{
temp=num[i];
num[i]=num[j];
num[j]=temp;
}
}
}
printf("
Numbers in ascending order \n ");
for(i=0;i<n;i++)
printf("
%d\t ",num[i]);
}
12. Write C program to sort 'n' number of strings using
function. Pass strings as parameter.
#include<stdio.h>
#include<string.h>
void sort(char str[][20],int n);
main()
{
char
str[50][20];
int
i,n;
printf("
How many strings : ");
scanf("%d",&n);
for(i=0;i<n;i++)
{
printf("
Enter str[%d] : ",i+1);
scanf("%s",str[i]);
}
sort(str,n);
}
void sort( char str[][20],int n)
{
int
i,j;
char
temp[20];
for(i=0;i<n-1;i++)
{
for(j=i+1;j<n;j++)
{
if(strcmp(str[i],str[j])>0)
{
strcpy(temp,str[i]);
strcpy(str[i],str[j]);
strcpy(str[j],temp);
}
}
}
printf("
Sorted strings are : \n");
for(i=0;i<n;i++)
printf("
%s\n ",str[i]);
}
13. WAP to find factorial value of a number using
recursive function.
#include<stdio.h>
int fact(int);
main()
{
int
n,ans;
printf(
"Enter any number : ");
scanf("%d",&n);
ans=fact(n);
printf("
Factorial of %d is %d ",n,ans);
}
int fact(int n)
{
if(n<=1)
return
(1);
else
return(n*fact(n-1));
}
14. WAP to print Fibonacci series 1, 1, 2, 3 ..... nth
using recursive function.
#include<stdio.h>
int fibo(int n);
main()
{
int
i,n;
printf(
" Enter any number : ");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
printf("
%d\t ",fibo(i));
}
}
int fibo(int n)
{
if(n==0)
return
0;
else
if(n==1)
return
1;
else
return
(fibo(n-1)+fibo(n-2));
}
Lab
works-2(Structure and unions)
1. Write C program to input and print student id, name
and grade. Use structure concept.
#include<stdio.h>
struct student
{
int id;
char
name[30];
int
grade;
} s;
int main()
{
printf("Enter
student id,name and grade : ");
scanf("%d%s%d",&s.id,s.name,&s.grade);
printf("%d\n
%s\n %d\n",s.id,s.name,s.grade);
return
0;
}
2. Write C program to input id, name and grade for 10
students. Then print them. Use array of structure concept.
#include<stdio.h>
struct student
{
int id;
char
name[30];
int
grade;
} s[10];
int main()
{
int i;
for(i=0;i<10;i++)
{
printf("Enter
student id,name and grade : ");
scanf("%d%s%d",&s[i].id,s[i].name,&s[i].grade);
}
printf("-------Output-------\n");
printf("ID\t
Name\t Grade\n");
for(i=0;i<10;i++)
{
printf("%d\t
%s\t %d\n",s[i].id,s[i].name,s[i].grade);
}
return
0;
}
3. Write C program to input 20 employees name, post and
salary. Then search a record of an employee on the basis of name.
#include<stdio.h>
#include<string.h>
struct employee
{
char
name[30];
char
post[30];
int
salary;
} e[20];
int main()
{
int i;
char
search_name[30];
for(i=0;i<20;i++)
{
printf("Enter
employee name,post and salary : ");
scanf("%s%s%d",e[i].name,e[i].post,&e[i].salary);
}
printf("Enter name to
search: ");
scanf("%s",search_name);
for(i=0;i<20;i++)
{
if(strcmp(e[i].name,search_name)==0)
printf("%s\t
%s\t %d\n",e[i].name,e[i].post,e[i].salary);
}
return
0;
}
4. We have two structures as given below.
struct employee
{
char
ename[100];
char
eaddress[100];
};
struct salarydetails
{
char pos[100];
float salary;
struct employee detail;
}payinfo;
Write C program
to input employees’ details with salary then print them. Use nested struct
concept.
#include<stdio.h>
struct employee
{
char ename[100];
char
eaddress[100];
};
struct salarydetails
{
char post[100];
float salary;
struct employee detail;
}payinfo;
int main()
{
printf("Enter employee
name,address,post and salary : ");
scanf("%s%s%s%f",payinfo.detail.ename,payinfo.detail.eaddress,payinfo.post,&payinfo.salary);
printf("Employee
Name : %s\n",payinfo.detail.ename);
printf("Address
: %s\n",payinfo.detail.eaddress);
printf("Post:
%s\n",payinfo.post);
printf("Salary:
%f",payinfo.salary);
return
0;
}
5. Write C program to input id, name and address of 20
students using struct. Then print them in sorted format on the basis of name.
#include<stdio.h>
#include<string.h>
struct student
{
int id;
char
name[30];
char
address[30];
}s[20];
int main()
{
struct
student temp;
int
i,j;
for(i=0;i<20;i++)
{
printf("Enter
id, name and address: ");
scanf("%d%s%s",&s[i].id,s[i].name,s[i].address);
}
for(i=0;i<19;i++)
{
for(j=i+1;j<20;j++)
{
if(strcmp(s[i].name,s[j].name)>0)
{
temp=s[i];
s[i]=s[j];
s[j]=temp;
}
}
}
printf("Records
in Sorted order by Name \n");
for(i=0;i<20;i++)
{
printf("%d\t
%s\t %s\n ",s[i].id,s[i].name,s[i].address);
}
return
0;
}
6. Write C program to input teacher’s id, name, address
and subject(any ten records). Then print them on the basis of id. Use structure
concept.
#include<stdio.h>
struct teacher
{
int id;
char
name[30];
char
address[30];
char
subject[30];
}t[10];
int main ()
{
int
i,search_id,flag=0;
for(i=0;i<20;i++)
{
printf("Enter
teacher's id,name,address and subject : ");
scanf("%d%s%s%s",&t[i].id,t[i].name,t[i].address,t[i].subject);
}
printf("Enter id to search: ");
scanf("%d",&search_id);
for(i=0;i<20;i++)
{
if(t[i].id==search_id)
{
flag=1;
break;
}
}
if(flag==1)
printf("%d\t
%s\t %s\t %s\n",t[i].id,t[i].name,t[i].address,t[i].subject);
else
printf("Record
not found ");
return
0;
}
7. Write C program to input any 10 student’s name, grade,
gender and marks in 5 subjects. Then print all students’ records with their
name, grade, gender, total and percentage. Also print names of those students
whose gender is ‘female’.
#include<stdio.h>
#include<string.h>
struct student
{
char
name[30];
int
grade;
char
gender[10];
int
sub1,sub2,sub3,sub4,sub5,total;
float
per;
}s[10];
int main()
{
int i;
for(i=0;i<10;i++)
{
printf("Enter name,grade,gender, marks in five subjects
: ");
scanf("%s%d%s%d%d%d%d%d",s[i].name,&s[i].grade,s[i].gender,&s[i].sub1,&s[i].sub2,&s[i].sub3,&s[i].sub4,&s[i].sub5);
}
for(i=0;i<10;i++)
{
s[i].total=s[i].sub1+s[i].sub2+s[i].sub3+s[i].sub4+s[i].sub5;
s[i].per=(float)s[i].total/5;
}
for(i=0;i<10;i++)
{
printf("Name:
%s\n",s[i].name);
printf("Grade:%d\n",s[i].grade);
printf("Gender:%s\n",s[i].gender);
printf("Total:%d\n",s[i].total);
printf("Percentage:%0.2f\n",s[i].per);
}
printf("\n Female Records only \n");
for(i=0;i<10;i++)
{
if(strcmp(s[i].gender,"female")==0)
{
printf("Name:
%s\n",s[i].name);
printf("Grade:%d\n",s[i].grade);
printf("Gender:%s\n",s[i].gender);
printf("Total:%d\n",s[i].total);
printf("Percentage:%0.2f\n",s[i].per);
}
}
return
0;
}
8. Using function and structure to calculate sum of two
distances measured in terms of kilometers and meters.
For example,
If we input following data
Kilometer meter
23 445
45 756
69 201
The output would be 69 km and 201 meters.
#include<stdio.h>
struct distance
{
int km;
int m;
}d1,d2,total;
void sum(struct distance dis1,struct distance dis2);
int main()
{
printf("Enter first distance : ");
scanf("%d%d",&d1.km,&d1.m);
printf("Enter second distance : ");
scanf("%d%d",&d2.km,&d2.m);
sum(d1,d2);
return 0;
}
void sum(struct distance dis1,struct distance dis2)
{
total.m=(dis1.m+dis2.m)%1000;
total.km=dis1.km+dis2.km+(dis1.m+dis2.m)/1000;
printf("Total
km=%d m=%d",total.km,total.m);
}
9. Write C program to input student id, name and grade
and print them. Use union concept.
#include<stdio.h>
union student
{
int id;
char
name[30];
int
grade;
} s;
int main()
{
printf("Enter
student id: ");
scanf("%d",&s.id);
printf("Student
ID: %d\n ",s.id);
printf("Enter
name : ");
scanf("%s",s.name);
printf("Name
: %s\n",s.name);
printf("Enter
grade : ");
scanf("%d",&s.grade);
printf("Grade
: %d\n",s.grade);
return 0;
}
Lab
works-3(Pointers)
1. Write C program to perform arithmetic calculations
(sum, difference, multiplication and division) of two numbers using pointers.
#include<stdio.h>
int main()
{
int
num1,num2,sum,diff,mul,div,*x,*y;
printf("Enter
two numbers : ");
scanf("%d%d",&num1,&num2);
x=&num1;
y=&num2;
sum=*x
+ *y;
diff=*x
- *y;
mul=*x
* *y;
div=(*x)
/ (*y);
printf("Sum=%d\n",sum);
printf("Difference=%d\n",diff);
printf("Multiplication=%d\n",mul);
printf("Division=%d\n",div);
return
(0);
}
2. Write C program to know a number is even or odd using
pointer.
#include<stdio.h>
int main()
{
int num,*n;
printf("Enter
any number: ");
scanf("%d",&num);
n=#
if(*n % 2==0)
printf("even");
else
printf("odd");
return (0);
}
3. Write C program to find sum and average of ‘n’ natural
numbers using pointer.
#include<stdio.h>
int main()
{
int *p;
int
n,i,sum=0,avg=0;
p=&n;
printf("Enter
value of n: ");
scanf("%d",&n);
p=&n;
for(i=1;i<=*p;i++)
{
sum=sum+i;
}
avg=sum/(*p);
printf("Sum=%d\n",sum);
printf("Average=%d\n",avg);
return
(0);
}
4. Write C program to print 7, 22, 11, 34, 17 ..... 10th
term using function. Pass pointer to function.
#include<stdio.h>
void series (int *p);
int main()
{
int *p;
int
n=10;
p=&n;
series(&n);
return
(0);
}
void series(int *p)
{
int
a=7,i;
for(i=1;i<=*p;i++)
{
printf("%5d",a);
if(a%2==0)
a=a/2;
else
a=a*3+1;
}
}
5. Write C program to find factorial of a number using
pointer.
#include<stdio.h>
int main()
{
int *p;
int n;
int
i,fact=1;
printf("enter
a number\n");
scanf("%d",&n);
p=&n;
for(i=1;i<=*p;i++)
{
fact= fact*i;
}
printf("Factorial
=%d",fact);
return (0);
}
6. Use array to input 10 elements and print them. Use
array as pointer.
#include<stdio.h>
int main()
{
int i,arr[10];
for(i=0;i<10;i++)
{
printf("Enter
arr[%d] : ",i);
scanf("%d",(arr+i));
}
for(i=0;i<10;i++)
{
printf("%d\n",*(arr+i));
}
return
(0);
}
7. Write C program to input 10 elements and print maximum
and minimum value. Use array as pointer.
#include<stdio.h>
int main()
{
int
i,arr[10],max,min;
for(i=0;i<10;i++)
{
printf("Enter
arr[%d] : ",i);
scanf("%d",(arr+i));
}
max=*(arr+0);
min=*(arr+0);
for(i=0;i<10;i++)
{
if(*(arr+i)>max)
max=*(arr+i);
if(*(arr+i)<min)
min=*(arr+i);
}
printf("Maximum
number = %d \n Minimum number = %d",max,min);
return
(0);
}
8. Write C program to swap two values using call by
reference and call by value.
//program to show call by value
#include<stdio.h>
void swap(int a, int
b);
main()
{
int a = 10, b= 20;
swap(a,b);
printf("Call by
value\n");
printf(" After
swapping a = %d and b= %d ",a,b);
}
void swap(int a, int
b)
{
int t;
t = a;
a = b;
b = t;
}
//program to show call by reference
#include<stdio.h>
void swap(int *a,
int *b);
main()
{
int a = 10, b= 20;
swap(&a,&b); // call by reference
printf("Call
by reference\n");
printf(" After
swapping a = %d and b= %d ",a,b);
}
void swap(int *a,
int *b)
{
int t;
t = *a;
*a = *b;
*b = t;
}
9. Write C program to sort 10 numbers stored in an array
using pointer.
#include<stdio.h>
int main()
{
int *p;
int
num[10],i,j,temp;
for(i=0;i<10;i++)
{
printf("Enter num[%d] : ",i+1);
scanf("%d",(num+i));
}
for(i=0;i<9;i++)
{
for(j=i+1;j<10;j++)
{
if(*(num+i)>*(num+j))
{
temp=*(num+i);
*(num+i)=*(num+j);
*(num+j)=temp;
}
}
}
printf("Sorted in Ascending Order \n");
for(i=0;i<10;i++)
{
printf("%d\n",*(num+i));
}
return (0);
}
10. Write C program to print factors of a number using
pointer.
#include<stdio.h>
int main()
{
int num,i;
int *p ;
printf("
Enter any number : ") ;
scanf("%d",&num);
p = #
for(i=1;i<=*p;i++)
{
if(*p%i==0)
printf(" %d\n
", i) ;
}
return (0);
}
11. Write C program to print multiplication table of a
number using pointer.
#include<stdio.h>
int main()
{
int num,i;
int *p ;
printf("
Enter any number : ") ;
scanf("%d",&num);
p = #
for(i=1;i<=10;i++)
{
printf(" %d\n
",(*p * i)) ;
}
return (0);
}
Lab works-4(File Handling)
1. Write C program to input a sentence and store data in a data file “file.txt”. And print them on screen. Use getc() and putc() functions.
#include<stdio.h>
int main()
{
FILE *fp;
char ch;
printf("\n Input data (to exit press ctrl+z)=");
fp=fopen("f.txt","w");
while((ch=getchar())!=EOF){
putc(ch,fp);
}
fclose(fp);
printf("\n Output data\n ");
fp=fopen("f.txt","r");
while((ch=getc(fp))!=EOF){
putchar(ch);
}
fclose(fp);
return (0);
}
2. WAP to store some ‘n’ natural numbers in a data file and print them on screen. Use getw() function. Also print their average.
#include<stdio.h>
int main()
{
FILE *fp;
int i,n,sum=0,avg=0;
fp=fopen("file.txt","w");
printf("Enter the value of n: ");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
putw(i,fp);
}
fclose(fp);
printf("Press enter to view numbers :");
printf("\n Output data\n ");
fp=fopen("file.txt","r");
while((i=getw(fp))!=EOF){
sum=sum+i;
printf(" %d\n ",i);
}
avg=sum/n;
fclose(fp);
printf("\n Average = %d ",avg);
return (0);
}
3. WAP to store student’s name and address in a data file “student.txt”. Use fprintf() function. Then read contents of data file and print them on screen. Use fscanf() function.
#include<stdio.h>
struct Student{
char name[50];
char address[50];
};
void main(){
struct Student st;
FILE *fp;
fp=fopen("student.txt","w");
printf("\n Enter students name: ");
scanf("%s",st.name);
printf("\n Enter students address : ");
scanf("%s",st.address);
fprintf(fp,"\n %s\t %s\t", st.name,st.address); //write structure type data
fclose(fp);
fp=fopen("student.txt","r");
printf("\n Data from the file: \n");
printf("\n Name\tAddress");
while((fscanf(fp,"\n %s\t %s\t", st.name,st.address))!=EOF)
{
printf("\n %s\t%s",st.name,st.address);
}
printf("\n");
fclose(fp);
}
4. WAP to store book’s name, edition and price in a data file “book.txt” using yes/no options. It means the computer stores data until you say ‘n’. Then print them on screen.
#include<stdio.h>
void main(){
float bprice, bedition;
char bname[50], choice;
FILE *fp;
fp=fopen("book.txt","w");
do{
printf("\n Enter books name: ");
scanf("%s",bname);
printf("\n Enter books edition : ");
scanf("%f",&bedition);
printf("\n Enter books price : ");
scanf("%f",&bprice);
fprintf(fp,"\n %s\t %f\t %f\t", bname, bedition,bprice);
printf("\n Do you want to enter more data(y/n): ");
choice = getche();
}while(choice!='n');
fclose(fp);
fp=fopen("book.txt","r");
printf("\n Data from the file: \n");
printf("\n Book Name \t Edition \t Price");
while((fscanf(fp,"\n %s\t %f\t %f\t", bname,&bedition,&bprice))!=EOF)
{
printf("\n %s\t\t %.2f\t\t %.2f\t",bname,bedition,bprice);
}
printf("\n");
fclose(fp);
}
5. WAP to store employee’s name, position and salary in a data file “employee.txt” using fwrite(). The computer stores data until you say ‘n’. Then read the contents of that file and print on screen using fread().
#include<stdio.h>
struct Employee{
char name[50];
char position[50];
float salary;
};
void main(){
struct Employee emp;
char choice;
FILE *fp;
fp=fopen("employee.txt","w");
do{
printf("\n Enter employee name: ");
scanf("%s",emp.name);
printf("\n Enter employee position: ");
scanf("%s",emp.position);
printf("\n Enter employee salary: ");
scanf("%f",&emp.salary);
fwrite(&emp,sizeof(emp),1,fp); //write structure type data
printf("\n Do you want to insert more record (y/n): ");
choice=getche();
}while(choice!='n');
fclose(fp);
fp=fopen("employee.txt","r");
printf("\n Data from the file: \n");
printf("\nName\tPosition\tSalary");
while(fread(&emp,sizeof(emp),1,fp))
{
printf("\n%s\t%s\t\t%.2f",emp.name,emp.position,emp.salary);
}
printf("\n");
fclose(fp);
}
6. WAP to input students’ name, grade and marks in five subjects. Then store these all data with total and percentage in a data file “student.dat”. Print all those data of students who have percentage >=80. You may use fscanf() or fwrite().
#include<stdio.h>
struct Student{
char name[50];
char grade[50];
int nep,eng,sci,mth,cs;
float total;
float percentage;
};
void main(){
struct Student st[5];
int i;
FILE *fp;
fp=fopen("student.dat","w");
for(i=0;i<5;i++){
printf("Enter name: \n");
scanf("%s",st[i].name);
printf("Enter grade: \n");
scanf("%s",st[i].grade);
printf("Enter marks of Nepali: \n");
scanf("%d",&st[i].nep);
printf("Enter marks of English: \n");
scanf("%d",&st[i].eng);
printf("Enter marks of Science: \n");
scanf("%d",&st[i].sci);
printf("Enter marks of Math: \n");
scanf("%d",&st[i].mth);
printf("Enter marks of Computer: \n");
scanf("%d",&st[i].cs);
fflush(stdin);
st[i].total=st[i].nep+st[i].eng+st[i].sci+st[i].mth+st[i].cs;
st[i].percentage=st[i].total/5;
fwrite(&st,sizeof(st),1,fp);
}
fclose(fp);
fp=fopen("student.dat","r");
fread(&st,sizeof(st),5,fp);
printf("\n-----output-----\n");
for(i=0;i<5;i++){
if(st[i].percentage>=80){
printf("\nName: %s \n",st[i].name);
printf("Grade: %s\n",st[i].grade);
printf("Nepali: %d\n",st[i].nep);
printf("English: %d\n",st[i].eng);
printf("Science: %d\n",st[i].sci);
printf("Math: %d\n",st[i].mth);
printf("Computer: %d\n",st[i].cs);
printf("Total marks: %.2f\n",st[i].total);
printf("Percentage: %.2f\n",st[i].percentage);
}
}
fclose(fp);
}
7. WAP to show the concept of rename() and remove() functions.
#include<stdio.h>
void main(){
FILE *fp;
char name[50];
fp=fopen("oldfile.txt","w");
printf("\n Enter name: ");
scanf("%s",name);
fprintf(fp,"%s",name);
fclose(fp);
rename("oldfile.txt","newfile.txt");
remove("newfile.txt");
}
8. WAP to show concept of ftell(), fseek() and rewind() functions.
//Program for ftell() and rewind()
#include <stdio.h>
int main ()
{
char name [20];
int age, length;
FILE *fp;
fp = fopen ("test1.txt","w");
printf("Enter name: \n");
scanf("%s",name);
printf("Enter age: \n");
scanf("%d",&age);
fprintf (fp, "%s %d", name,age);
length = ftell(fp);
rewind (fp); // It will move cursor position to the beginning of the file
fscanf (fp, "%s", name);
fscanf (fp, "%d", &age);
fclose (fp);
printf ("Name: %s \n Age: %d \n",name,age);
printf ("Total number of characters in file is %d \n", length);
return 0;
}
//program ofr fseek()
#include<stdio.h>
void main(){
FILE *fp;
int i;
fp = fopen("employee.txt","r");
for (i=1;i<=10;i++){
printf("%c : %d\n",getc(fp),ftell(fp));
fseek(fp,ftell(fp),0);
if (i == 5)
rewind(fp);
}
fclose(fp);
}
No comments:
Post a Comment