Вы находитесь на странице: 1из 83

/* 201.

GREP COMMAND - */
/* BY REPLACING PATTERN BY argv[1][j]*/
#include<stdio.h>
main(int argc,char *argv[])
{
FILE *fp1;
char a[100],b[20];
int i,j,p=0,k,l=0;
if(argc!=3)
{
printf("wrong usage");
return;
}
fp1=fopen(argv[2],"r");
if(fp1==NULL)
{
printf("file opening error");
return;
}
// for(j=0,scanf("%c",&b[j]);b[j]!='$';scanf("%c",&b[++j]))
//
;
// b[j]='\0';
for(i=0;(a[i]=getc(fp1))!=EOF;i++)
{
if(a[i]=='\n')
{
l++;
a[i]='\0';
for(i=0;a[i];i++)
{
for(j=0,k=i;argv[1][j]==a[k]&&argv[1][j]!='\0';j++,k++
)
;
if(argv[1][j]=='\0')
printf("%d. %s",l,a);
}
i=-1;
printf("\n");
}
}
fclose(fp1);
}

/* 204. UNION - READ BIODATA FROM KEYBOARD AND WRITE IT IN FILE */


#include<stdio.h>
main(int argc,char *argv[])
{
union xyz
{
struct bio
{
char name[20],address[40];
int age;
float salary;
}a;
char b[sizeof(struct bio)];
};
union xyz m;
FILE *fp1;
struct bio a;
int i;
if(argc!=2)
{
printf("wrong usage");
return;
}
fp1=fopen(argv[1],"w");
if(fp1==NULL)
{
printf("file opening error");
return;
}
scanf("%s%d%f%s",m.a.name,&m.a.age,&m.a.salary,m.a.address);
for(i=0;i<sizeof(struct bio);i++)
fprintf(fp1,"%c",m.b[i]);
fclose(fp1);
}
/* 205. UNION - READ FROM FILE CHAR BY CHAR AND DISPLAY ON SCREEN
*/
#include<stdio.h>
main(int argc,char *argv[])
{
union xyz
{
struct bio
{

char name[20],address[40];
int age;
float salary;
}a;
char b[sizeof(struct bio)];
};
union xyz m;
FILE *fp1;
char a,b;
int i;
if(argc!=2)
{
printf("wrong usage");
return;
}
fp1=fopen(argv[1],"r");
if(fp1==NULL)
{
printf("file opening error");
return;
}
for(i=0;i<sizeof(struct bio);i++)
fscanf(fp1,"%c",&m.b[i]);
printf("%s\n%d\n%f\n%s\n",m.a.name,m.a.age,m.a.salary,m.a.address);
fclose(fp1);
}
/* 206. UNION - READ MORE THAN ONE BIODATA FROM KEYBOARD AND
WRITE IT IN FILE */
#include<stdio.h>
main(int argc,char *argv[])
{
union xyz
{
struct bio
{
char name[20],address[40];
int age;
float salary;
}a;
char b[sizeof(struct bio)];
};
union xyz m;
FILE *fp1;
char a,b;

int i;
if(argc!=2)
{
printf("wrong usage");
return;
}
fp1=fopen(argv[1],"w");
if(fp1==NULL)
{
printf("file opening error");
return;
}
for(scanf("%s",m.a.name);m.a.name[0]!='$';scanf("%s",m.a.name))
{
scanf("%d%f%s",&m.a.age,&m.a.salary,m.a.address);
for(i=0;i<sizeof(struct bio);i++)
fprintf(fp1,"%c",m.b[i]);
}
fclose(fp1);
}
/* 207. UNION - READ FROM FILE UNTIL EOF AND DISPLAY ON SCREEN*/
#include<stdio.h>
main(int argc,char *argv[])
{
union xyz
{
struct bio
{
char name[20],address[40];
int age;
float salary;
}a;
char b[sizeof(struct bio)];
};
union xyz m;
FILE *fp1;
char a,b;
int i;
//
printf("sizeof(struct bio) = %d",sizeof(struct bio));
if(argc!=2)
{
printf("wrong usage");
return;
}

fp1=fopen(argv[1],"r");
if(fp1==NULL)
{
printf("file opening error");
return;
}
for(i=0;i<sizeof(struct bio);i++)
fscanf(fp1,"%c",&m.b[i]);
do
{
printf("%s\n%d\n%f\n%s\n",m.a.name,m.a.age,m.a.salary,m.a.address);
for(i=0;i<sizeof(struct bio);i++)
fscanf(fp1,"%c",&m.b[i]);
}
while(feof(fp1)==0);
fclose(fp1);
}
/* 208. UNION - READ FROM FILE UNTIL EOF AND DISPLAY ON SCREEN*/
#include<stdio.h>
main(int argc,char *argv[])
{
union xyz
{
struct bio
{
char name[20],address[40];
int age;
float salary;
}a;
char b[sizeof(struct bio)];
};
union xyz m;
FILE *fp1;
char a,b;
int i;
float hra,cca,da,totalsal;
printf("sizeof(struct bio) = %d",sizeof(struct bio));
if(argc!=2)
{
printf("wrong usage");
return;
}
fp1=fopen(argv[1],"r");

if(fp1==NULL)
{
printf("file opening error");
return;
}
for(i=0;i<sizeof(struct bio);i++)
fscanf(fp1,"%c",&m.b[i]);
do
{
hra=0.125*m.a.salary;
cca=0.250*m.a.salary;
da=0.56*m.a.salary;
totalsal=hra+cca+da+m.a.salary;
printf("%s\n%d\n%f\n%s\n",m.a.name,m.a.age,m.a.salary,m.a.address);
printf("%f\n%f\n%f\n%f\n",hra,cca,da,totalsal);
for(i=0;i<sizeof(struct bio);i++)
fscanf(fp1,"%c",&m.b[i]);
}
while(feof(fp1)==0);
fclose(fp1);
}
/* 209. UNION ,RANDOM ACCESS - READ BIODATA FROM KEYBOARD AND
WRITE IT IN FILE */
#include<stdio.h>
main(int argc,char *argv[])
{
union xyz
{
struct bio
{
char name[20],address[40];
int age;
float salary;
}a;
char b[sizeof(struct bio)];
};
union xyz m;
int n;
float ln;
FILE *fp1;
char a;
int i;

if(argc!=2)
{
printf("wrong usage");
return;
}
fp1=fopen(argv[1],"r");
if(fp1==NULL)
{
printf("file opening error");
return;
}
scanf("%d",&n);
ln=(n-1)*sizeof(struct bio);
fseek(fp1,ln,0);
for(i=0;i<sizeof(struct bio);i++)
fscanf(fp1,"%c",&m.b[i]);
printf("%s\n%d\n%f\n%s\n",m.a.name,m.a.age,m.a.salary,m.a.address);
fclose(fp1);
}

/* 210. UNION ,RANDOM ACCESS - DISPLAY N TH RECORD WITH PAYSLIP */


#include<stdio.h>
main(int argc,char *argv[])
{
union xyz
{
struct bio
{
char name[20],address[40];
int age;
float salary;
}a;
char b[sizeof(struct bio)];
};
union xyz m;
int n,i;
float ln,hra,cca,da,totalsal;
FILE *fp1;
char a;

if(argc!=2)
{
printf("wrong usage");
return;
}
fp1=fopen(argv[1],"r");
if(fp1==NULL)
{
printf("file opening error");
return;
}
scanf("%d",&n);
ln=(n-1)*sizeof(struct bio);
fseek(fp1,ln,0);
for(i=0;i<sizeof(struct bio);i++)
fscanf(fp1,"%c",&m.b[i]);
hra=0.125*m.a.salary;
cca=0.150*m.a.salary;
da=0.42*m.a.salary;
totalsal=hra+cca+da+m.a.salary;
printf("%s\n%d\n%f\n%s\n",m.a.name,m.a.age,m.a.salary,m.a.address);
printf("%f\n%f\n%f\n%f\n",hra,cca,da,totalsal);
fclose(fp1);
}
/* 211. UNION ,RANDOM ACCESS - EDIT N TH RECORD */
#include<stdio.h>
main(int argc,char *argv[])
{
union xyz
{
struct bio
{
char name[20],address[40];
int age;
float salary;
}a;
char b[sizeof(struct bio)];
};
union xyz m;

int n,i;
float ln;
FILE *fp1;
char a;
if(argc!=2)
{
printf("wrong usage");
return;
}
fp1=fopen(argv[1],"r+");
if(fp1==NULL)
{
printf("file opening error");
return;
}
scanf("%d",&n);
ln=(n-1)*sizeof(struct bio);
fseek(fp1,ln,0);
for(i=0;i<sizeof(struct bio);i++)
fscanf(fp1,"%c",&m.b[i]);
printf("%s%d%f%s",m.a.name,m.a.age,m.a.salary,m.a.address);
scanf("%s%d%f%s",m.a.name,&m.a.age,&m.a.salary,m.a.address);
fseek(fp1,ln,0);
for(i=0;i<sizeof(struct bio);i++)
fprintf(fp1,"%c",m.b[i]);
fclose(fp1);
}
/* 212. INDEX SEQUENTIAL */
#include<stdio.h>
main(int argc,char *argv[])
{
union xyz
{
struct bio
{
char name[20],address[40];
int age,accno;
float salary;
}a;
char b[sizeof(struct bio)];
};
union xyz m;

FILE *fp1,*fp2;
char a;
int n,i;
if(argc!=3)
{
printf("wrong usage");
return;
}
fp1=fopen(argv[1],"w");
if(fp1==NULL)
{
printf("file opening error");
return;
}
fp2=fopen(argv[2],"w");
if(fp2==NULL)
{
printf("file opening error");
return;
}
scanf("%d",&m.a.accno);
while(m.a.accno!=0)
{
fprintf(fp1,"%d",m.a.accno);
fprintf(fp1,"\n");
scanf("%s%d%f%s",m.a.name,&m.a.age,&m.a.salary,m.a.address);
for(i=0;i<sizeof(struct bio);i++)
fprintf(fp2,"%c",m.b[i]);
scanf("%d",&m.a.accno);
}
fclose(fp1);
fclose(fp2);
}

/* 213. INDEX SEQUENTIAL - CHECK WHETHER GIVEN NO IS AVAILABLE


IN THE ACCOUNT
FILE OR NOT */
#include<stdio.h>
main(int argc,char *argv[])
{
FILE *fp1;
int n,i,c=0,accno;

if(argc!=2)
{
printf("wrong usage");
return;
}
fp1=fopen(argv[1],"r");
if(fp1==NULL)
{
printf("file opening error");
return;
}
printf("enter the account no to be verified:\n");
/*
scanf("%d",&n);
do
{
fscanf(fp1,"%d",&accno);
c++;
if(accno==n)
{
printf("%d is found at %d\n\n",n,c);
return;
}
}
while(feof(fp1)==0); */
scanf("%d",&n);
while(feof(fp1)==0)
{
fscanf(fp1,"%d",&accno);
c++;
if(accno==n)
{
printf("%d is found at %d\n\n",n,c);
return;
}
}
fclose(fp1);
}

/* 214. INDEX SEQUENTIAL - READ THE ACCOUNT NO FROM KB AND


DISPLAY RECORD*/
#include<stdio.h>
main(int argc,char *argv[])
{
union xyz
{
struct bio
{
char name[20],address[40];
int age,accno;
float salary;
}a;
char b[sizeof(struct bio)];
};
union xyz m;
FILE *fp1,*fp2;
char a,b;
int c=0,n,i;
float ln;
if(argc!=3)
{
printf("wrong usage");
return;
}
fp1=fopen(argv[1],"r");
if(fp1==NULL)
{
printf("file opening error");
return;
}
fp2=fopen(argv[2],"r");
if(fp2==NULL)
{
printf("file opening error");
return;
}
scanf("%d",&n);
while(feof(fp1)==0)
{
fscanf(fp1,"%d",&m.a.accno);
c++;
if(m.a.accno==n)
{
ln=(c-1)*sizeof(struct bio);
fseek(fp2,ln,0);

for(i=0;i<sizeof(struct bio);i++)
fscanf(fp2,"%c",&m.b[i]);
printf("%s\n%d\n%f\n%s\n",m.a.name,m.a.age,m.a.salary,m.a.addr
ess);
return;
}
}
fclose(fp1);
fclose(fp2);
}

/* 215. INDEX SEQUENTIAL - READ ACC NO AND DISPLAY RECORD WITH


PAYSLIP*/
#include<stdio.h>
main(int argc,char *argv[])
{
union xyz
{
struct bio
{
char name[20],address[40];
int age,accno;
float salary;
}a;
char b[sizeof(struct bio)];
};
union xyz m;
FILE *fp1,*fp2;
char a,b;
int c=0,n,i;
float ln,hra,cca,da,totalsal;
if(argc!=3)
{
printf("wrong usage");
return;
}
fp1=fopen(argv[1],"r");
if(fp1==NULL)
{
printf("file opening error");
return;
}

fp2=fopen(argv[2],"r");
if(fp2==NULL)
{
printf("file opening error");
return;
}
scanf("%d",&n);
while(feof(fp1)==0)
{
fscanf(fp1,"%d",&m.a.accno);
c++;
if(m.a.accno==n)
{
ln=(c-1)*sizeof(struct bio);
fseek(fp2,ln,0);
for(i=0;i<sizeof(struct bio);i++)
fscanf(fp2,"%c",&m.b[i]);
hra=0.125*m.a.salary;
cca=0.25*m.a.salary;
da=0.750*m.a.salary;
totalsal=hra+cca+da+m.a.salary;
printf("%s\n%d\n%f\n%s\n",m.a.name,m.a.age,m.a.salary,m.a.address);
printf("%f\n%f\n%f\n%f\n",hra,cca,da,totalsal);
return;
}
}
fclose(fp1);
fclose(fp2);
}

/* 216. INDEX SEQUENTIAL - READ THE ACC no AND EDIT THE RECORD*/
#include<stdio.h>
main(int argc,char *argv[])
{
union xyz
{
struct bio
{
char name[20],address[40];
int age,accno;
float salary;
}a;

char b[sizeof(struct bio)];


};
union xyz m;
FILE *fp1,*fp2;
char a,b;
int c=0,n,i;
float ln;
if(argc!=3)
{
printf("wrong usage");
return;
}
fp1=fopen(argv[1],"r");
if(fp1==NULL)
{
printf("file opening error");
return;
}
fp2=fopen(argv[2],"r+");
if(fp2==NULL)
{
printf("file opening error");
return;
}
scanf("%d",&n);
while(feof(fp1)==0)
{
fscanf(fp1,"%d",&m.a.accno);
c++;
if(m.a.accno==n)
{
ln=(c-1)*sizeof(struct bio);
fseek(fp2,ln,0);
for(i=0;i<sizeof(struct bio);i++)
fscanf(fp2,"%c",&m.b[i]);
printf("%s\n%d\n%f\n%s\n",m.a.name,m.a.age,m.a.salary,m.a.addr
ess);
scanf("%s\n%d\n%f\n%s\n",m.a.name,&m.a.age,&m.a.salary,m.a.add
ress);
fseek(fp2,ln,0);
for(i=0;i<sizeof(struct bio);i++)
fprintf(fp2,"%c",m.b[i]);
return;
}
}
fclose(fp1);

fclose(fp2);
}

/* 217. LINUX SYSTEM INTERNALS - READ FROM KB CHAR BY CHAR,


WRITE IT IN FILE */
#include<stdio.h>
main(int argc, char *argv[])
{
char a;
int i,n,fd;
if(argc!=2)
{
printf("wrong usage");
return;
}
fd=creat(argv[1],0640);
fd=open(argv[1],1);
if(fd==-1)
{
printf("file opening error");
return;
}
i=read(0,&a,1);
while(a!='$')
{
i=write(fd,&a,1);
i=read(0,&a,1);
}
close(fd);
}
/* 218. LINUX SYSTEM INTERNALS - READ FROM FILE DISPLAY ON
SCREEN */
#include<stdio.h>
main(int argc, char *argv[])
{
char a;
int i,n,fd;
if(argc!=2)
{
printf("wrong usage");

return;
}
fd=open(argv[1],0);
if(fd==-1)
{
printf("file opening error");
return;
}
i=read(fd,&a,1);
while(i>0)
{
write(1,&a,1);
i=read(fd,&a,1);
}
close(fd);
}
/* 219. LINUX SYSTEM INTERNALS - CAT ALL FILES */
#include<stdio.h>
main(int argc, char *argv[])
{
char a;
int i,n,fd,j;
if(argc < 2)
{
printf("wrong usage");
return;
}
for(j=1;j<argc;j++)
{
fd=open(argv[j],0);
if(fd==-1)
{
printf("file opening error");
return;
}
i=read(fd,&a,1);
while(i>0)
{
write(1,&a,1);
i=read(fd,&a,1);
}
close(fd);
}
}

/* 220. LINUX SYSTEM INTERNALS - COPY COMMAND */


#include<stdio.h>
main(int argc, char *argv[])
{
char a;
int i,n,fd1,fd2;
if(argc!=3)
{
printf("wrong usage");
return;
}
fd1=open(argv[1],0);
if(fd1==-1)
{
printf(" fd1 file opening error");
return;
}
fd2=open(argv[2],1);
if(fd2==-1)
{
fd2=creat(argv[2],0640);
fd2=open(argv[1],1);
if(fd2==-1)
{
printf("fd2 -file opening error");
return;
}
}
i=read(fd1,&a,1);
while(i>0)
{
write(fd2,&a,1);
i=read(fd1,&a,1);
}
close(fd1);
close(fd2);
}
/* 221. LINUX SYSTEM INTERNALS - MERGE TWO FILES */
#include<stdio.h>
main(int argc, char *argv[])
{
char a;
int i,n,fd1,fd2,fd3;
if(argc!=4)

{
printf("wrong usage");
return;
}
fd1=open(argv[1],0);
if(fd1==-1)
{
printf(" fd1 file opening error");
return;
}
fd2=open(argv[2],0);
if(fd2==-1)
{
printf(" fd2 file opening error");
return;
}
fd3=open(argv[3],1);
if(fd3==-1)
{
fd3=creat(argv[3],0640);
fd3=open(argv[3],1);
if(fd3==-1)
{
printf("fd3 -file opening error");
return;
}
}
i=read(fd1,&a,1);
while(i>0)
{
write(fd3,&a,1);
i=read(fd1,&a,1);
}
i=read(fd2,&a,1);
while(i>0)
{
write(fd3,&a,1);
i=read(fd2,&a,1);
}
close(fd1);
close(fd2);
close(fd3);
}

/* 223. LINUX SYSTEM INTERNALS - LOAD ENTIRE FILE ON ARRAY,


DISPLAY ON SCREE
N */
#include<stdio.h>
main(int argc, char *argv[])
{
char a[1000],ch;
int i,j,n,fd,l=0;
if(argc!=2)
{
printf("wrong usage");
return;
}
fd=open(argv[1],0);
if(fd==-1)
{
printf("file opening error");
return;
}
for(i=0,j=0;(i=read(fd,&a[j],1))>0;j++)
{
if(a[j]=='\n')
{
a[j]='\0';
l=l+1;
for(j=0;a[j]!='\0';j++)
write(1,&a[j],1);
printf("\n");
j=-1;
}
}
close(fd);
}
/* 224. LINUX SYSTEM INTERNALS - LOAD ENTIRE FILE ON ARRAY,
LINE BY LINE WIT
H NO */
#include<stdio.h>
main(int argc, char *argv[])
{
char a[1000],ch;
int i,j,n,fd,l=0;
if(argc!=2)
{

printf("wrong usage");
return;
}
fd=open(argv[1],0);
if(fd==-1)
{
printf("file opening error");
return;
}
for(i=0,j=0;(i=read(fd,&a[j],1))>0;j++)
{
if(a[j]=='\n')
{
a[j]='\0';
for(printf("%d",++l),j=0;a[j]!='\0';j++)
write(1,&a[j],1);
j=-1;
}
}
close(fd);
}
/* 225. LINUX SYSTEM INTERNALS - LOAD ENTIRE FILE ON ARRAY,
LINE BY LINE WIT
H NO */
/* PAGE COMMAND - PAGE BY PAGE */
#include<stdio.h>
main(int argc, char *argv[])
{
char a[1000],ch;
int i,j,n,fd,l=0,p=0;
if(argc!=2)
{
printf("wrong usage");
return;
}
fd=open(argv[1],0);
if(fd==-1)
{
printf("file opening error");
return;
}

for(i=0,j=0;(i=read(fd,&a[j],1))>0;j++)
{
if(a[j]=='\n')
{
a[j]='\0';
for(printf("%d",++l),j=0;a[j]!='\0';j++)
write(1,&a[j],1);
printf("\n");
p=l%24;
if(p==0)
scanf("%c",&ch);
j=-1;
}
}
close(fd);
}
/* 226. LINUX SYSTEM INTERNALS - LOAD ENTIRE FILE ON ARRAY,
LINE BY LINE WIT
H NO */
/* PAGE COMMAND - PAGE BY PAGE */
#include<stdio.h>
main(int argc, char *argv[])
{
char a[1000],ch;
int i,j,n,fd,x=0,p=0,w=0,l=0,c=0;
if(argc!=2)
{
printf("wrong usage");
return;
}
fd=open(argv[1],0);
if(fd==-1)
{
printf("file opening error");
return;
}
for(i=0,j=0;(i=read(fd,&a[j],1))>0;j++)
{
if(a[j]=='\n')
{

a[j]='\0';
for(x++,j=0;a[j]!='\0';j++)
{
if(a[j]!=' '&&a[j+1]==' '||a[j]!='\t'&&a[j+1]=='\t'||a[j]!='\n'&&a[j+1]=='\n')
w++;
if(a[j]=='\n')
l++;
c++;
}
j=-1;
}
}
printf(" %d %d %d %d\n",x,w,l,c);
close(fd);
}
/* 227. LINUX SYSTEM INTERNALS - GREP COMMAND -DISPLAYING IF
PATTERN OCCURS
*/
#include<stdio.h>
main(int argc, char *argv[])
{
char a[1000],b[20],ch;
int i,j,n,fd,x=0,p=0,c=0,k,l;
if(argc!=3)
{
printf("wrong usage");
return;
}
fd=open(argv[2],0);
if(fd==-1)
{
printf("file opening error");
return;
}
for(l=0,j=0;(l=read(fd,&a[j],1))>0;j++)
{
if(a[j]=='\n')
{
a[j]='\0';
for(j=0;a[j]!='\0';j++)
{
for(i=0,k=j;argv[1][i]==a[k]&&argv[1][i]!='\0';i++,k++)
;
if(argv[1][i]=='\0')

{
printf("%s",a);
}
}
j=-1;
}
}
close(fd);
}
/* 228. LINUX SYSTEM INTERNALS - GREP COMMAND -DISPLAYING
with line no
IF PATTERN OCCURS */
#include<stdio.h>
main(int argc, char *argv[])
{
char a[1000],b[20],ch;
int i,j,n,fd,x=0,p=0,c=0,k,l,line=0;
if(argc!=3)
{
printf("wrong usage");
return;
}
fd=open(argv[2],0);
if(fd==-1)
{
printf("file opening error");
return;
}
for(l=0,j=0;(l=read(fd,&a[j],1))>0;j++)
{
if(a[j]=='\n')
{
line++;
a[j]='\0';
for(j=0;a[j]!='\0';j++)
{
for(i=0,k=j;argv[1][i]==a[k]&&argv[1][i]!='\0';i++,k++)
;
if(argv[1][i]=='\0')
{
printf(" %d . %s",line,a);
}
}
j=-1;

}
}
close(fd);
}
/* 229. LINUX SYSTEM INTERNALS-GREP ALL FILES-DISPLAYING
with line no I
F PATTERN OCCURS */
#include<stdio.h>
main(int argc, char *argv[])
{
char a[1000],b[20],ch;
int i,j,n,fd,x=0,p=0,c=0,k,l,line=0;
if(argc<2)
{
printf("wrong usage");
return;
}
for(n=1;n<argc-1;n++)
{
fd=open(argv[n],0);
if(fd==-1)
{
printf("file opening error");
return;
}
for(l=0,j=0;(l=read(fd,&a[j],1))>0;j++)
{
if(a[j]=='\n')
{
line++;
a[j]='\0';
for(j=0;a[j]!='\0';j++)
{
for(i=0,k=j;argv[1][i]==a[k]&&argv[1][i]!='\0';i++,k++)
;
if(argv[1][i]=='\0')
printf(" %d . %s",line,a);
}
j=-1;
}
}
close(fd);
}

/* 230. LINUX SYSTEM INTERNALS & BLOCK OPERATION - COPY


COMMAND */
#include<stdio.h>
main(int argc, char *argv[])
{
char a[512];
int i,n,fd1,fd2;
if(argc!=3)
{
printf("wrong usage");
return;
}
fd1=open(argv[1],0);
if(fd1==-1)
{
printf(" fd1 file opening error");
return;
}
fd2=open(argv[2],1);
if(fd2==-1)
{
fd2=creat(argv[2],0640);
fd2=open(argv[1],1);
if(fd2==-1)
{
printf("fd2 -file opening error");
return;
}
}
i=read(fd1,&a,512);
while(i>0)
{
write(fd2,&a,i);
i=read(fd1,&a,512);
}
close(fd1);
close(fd2);
}
/* 231. LINUX SYSTEM INTERNALS & BLOCK OPERATION - MERGE
TWO FILES */
#include<stdio.h>
main(int argc, char *argv[])

{
char a[512];
int i,n,fd1,fd2,fd3;
if(argc!=4)
{
printf("wrong usage");
return;
}
fd1=open(argv[1],0);
if(fd1==-1)
{
printf(" fd1 file opening error");
return;
}
fd2=open(argv[2],0);
if(fd2==-1)
{
printf(" fd2 file opening error");
return;
}
fd3=open(argv[3],1);
if(fd3==-1)
{
fd3=creat(argv[3],0640);
fd3=open(argv[3],1);
if(fd3==-1)
{
printf("fd3 -file opening error");
return;
}
}
i=read(fd1,&a,512);
while(i>0)
{
write(fd3,&a,i);
i=read(fd1,&a,512);
}
i=read(fd2,&a,512);
while(i>0)
{
write(fd3,&a,i);
i=read(fd2,&a,512);
}
close(fd1);
close(fd2);
close(fd3);

}
/* 232. READ BIODATA FROM KEYBOARD AND WRITE IN FILE */
union xyz
{
struct bio
{
char name[20],address[40];
int age;
float salary;
}a;
char b[sizeof(struct bio)];
};
main(int argc,char *argv[])
{
int fd,i;
char a[512],b[512];
union xyz m;
if(argc!=2)
{
printf("wrong usage");
return;
}
fd=open(argv[1],1);
if(fd==-1)
{
printf("file opening error");
return;
}
scanf("%s%d%f%s",m.a.name,&m.a.age,&m.a.salary,m.a.address);
write(fd,m.b,sizeof(struct bio));
close(fd);
}
/* 233. READ AS BLOCK FROM FILE AND DISPLAY ON SCREEN */
union xyz
{
struct bio
{
char name[20],address[40];
int age;
float salary;
}a;
char b[sizeof(struct bio)];
};
main(int argc,char *argv[])

{
int fd,i;
char a[512],b[512];
union xyz m;
if(argc!=2)
{
printf("wrong usage");
return;
}
fd=open(argv[1],0);
if(fd==-1)
{
printf("file opening error");
return;
}
read(fd,m.b,sizeof(struct bio));
printf("%s\n%d\n%f\n%s\n",m.a.name,m.a.age,m.a.salary,m.a.address);
close(fd);
}
/* 234. READ BIODATA FROM KEYBOARD UNTIL $ AND WRITE IN FILE */
union xyz
{
struct bio
{
char name[20],address[40];
int age;
float salary;
}a;
char b[sizeof(struct bio)];
};
main(int argc,char *argv[])
{
int fd,i;
char a[512];
union xyz m;
if(argc!=2)
{
printf("wrong usage");
return;
}
fd=creat(argv[1],0640);
if(fd==-1)
{
printf("file opening error");
return;

}
fd=open(argv[1],1);
if(fd==-1)
{
fd=creat(argv[1],0640);
{
printf("file opening error");
return;
}
}
scanf("%s",m.a.name);
while(m.a.name[0]!='$')
{
scanf("%d%f%s",&m.a.age,&m.a.salary,m.a.address);
i=write(fd,m.b,sizeof(struct bio));
scanf("%s",m.a.name);
}
close(fd);
}
/* 235. READ AS BLOCK FROM FILE UNTIL EOF AND DISPLAY ON
SCREEN */
union xyz
{
struct bio
{
char name[20],address[40];
int age;
float salary;
}a;
char b[sizeof(struct bio)];
};
main(int argc,char *argv[])
{
int fd,i;
char a[512];
union xyz m;
if(argc!=2)
{
printf("wrong usage");
return;
}
fd=open(argv[1],0);
if(fd==-1)
{
printf("file opening error");
return;

}
i=read(fd,m.b,sizeof(struct bio));
while(i>0)
{
printf("%s\n%d\n%f\n%s\n",m.a.name,m.a.age,m.a.salary,m.a.address);
i=read(fd,m.b,sizeof(struct bio));
}
close(fd);
}
/* 236. READ NTH RECORD AS BLOCK FROM FILE AND DISPLAY ON
SCREEN */
union xyz
{
struct bio
{
char name[20],address[40];
int age;
float salary;
}a;
char b[sizeof(struct bio)];
};
main(int argc,char *argv[])
{
int fd,i,n,ln;
char a[512];
union xyz m;
if(argc!=2)
{
printf("wrong usage");
return;
}
fd=open(argv[1],0);
if(fd==-1)
{
printf("file opening error");
return;
}
scanf("%d",&n);
ln=(n-1)*sizeof(struct bio);
lseek(fd,ln,0);
read(fd,m.b,sizeof(struct bio));
printf("%s\n%d\n%f\n%s\n",m.a.name,m.a.age,m.a.salary,m.a.address);
close(fd);
}

/* 237. READ N TH BIODATA FROM KEYBOARD AND WRITE IN FILE


*/
union xyz
{
struct bio
{
char name[20],address[40];
int age;
float salary;
}a;
char b[sizeof(struct bio)];
};
main(int argc,char *argv[])
{
int fd,i,n,ln;
char a[512],b[512];
union xyz m;
if(argc!=2)
{
printf("wrong usage");
return;
}
fd=open(argv[1],1);
if(fd==-1)
{
printf("file opening error");
return;
}
scanf("%d",&n);
ln=(n-1)*sizeof(struct bio);
lseek(fd,ln,0);
scanf("%s%d%f%s",m.a.name,&m.a.age,&m.a.salary,m.a.address);
write(fd,m.b,sizeof(struct bio));
close(fd);
}
/* 238. EDIT N TH RECORD */
union xyz
{
struct bio
{
char name[20],address[40];
int age;
float salary;
}a;
char b[sizeof(struct bio)];
};

main(int argc,char *argv[])


{
int fd,i,n,ln;
char a[512];
union xyz m;
if(argc!=2)
{
printf("wrong usage");
return;
}
fd=open(argv[1],2);
if(fd==-1)
{
printf("file opening error");
return;
}
scanf("%d",&n);
ln=(n-1)*sizeof(struct bio);
lseek(fd,ln,0);
i=read(fd,m.b,sizeof(struct bio));
printf("%s\n%d\n%f\n%s\n",m.a.name,m.a.age,m.a.salary,m.a.address);
lseek(fd,ln,0);
scanf("%s%d%f%s",m.a.name,&m.a.age,&m.a.salary,m.a.address);
write(fd,m.b,sizeof(struct bio));
close(fd);
}
/* 239. READ BLOCK FROM FILE AND DISPLAY ON SCREEN */
union xyz
{
struct bio
{
char filename[14];
int imode;
}a;
char b[sizeof(struct bio)];
};
main(int argc,char *argv[])
{
int fd,i;
char a[512],b[512];
union xyz m;
if(argc!=2)
{
printf("wrong usage");
return;
}

/* fd=creat(argv[1],0640);
if(fd==-1)
{
printf("file opening error");
return;
}*/
fd=open(argv[1],0);
if(fd==-1)
{
printf("file opening error");
return;
}
i=read(fd,m.b,sizeof(struct bio));
while(i>0)
{
printf("%d. %s\n",m.a.imode,m.a.filename);
i=read(fd,m.b,sizeof(struct bio));
}
close(fd);
}
/* 240. LINK COMMAND */
main(int argc,char *argv[])
{
int i,fd;
if(argc!=3)
{
printf("wrong usage");
return;
}
i=link(argv[1],argv[2]);
if(i==0)
printf("file is linked");
else
printf("file is not linked");
}
/* 241. UNLINK COMMAND - REMOVE FILE */
main(int argc,char *argv[])
{
int i,fd;
if(argc!=2)
{
printf("wrong usage");
return;
}
i=unlink(argv[1]);

if(i==0)
printf("file is removed");
else
printf("file is not removed ");
}
/* 242. UNLINK COMMAND - REMOVE ALL FILES */
main(int argc,char *argv[])
{
int i,j,fd;
if(argc<2)
{
printf("wrong usage");
return;
}
for(j=1;j<argc;j++)
{
i=unlink(argv[j]);
if(i==0)
printf("%d th file is removed\n",j);
else
printf("%d th file is not removed\n",j);
}
}
/* 243. MOVE COMMAND - LINK NEW FILE, UNLINK OLD FILE */
main(int argc,char *argv[])
{
int i,j,fd;
if(argc!=3)
{
printf("wrong usage");
return;
}
i=link(argv[1],argv[2]);
{
if(i==0)
printf("file is linked\n");
else
printf("file is unlinked\n");
}
i=unlink(argv[1]);
{
if(i==0)
printf("file is removed\n");
else
printf("file is not removed\n");
}

}
/* 244. LINUX SYSTEM INTERNALS & BLOCK OPERATION ENCRYPTION */
#include<stdio.h>
main(int argc, char *argv[])
{
char a,temp;
int i,n,fd,j,k,fd1,fd2;
if(argc!=3)
{
printf("wrong usage");
return;
}
fd1=open(argv[1],0);
if(fd1==-1)
{
printf(" fd1 file opening error");
return;
}
fd2=open(argv[2],1);
if(fd2==-1)
{
fd2=creat(argv[2],0640);
fd2=open(argv[2],1);
if(fd2==-1)
{
printf("fd2 -file opening error");
return;
}
}
for(i=read(fd1,&a,1);i>0;i=read(fd1,&a,1))
{
a=a+1;
write(fd2,&a,i);
}
j=link("temp",argv[2]);
if(j==0)
printf("the file is linked\n");
else
printf("file is not linked\n");
j=link(argv[1],"temp");
if(j==0)
printf("the file is linked\n");
else
printf("file is not linked\n");

k=unlink("temp");
if(k==0)
printf("file is unlinked");
else
printf("file is not unlinked");
close(fd1);
close(fd2);
}
/* 246. ACCESS COMMAND - WHETHER FILE IS AVAILABLE OR NOT */
main(int argc,char *argv[])
{
int i;
if(argc!=2)
{
printf("wrong usage");
return;
}
i=access(argv[1],0);
if(i==0)
printf("file is available");
else
printf("file is not available");
}
/* 247. vi COMMAND - IF FILE IS AVAILABLE DISPLAY IT, */
/* IF NOT AVAILABLE, CREATE ,READ FROM KEYBOARD, WRITE IT IN FILE
*/
main(int argc,char *argv[])
{
int i,fd,j;
char a;
if(argc!=2)
{
printf("wrong usage");
return;
}
i=access(argv[1],0);
if(i==0)
{
printf("file is available");
fd=open(argv[1],0);
if(fd==-1)
{
printf("file opening error");

return;
}
j=read(fd,&a,1);
while(j>0)
{
write(1,&a,1);
j=read(fd,&a,1);
}
close(fd);
}
else
{
printf("file is not availbale");
fd=creat(argv[1],0640);
fd=open(argv[1],1);
if(fd==-1)
{
printf("file opening error");
return;
}
j=read(0,&a,1);
while(a!='$')
{
write(fd,&a,1);
j=read(0,&a,1);
}
close(fd);
}
}
/* 248. ACCESS COMMAND - CHECKING THE PERMISSION WHETHER AVAILABLE
OR NOT */
main(int argc,char *argv[])
{
int i,j,k;
if(argc!=2)
{
printf("wrong usage");
return;
}
i=access(argv[1],0100);
if(i==0)
printf("owner has execution permission\n");
else

printf("owner doesn't have execution permission\n");


j=access(argv[1],0200);
if(j==0)
printf("owner has reading permission\n");
else
printf("owner does not have reading permission\n");
k=access(argv[1],0400);
if(k==0)
printf("owner has writing permission\n");
else
printf("owner doesn't have writing permission\n");
}
/* 249. ACCESS COMMAND - remove file */
/* FILE CANT BE DELETED IN READ MODE, CHANGE THAT INTO WRITE
MODE THEN DELETE */
main(int argc,char *argv[])
{
int i,j,k;
if(argc!=2)
{
printf("wrong usage");
return;
}
i=access(argv[1],0);
if(i==0)
{
printf("file is availbale\n");
i=access(argv[1],0200);
if(i==0)
{
i=unlink(argv[1]);
if(j==0)
printf("file is removed\n");
else
printf("file is not removed\n");
}
else
{
k=chmod(argv[1],0200);
if(k==0)
{
i=unlink(argv[1]);
if(i==0)
printf("changemode file is removed\n");
else
printf("change mode file is not removed\

n");
}
}
}
}

/* 23. IMPLICIT CHECKING(NEGATION) - TO check THE NUMBER AS EVEN OR


ODD */
main()
{
int a;
printf("ENTER THE INTEGER NO.:\n");
scanf("%d",&a);
if(!(a%2))
printf("%d is even",a);
else
printf("%d is odd",a);
}

/* 250. FUNCTIONS - SUM OF TWO INTEGER NUMBERS*/


main()
{
int a,b,c;
printf("enter the numbers:\n");
scanf("%d%d",&a,&b);
c=sum(a,b);
printf("sum is %d\n",c);
}
int sum(x,y)
int x,y;
{
int z;
z=x+y;
return z;
}
/* 251. FUNCTIONS - BIGGEST OF TWO INTEGER NUMBERS*/
main()

{
int a,b,c;
printf("enter the numbers:\n");
scanf("%d%d",&a,&b);
c=big(a,b);
printf("BIG is %d\n",c);
}
int big(x,y)
int x,y;
{
int z;
z=x>y?x:y;
return z;
}
/* 252. FUNCTIONS - AREA OF CIRCLE */
#define pi 3.14
main()
{
int r;
float a,area();
printf("enter the radius:\n");
scanf("%d",&r);
a=area(r);
printf("AREA is %f\n",a);
}
float area(int r)
{
float a;
a=pi*r*r;
return a;
}
/* 253. FUNCTIONS - VOLUME OF THE CYLINDER */
#define pi 3.14
main()
{
int r,h;
float v,volume();
printf("enter the radius and height:\n");
scanf("%d%d",&r,&h);
v=volume(r,h);
printf("VOLUME is %f\n",v);
}
float volume(int r,int h)
{

float v;
v=pi*r*r*h;
return v;
}
/* 254. FUNCTIONS - VOLUME OF THE SPHERE */
#define pi 3.14
main()
{
int r;
float v,volume();
printf("enter the radius :\n");
scanf("%d",&r);
v=volume(r);
printf("VOLUME is %f\n",v);
}
float volume(int r)
{
float v;
v=4.0/3.0*pi*r*r*r;
return v;
}
/* 255. FUNCTIONS - VOLUME OF THE SPHERE */
#define pi 3.14
main()
{
int no;
printf("enter the number:\n");
scanf("%d",&no);
check(no);
}
check(int no)
{
if(no%2==0)
printf("%d is even",no);
else
printf("%d is odd",no);
return;
}
/* 256. USING SWITCH, CHECK AND PRINT SINGLE DIGIT NUMBER */
main()
{
int n,sd();
printf("enter the number\n");

scanf("%d",&n);
sd(n);
}
int sd(int n)
{
switch(n)
{
case 0:
printf("%d is zero",n);
break;
case 1:
printf("%d is one",n);
break;
case 2:
printf("%d is two",n);
break;
case 3:
printf("%d is three",n);
break;
case 4:
printf("%d is four",n);
break;
case 5:
printf("%d is five",n);
break;
case 6:
printf("%d is six",n);
break;
case 7:
printf("%d is seven",n);
break;
case 8:
printf("%d is eight",n);
break;
case 9:
printf("%d is nine",n);
break;
default:
printf("%d is a single not digit",n);
break;
}
}
/* 257. USING SWITCH, CHECK AND PRINT 11-20 NUMBER */
main()

{
int n,teen();
printf("enter the number\n");
scanf("%d",&n);
sd(n);
}
int sd(int n)
{
switch(n)
{
case 20:
printf("%d is twenty",n);
break;
case 11:
printf("%d is eleven",n);
break;
case 12:
printf("%d is twelve",n);
break;
case 13:
printf("%d is thirteen",n);
break;
case 14:
printf("%d is fourteen",n);
break;
case 15:
printf("%d is fifteen",n);
break;
case 16:
printf("%d is sixteen",n);
break;
case 17:
printf("%d is seventeen",n);
break;
case 18:
printf("%d is eighteen",n);
break;
case 19:
printf("%d is nineteen",n);
break;
default:
printf("%d is not 11 -20 no.",n);
break;
}
}

/* 258. USING SWITCH, CHECK AND PRINT TENS(10,20,30,...90) */


main()
{
int n,tens();
printf("enter the number\n");
scanf("%d",&n);
tens(n);
}
int tens(int n)
{
switch(n)
{
case 10:
printf("%d is ten",n);
break;
case 20:
printf("%d is twenty",n);
break;
case 30:
printf("%d is thirty",n);
break;
case 40:
printf("%d is fourty",n);
break;
case 50:
printf("%d is fifty",n);
break;
case 60:
printf("%d is sixty",n);
break;
case 70:
printf("%d is seventy",n);
break;
case 80:
printf("%d is eighty",n);
break;
case 90:
printf("%d is ninety",n);
break;
default:
printf("%d is a single not ten's",n);
break;
}
}

/* 259. USING SWITCH, CHECK AND PRINT DOUBLE DIGIT NUMBER */


main()
{
int n,sd(),teen(),dd(),tens();
printf("enter the number\n");
scanf("%d",&n);
dd(n);
}
int dd(int x)
{
int n,r;
if(x>=0&&x<=9)
sd(x);
else if(x>=11 && x<=19)
teen(x);
else if(x%10==0)
tens(x);
else
{
r=x%10;
n=x-r;
tens(n);
sd(r);
}
}
int sd(int n)
{
switch(n)
{
case 0:
printf(" zero");
break;
case 1:
printf(" one");
break;
case 2:
printf(" two");
break;
case 3:
printf(" three");
break;
case 4:
printf(" four");
break;
case 5:

printf(" five");
break;
case 6:
printf(" six");
break;
case 7:
printf(" seven");
break;
case 8:
printf(" eight");
break;
case 9:
printf(" nine");
break;
default:
printf("%d is a single not digit",n);
break;
}
}
int teen(int n)
{
switch(n)
{
case 20:
printf("twenty");
break;
case 11:
printf(" eleven");
break;
case 12:
printf(" twelve");
break;
case 13:
printf("thirteen");
break;
case 14:
printf(" fourteen ");
break;
case 15:
printf(" fifteen ");
break;
case 16:
printf(" sixteen ");
break;
case 17:
printf(" seventeen ");

break;
case 18:
printf(" eighteen ");
break;
case 19:
printf(" nineteen ");
break;
default:
printf("%d is not 11 -20 no.",n);
break;
}
}
int tens(int n)
{
switch(n)
{
case 10:
printf(" ten ");
break;
case 20:
printf(" twenty ");
break;
case 30:
printf(" thirty ");
break;
case 40:
printf(" fourty ");
break;
case 50:
printf(" fifty ");
break;
case 60:
printf(" sixty ");
break;
case 70:
printf(" seventy ");
break;
case 80:
printf(" eighty ");
break;
case 90:
printf(" ninety ");
break;
default:
printf("%d is not a double digit ",n);
break;

}
}
/* 260. USING SWITCH, CHECK AND PRINT THREE DIGIT NUMBER */
main()
{
int n,sd(),teen(),dd(),tens(),three();
printf("enter the number\n");
scanf("%d",&n);
dd(n);
}
int three(int x)
{
int q,r,h;
if(x>=0&&x<=99)
dd(x);
else if(x/100==0)
{
q=x/100;
sd(q);
printf("hundreds");
}
else
{
q=x/100;
sd(q);
printf("hundreds");
r=x%100;
dd(r);
}
}
int dd(int x)
{
int n,r;
if(x>=0&&x<=9)
sd(x);
else if(x>=11 && x<=19)
teen(x);
else if(x%10==0)
tens(x);
else
{
r=x%10;
n=x-r;
tens(n);
sd(r);

}
}
int sd(int n)
{
switch(n)
{
case 0:
printf(" zero");
break;
case 1:
printf(" one");
break;
case 2:
printf(" two");
break;
case 3:
printf(" three");
break;
case 4:
printf(" four");
break;
case 5:
printf(" five");
break;
case 6:
printf(" six");
break;
case 7:
printf(" seven");
break;
case 8:
printf(" eight");
break;
case 9:
printf(" nine");
break;
default:
printf("%d is a single not digit",n);
break;
}
}
int teen(int n)
{
switch(n)
{
case 20:

printf("twenty");
break;
case 11:
printf(" eleven");
break;
case 12:
printf(" twelve");
break;
case 13:
printf("thirteen");
break;
case 14:
printf(" fourteen ");
break;
case 15:
printf(" fifteen ");
break;
case 16:
printf(" sixteen ");
break;
case 17:
printf(" seventeen ");
break;
case 18:
printf(" eighteen ");
break;
case 19:
printf(" nineteen ");
break;
default:
printf("%d is not 11 -20 no.",n);
break;
}
}
int tens(int n)
{
switch(n)
{
case 10:
printf(" ten ");
break;
case 20:
printf(" twenty ");
break;
case 30:
printf(" thirty ");

break;
case 40:
printf(" fourty ");
break;
case 50:
printf(" fifty ");
break;
case 60:
printf(" sixty ");
break;
case 70:
printf(" seventy ");
break;
case 80:
printf(" eighty ");
break;
case 90:
printf(" ninety ");
break;
default:
printf("%d is not a double digit ",n);
break;
}
}
/* 261. READING ARRAY FROM FUNCTION & PRINTING IT IN FUNCTION */
main()
{
int i,a[10],read();
read(a);
for(i=0;i<10;i++)
printf("%d\n",a[i]);
}
int read(a)
int a[10];
{
int j;
printf("enter ten numbers:\n");
for(j=0;j<10;j++)
scanf("%d",&a[j]);
}
/* 262. READING ARRAY FROM FUNCTION & PRINTING IT another
FUNCTION */
main()
{

int i,a[10],read();
read(a);
print(a);
}
int read(a)
int a[10];
{
int j;
printf("enter ten numbers:\n");
for(j=0;j<10;j++)
scanf("%d",&a[j]);
}
int print(a)
int a[10];
{
int j;
printf("the ten numbers are:\n");
for(j=0;j<10;j++)
printf("%d\n",a[j]);
}
/* 263. READ 10 NUMBERS IN 1 FUNCTION, FIND BIGGEST IN 2 FUNCTION,
PRINT BIGGEST IN 3 FUNCTION */
main()
{
int big=0,i,a[10],read(),biggest();
read(a);
big=biggest(a);
printf("BIGGEST IS %d",big);
}
int read(a)
int a[10];
{
int j;
printf("enter ten numbers:\n");
for(j=0;j<10;j++)
scanf("%d",&a[j]);
}
int biggest(a)
int a[10];
{
int j,big=a[0];
for(j=0;j<10;j++)
if(a[j]>big)
big=a[j];

return big;
}
/* 264. INTERCHANGE OF BIGGEST AND SMALLEST NUMBER*/
/*
READ 10 NUMBERS IN 1 FUNCTION, FIND BIGGEST & SMALLEST IN 2
FUNCTION,
PRINT IN 3 FUNCTION */
main()
{
int big=0,i,a[10],read(),interchange(),print();
read(a);
interchange(a);
print(a);
}
int read(a)
int a[10];
{
int j;
printf("enter ten numbers:\n");
for(j=0;j<10;j++)
scanf("%d",&a[j]);
}
int interchange(a)
int a[10];
{
int j,big=a[0],small=a[0],b=0,s=0,x=0;
for(j=0;j<10;j++)
{
if(a[j]>big)
{
big=a[j];
b=j;
}
}
for(j=0;j<10;j++)
{
if(a[j]<small)
{
small=a[j];
s=j;
}
}
x=a[b];
a[b]=a[s];
a[s]=x;
return a[10];
}

int print(int a[10])


{
int k;
for(k=0;k<10;k++)
printf("%d\t",a[k]);
}
/* 265. READ AND DISPLAY 3*3 MATRIX IN SEPERATE FUNCTION*/
main()
{
int a[3][3];
readm(a);
printm(a);
}
int readm(b)
int b[][3];
{
int i,j;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&b[i][j]);
}
printm(c)
int c[][3];
{
int i,j;
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%d\t",c[i][j]);
printf("\n");
}
}
/* 266. READ 3*3 MATRIX, DISPLAY TRANSPOSE OF A MATRIX */
main()
{
int a[3][3],b[3][3];
readm(a);
transpose(a,b);
printm(b);
}
int readm(b)
int b[][3];
{
int i,j;
for(i=0;i<3;i++)

for(j=0;j<3;j++)
scanf("%d",&b[i][j]);
}
int transpose(a,b)
int a[][3],b[][3];
{
int i,j;
for(j=0;j<3;j++)
for(i=0;i<3;i++)
b[i][j]=a[j][i];
}
printm(c)
int c[][3];
{
int i,j;
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%d\t",c[i][j]);
printf("\n");
}
}
/* 267. READ 3*3 MATRIX, DISPLAY SUM MATRIX */
main()
{
int a[3][3],b[3][3],c[3][3];
readm(a);
readm(b);
product(a,b,c);
printm(c);
}
int readm(b)
int b[][3];
{
int i,j;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&b[i][j]);
}
int product(a,b,c)
int a[][3],b[][3],c[][3];
{
int i,j,k;
for(i=0;i<3;i++)

for(j=0;j<3;j++)
for(c[i][j]=0,k=0;k<3;k++)
c[i][j]=c[i][j]+b[i][k]*a[k][j];
}
printm(c)
int c[][3];
{
int i,j;
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%d\t",c[i][j]);
printf("\n");
}
}
/* 269. READ AND DISPLAY TEXT IN FUNCTION */
main()
{
char a[100];
read(a);
print(a);
}
int read(a)
char a[100];
{
int i;
for(i=0;(a[i]=getchar())!='$';i++)
;
a[i]='\0';
}
print(a)
char a[100];
{
int i;
for(i=0;a[i]!='\0';i++)
printf("%c",a[i]);
}
/* 270. READ TEXT AND COUNT THE NUMBER OF UPPER, LOWER, DIGIT,
SPECIAL */
int u,l,d,s;
main()
{
char a[100],read(),count();

read(a);
count(a);
printf("UPPER=%d,LOWER=%d,DIGIT=%d,SPECIAL=%d\n",u,l,d,s);
}
char read(a)
char a[100];
{
int i;
for(i=0;(a[i]=getchar())!='$';i++)
;
a[i]='\0';
}
char count(a)
char a[100];
{
int i;
for(i=0;a[i]!='\0';i++)
{
if(a[i]>=48&&a[i]<=57)
d++;
else if(a[i]>=65 &&a[i]<=90)
u++;
else if(a[i]>=97 && a[i]<=122)
l++;
else
s++;
}
}

/* 271. READ TEXT AD COUNT THE NUMBER OF WORDS, LINES,


CHARACTERS */
int w,l,c;
main()
{
char a[100],read();
int count();
read(a);
count(a);
printf("WORDS=%d,LINES=%d,CHARACTERS=%d\n",w,l,c);
}
char read(a)
char a[100];
{
int i;

for(i=0;(a[i]=getchar())!='$';i++)
;
a[i]='\0';
}
int count(a)
char a[100];
{
int i;
for(i=0;a[i]!='\0';i++)
{
if(a[i]!=' '&&a[i+1]==' '||a[i]!='\t'&&a[i+1]=='\t'||a[i]!='\n'&&a[i+1=='\n')
w++;
if(a[i]=='\n')
l++;
c++;
}
return w,l,c;
}

/* 272. READ TEXT IN 1 FUNCTION */


/* COPY TO ANOTHER IN 2ND ANND DISPLAY IN MAIN */
main()
{
char a[100],b[100];
read(a);
copy(a,b);
puts(b);
}
read(a)
char a[100];
{
int i;
for(i=0;(a[i]=getchar())!='$';i++)
;
a[i]='\0';
}
copy(a,b)
char a[100],b[100];
{
int i,j;
for(i=0,j=0;a[i]!='\0';i++,j++)

b[j]=a[i];
b[j]='\0';
}
/* 273. READ TEXT IN 1 FUNCTION */
/* COPY LEFT N CHAR TO ANOTHER IN 2ND AND DISPLAY IN MAIN */
main()
{
char a[100],b[100];
int n;
read(a);
printf("enter the n :\n");
scanf("%d",&n);
copy(a,b,n);
puts(b);
}
read(a)
char a[100];
{
int i;
printf("enter the text:\n");
for(i=0;(a[i]=getchar())!='$';i++)
;
a[i]='\0';
}
copy(a,b,n)
char a[100],b[100];
int n;
{
int i,j;
for(i=0,j=0;i<n;i++,j++)
b[j]=a[i];
b[j]='\0';
}
/* 274. READ TEXT IN 1 FUNCTION */
/* COPY LEFT N CHAR FROM M TH TO ANOTHER IN 2ND AND DISPLAY IN
MAIN */
main()
{
char a[100],b[100];
int n,m;
read(a);
printf("enter the n & m:\n");
scanf("%d%d",&n,&m);
copy(a,b,n,m);

puts(b);
}
read(a)
char a[100];
{
int i;
printf("enter the text:\n");
for(i=0;(a[i]=getchar())!='$';i++)
;
a[i]='\0';
}
copy(a,b,n,m)
char a[100],b[100];
int n,m;
{
int i,j,k;
for(i=m,j=n+m,k=0;i<j;i++,k++)
b[k]=a[i];
b[k]='\0';
}
/* 275. READ TEXT IN 1 FUNCTION, COUNT THE LENGTH OF THE STRING
*/
main()
{
char a[100],b[100];
int n=0;
read(a);
n=count(a);
printf("LENGTH = %d",n);
}
read(a)
char a[100];
{
int i;
for(i=0;(a[i]=getchar())!='$';i++)
;
a[i]='\0';
}
count(a)
char a[100];
{
int i,n=0;
for(i=0;a[i]!='\0';i++)
n++;
return n;

}
/* 276. READ TEXT IN 1 FUNCTION, COUNT THE LENGTH OF THE STRING,
*/
/* COPY THE LAST N CHARACTER */
main()
{
char a[100],b[100];
int n=0;
read(a);
printf("enter the n value:\n");
scanf("%d",&n);
copy(a,b,n);
printf("\nthe last n characters are:\n");
puts(b);
}
read(a)
char a[100];
{
int i;
for(i=0;(a[i]=getchar())!='$';i++)
;
a[i]='\0';
}
copy(a,b,n)
char a[100],b[100];
int n;
{
int i,j;
i=count(a);
for(j=0,i=i-n;a[i]!='\0';i++,j++)
b[j]=a[i];
}
count(a)
char a[100];
{
int i;
for(i=0;a[i]!='\0';i++)
;
return i;
}
/* 277. READ TEXT IN 1 FUNCTION, COUNT THE LENGTH OF THE STRING,
*/
/* REVERSE THE TEXT */

main()
{
char a[100],b[100];
read(a);
reverse(a,b);
printf("\nthe reversed text is:\n");
puts(b);
}
read(a)
char a[100];
{
int i;
for(i=0;(a[i]=getchar())!='$';i++)
;
a[i]='\0';
}
reverse(a,b)
char a[100],b[100];
{
int i,j;
i=count(a);
i--;
for(j=0;i>=0;i--,j++)
b[j]=a[i];
}
count(a)
char a[100];
{
int i;
for(i=0;a[i]!='\0';i++)
;
return i;
}
/* 278. MERGE THREE ARRAYS */
char a[100],b[100],c[100],d[300];
main()
{
read(a);
puts(a);
read(b);
puts(b);
read(c);
puts(c);
merge(a,d);

merge(b,d);
merge(c,d);
printf("\nthe merged text is:\n");
puts(d);
}
read(a)
char a[100];
{
int i;
for(i=0;(a[i]=getchar())!='$';i++)
;
a[i]='\0';
}
merge(a,d)
char a[100],d[300];
{
int i,j;
j=count(d);
printf("\n THE NO OF CHAR IN THE CPIED ARRAY:%d",j);
for(i=0;a[i]!='\0';i++,j++)
d[j]=a[i];
d[j]='\0';
}
count(d)
char d[300];
{
int i;
for(i=0;d[i]!='\0';i++)
;
return i;
}
/* 279. READ TEXT IN 1 FUNCTION */
/* CONVERT UPPER TO LOWER IN 2ND AND DISPLAY IN MAIN */
main()
{
char a[100],b[100];
read(a);
lower(a,b);
puts(b);
}
read(a)
char a[100];
{
int i;
printf("enter the text:\n");

for(i=0;(a[i]=getchar())!='$';i++)
;
a[i]='\0';
}
lower(a,b)
char a[100],b[100];
{
int i,j,k;
for(i=0,j=0;a[i];i++,j++)
{
if(a[i]>=65&&a[i]<=90)
b[j]=a[i]+32;
else
b[j]=a[i];
}
b[j]='\0';
}
/* 280. READ TEXT IN 1 FUNCTION */
/* CONVERT COMMA TO SEMICOLON IN 2ND AND DISPLAY IN MAIN */
main()
{
char a[100],b[100];
read(a);
semi(a,b);
puts(b);
}
read(a)
char a[100];
{
int i;
printf("enter the text:\n");
for(i=0;(a[i]=getchar())!='$';i++)
;
a[i]='\0';
}
semi(a,b)
char a[100],b[100];
{
int i,j,k;
for(i=0,j=0;a[i];i++,j++)
b[j]=(a[i]==',')?';':a[i];
b[j]='\0';
}

/* 281. READ TEXT IN 1 FUNCTION, DELETE COMMA IN 2ND AND


DISPLAY IN MAIN */
main()
{
char a[100],b[100];
read(a);
delete(a,b);
puts(b);
}
read(a)
char a[100];
{
int i;
printf("enter the text:\n");
for(i=0;(a[i]=getchar())!='$';i++)
;
a[i]='\0';
}
delete(a,b)
char a[100],b[100];
{
int i,j,k;
for(i=0,j=0;a[i];i++)
b[j]=(a[i]==',')?:a[i],j++;
b[j]='\0';
}
/* 282. READ TEXT IN 1 FUNCTION */
/* STORE THE STARTING POSITION OF NEW LINE & DISPLAY IN 3 FN. */
main()
{
char a[100];
int b[20];
read(a);
copy(a,b);
print(b);
}
read(a)
char a[100];
{
int i;
for(i=0;(a[i]=getchar())!='$';i++)
;
a[i]='\0';
}

copy(a,b)
char a[100];
int b[20];
{
int i,j;
for(i=0,j=0,b[j++]=0;a[i]!='\0';i++)
if(a[i]=='\n')
b[j++]=i+1;
b[j]=-1;
}
print(b)
int b[20];
{
int i;
for(i=0;b[i]!=-1;i++)
printf("%d\n",b[i]);
}
/* 283. READ TEXT IN 1 FUNCTION */
/* STORE THE STARTING POSITION OF NEW LINE & DISPLAY IN 3 FN. */
main()
{
char a[100];
int b[20],n;
read(a);
copy(a,b);
printf("enter nth line to be displayed:\n");
scanf("%d",&n);
print(a,b,n);
}
read(a)
char a[100];
{
int i;
for(i=0;(a[i]=getchar())!='$';i++)
;
a[i]='\0';
}
copy(a,b)
char a[100];
int b[20];
{
int i,j;
for(i=0,j=0,b[j++]=0;a[i]!='\0';i++)
if(a[i]=='\n')
b[j++]=i+1;

b[j]=-1;
}
print(a,b,n)
char a[100];
int b[20],n;
{
int i;
for(i=b[n-1];a[i]!='\n';i++)
printf("%c",a[i]);
}
/* 284. READ TEXT IN 1 FUNCTION */
/* STORE THE STARTING POSITION OF NEW LINE & DISPLAY N TH TO MTH
LINE 3 FN. */
main()
{
char a[100];
int b[20],n,m;
read(a);
copy(a,b);
printf("enter N ,M:\n");
scanf("%d%d",&n,&m);
print(a,b,n,m);
}
read(a)
char a[100];
{
int i;
for(i=0;(a[i]=getchar())!='$';i++)
;
a[i]='\0';
}
copy(a,b)
char a[100];
int b[20];
{
int i,j;
for(i=0,j=0,b[j++]=0;a[i]!='\0';i++)
if(a[i]=='\n')
b[j++]=i+1;
b[j]=-1;
}
print(a,b,n,m)
char a[100];
int b[20],n,m;
{

int i,j;
for(i=b[n-1],j=b[m];i<j;i++)
printf("%c",a[i]);
}
/* 285. COUNT THE NUMBER OF TIMES PATTERN EXISTS */
main()
{
char a[100],b[20];
int n=0;
read(a);
read(b);
n=count(a,b);
printf("PATTERN TOTAL = %d",n);
}
read(a)
char a[100];
{
int i;
for(i=0;(a[i]=getchar())!='$';i++)
;
a[i]='\0';
}
count(a,b)
char a[100],b[20];
{
int i,j,k,n=0;
for(i=0,j=0,k=0;a[i]!='\0';i++)
{
for(k=i,j=0;b[j]==a[k]&&b[j]!='\0';j++,k++)
;
if(b[j]=='\0')
n++;
}
return n;
}
/* 286. DELETE THE PATTERN */
main()
{
char a[100],b[20],c[100];
read(a);
read(b);
delete(a,b,c);
puts(c);
}

read(a)
char a[100];
{
int i;
for(i=0;(a[i]=getchar())!='$';i++)
;
a[i]='\0';
}
delete(a,b,c)
char a[100],b[20],c[100];
{
int i,j,k,l;
for(i=0,j=0,k=0,l=0;a[i]!='\0';i++)
{
for(k=i,j=0;b[j]==a[k]&&b[j]!='\0';j++,k++)
;
if(b[j]=='\0')
i=--k;
else
c[l++]=a[i];
}
c[l]='\0';
}

/* 287. REPLACE THE PATTERN */


main()
{
char a[100],b[20],c[20],d[100];
read(a);
read(b);
read(c);
replace(a,b,c,d);
puts(d);
}
read(a)
char a[100];
{
int i;
for(i=0;(a[i]=getchar())!='$';i++)
;
a[i]='\0';
}
replace(a,b,c,d)
char a[100],b[20],c[20],d[100];

{
int i,j,k,l,m;
for(i=0,j=0,k=0,l=0;a[i]!='\0';i++)
{
for(k=i,j=0;b[j]==a[k]&&b[j]!='\0';j++,k++)
;
if(b[j]=='\0')
{
i=--k;
for(m=0;c[m];m++)
d[l++]=c[m];
}
else
d[l++]=a[i];
}
d[l]='\0';
}

/* 288. FILES AND FUNCTIONS */


/* GET CHARACTER FROM KEYBOARD UNTIL $ IS GIVEN */
#include<stdio.h>
main(int argc, char *argv[])
{
FILE *fp1;
if(argc!=2)
{
printf("wrong usage");
return;
}
fp1=fopen(argv[1],"w");
if(fp1==NULL)
{
printf("file opening error");
return;
}
write(fp1);
fclose(fp1);
}
write(fp1)
FILE *fp1;
{
char a;
printf("enter the text:\n");
for(scanf("%c",&a);a!='$';scanf("%c",&a))

fprintf(fp1,"%c",a);
}
/* 289. FILES AND FUNCTIONS */
/* GET CHARACTER FROM KEYBOARD UNTIL $ IS GIVEN */
#include<stdio.h>
main(int argc, char *argv[])
{
FILE *fp1;
if(argc!=2)
{
printf("wrong usage");
return;
}
fp1=fopen(argv[1],"w");
if(fp1==NULL)
{
printf("file opening error");
return;
}
write(fp1);
fclose(fp1);
}
write(fp1)
FILE *fp1;
{
char a;
printf("enter the text:\n");
for(scanf("%c",&a);a!='$';scanf("%c",&a))
fprintf(fp1,"%c",a);
}
read(fp1,a);
puts(a);
fclose(fp1);
}
/* 290. FILES AND FUNCTIONS */
/* GET CHARACTER FROM FILE UNTIL EOF AND DISPLAY ON SCREEN */
#include<stdio.h>
main(int argc, char *argv[])
{
FILE *fp1;
if(argc!=2)
{

printf("wrong usage");
return;
}
fp1=fopen(argv[1],"r");
if(fp1==NULL)
{
printf("file opening error");
return;
}
read(fp1);
fclose(fp1);
}
read(fp1)
FILE *fp1;
{
char a;
printf("the text in the file :\n");
for(fscanf(fp1,"%c",&a);feof(fp1)==0;fscanf(fp1,"%c",&a))
printf("%c",a);
}
/* 291. FILES AND FUNCTIONS, CAT ALL FILES */
#include<stdio.h>
main(int argc, char *argv[])
{
FILE *fp1;
int i;
if(argc<2)
{
printf("wrong usage");
return;
}
for(i=0;i<argc;i++)
{
fp1=fopen(argv[i],"r");
if(fp1==NULL)
{
printf("file opening error");
return;
}
read(fp1);
fclose(fp1);
}
}
read(fp1)
FILE *fp1;

{
char a;
printf("the text in the file :\n");
for(fscanf(fp1,"%c",&a);feof(fp1)==0;fscanf(fp1,"%c",&a))
printf("%c",a);
}
/* 292. FILES AND FUNCTIONS , COPY COMMAND */
#include<stdio.h>
main(int argc, char *argv[])
{
FILE *fp1,*fp2;
if(argc!=3)
{
printf("wrong usage");
return;
}
fp1=fopen(argv[1],"r");
if(fp1==NULL)
{
printf("file opening error");
return;
}
fp2=fopen(argv[2],"w");
if(fp2==NULL)
{
printf("file opening error");
return;
}
copy(fp1,fp2);
fclose(fp1);
fclose(fp2);
}
copy(fp1,fp2)
FILE *fp1,*fp2;
{
char a;
for(a=getc(fp1);feof(fp1)==0;a=getc(fp1))
putc(a,fp2);
}
/* 293. FILES AND FUNCTIONS , MERGE TWO FILES */
#include<stdio.h>
main(int argc, char *argv[])
{
FILE *fp1,*fp2,*fp3;

if(argc!=4)
{
printf("wrong usage");
return;
}
fp1=fopen(argv[1],"r");
if(fp1==NULL)
{
printf("file opening error");
return;
}
fp2=fopen(argv[2],"r");
if(fp2==NULL)
{
printf("file opening error");
return;
}
fp3=fopen(argv[3],"w");
if(fp3==NULL)
{
printf("file opening error");
return;
}
copy(fp1,fp3);
copy(fp2,fp3);
fclose(fp1);
fclose(fp2);
fclose(fp3);
}
copy(fp1,fp2)
FILE *fp1,*fp2;
{
char a;
for(a=getc(fp1);feof(fp1)==0;a=getc(fp1))
putc(a,fp2);
}
/* 294. FILES AND FUNCTIONS */
/* GET CHARACTER FROM FILE, STORE IT IN AN ARRAY, DISPLAY IN MAIN
*/
#include<stdio.h>
main(int argc, char *argv[])
{
FILE *fp1;
char a[100];
if(argc!=2)

{
printf("wrong usage");
return;
}
fp1=fopen(argv[1],"r");
if(fp1==NULL)
{
printf("file opening error");
return;
}
read(fp1,a);
puts(a);
fclose(fp1);
}
read(fp1,a)
FILE *fp1;
char a[100];
{
int i;
printf("the text in the file is :\n");
for(i=0;(a[i]=fgetc(fp1))!=EOF;i++)
;
a[i]='\0';
}
/* 295. FILES AND FUNCTIONS */
/* GET CHARACTER FROM FILE, STORE IT IN AN ARRAY, DISPLAY LINE BY
LINE IN MAIN */
#include<stdio.h>
main(int argc, char *argv[])
{
FILE *fp1;
int n;
char a[100],ch;
if(argc!=2)
{
printf("wrong usage");
return;
}
fp1=fopen(argv[1],"r");
if(fp1==NULL)
{
printf("file opening error");
return;
}

n=line(fp1,a);
while(n==1)
{
puts(a);
scanf("%c",&ch);/*to print line by line after hit key*/
n=line(fp1,a);
}
fclose(fp1);
}
line(fp1,a)
FILE *fp1;
char a[100];
{
int i;
for(i=0;(a[i]=fgetc(fp1))!=EOF;i++)
{
if(a[i]=='\n')
{
a[i]='\0';
return 1;
}
}
return 0;
}
/* 296. FILES AND FUNCTIONS --- GET CHARACTER FROM FILE, */
/* STORE IN AN ARRAY, DISPLAY LINE BY LINE ALONG WITH LINE NO.IN
MAIN */
#include<stdio.h>
main(int argc, char *argv[])
{
FILE *fp1;
int n,l=0;
char a[100],ch;
if(argc!=2)
{
printf("wrong usage");
return;
}
fp1=fopen(argv[1],"r");
if(fp1==NULL)
{
printf("file opening error");
return;
}

n=line(fp1,a);
while(n==1)
{
printf("LINE=%d.",++l);
puts(a);
scanf("%c",&ch);/*to print line by line after hit key*/
n=line(fp1,a);
}
fclose(fp1);
}
line(fp1,a)
FILE *fp1;
char a[100];
{
int i;
for(i=0;(a[i]=fgetc(fp1))!=EOF;i++)
{
if(a[i]=='\n')
{
a[i]='\0';
return 1;
}
}
return 0;
}
/* 297. FILES AND FUNCTIONS --- GET CHARACTER FROM FILE, */
/* STORE IN AN ARRAY, DISPLAY PAGE BY PAGE ,LINE BY LINE ALONG
WITH LINE NO.IN MAIN */
#include<stdio.h>
main(int argc, char *argv[])
{
FILE *fp1;
int n,l=0,p=1;
char a[100],ch;
if(argc!=2)
{
printf("wrong usage");
return;
}
fp1=fopen(argv[1],"r");
if(fp1==NULL)
{
printf("file opening error");
return;

}
n=page(fp1,a);
while(n==1)
{
printf("LINE=%d.",++l);
puts(a);
p=l%24;
if(p)
n=page(fp1,a);
n=page(fp1,a);
}
fclose(fp1);
}
page(fp1,a)
FILE *fp1;
char a[100];
{
int i;
for(i=0;(a[i]=fgetc(fp1))!=EOF;i++)
{
if(a[i]=='\n')
{
a[i]='\0';
return 1;
}
}
return 0;
}
/* 298. FILES AND FUNCTIONS --- GET CHARACTER FROM FILE, */
/* STORE IN AN ARRAY, COUNT THE UPPER, LOWER, DIGIT, SPECIAL LINE
BY LINE */
#include<stdio.h>
int u,l,d,s;
main(int argc, char *argv[])
{
FILE *fp1;
int n,x=0;
char a[100],ch;
if(argc!=2)
{
printf("wrong usage");
return;
}
fp1=fopen(argv[1],"r");

if(fp1==NULL)
{
printf("file opening error");
return;
}
printf("LINE UPPER LOWER DIGIT SPECIAL : \n");
n=line(fp1,a);
while(n==1)
{
count(a);
scanf("%c",&ch);/* hit ENTER key*/
n=line(fp1,a);
printf("%d.\t%d\t%d\t%d\t%d\n",++x,u,l,d,s);
}
fclose(fp1);
}
line(fp1,a)
FILE *fp1;
char a[100];
{
int i;
for(i=0;(a[i]=fgetc(fp1))!=EOF;i++)
{
if(a[i]=='\n')
{
a[i]='\0';
return 1;
}
}
return 0;
}
count(a)
char a[100];
{
int i;
for(i=0;a[i];i++)
{
if(a[i]>=48&&a[i]<=57)
d++;
else if(a[i]>=65&&a[i]<=90)
u++;
else if(a[i]>=97&&a[i]<122)
l++;
else
s++;
}

}
/* 299. FILES AND FUNCTIONS --- GET CHARACTER FROM FILE, */
/* STORE IN AN ARRAY, COUNT THE WORDS, LINES, CHARACTERS LINE BY
LINE */
#include<stdio.h>
int w,l,c;
main(int argc, char *argv[])
{
FILE *fp1;
int n,x=0;
char a[100],ch;
if(argc!=2)
{
printf("wrong usage");
return;
}
fp1=fopen(argv[1],"r");
if(fp1==NULL)
{
printf("file opening error");
return;
}
printf("LINE WORDS LINES CHARACTERS : \n");
n=line(fp1,a);
while(n==1)
{
count(a);
scanf("%c",&ch);/* hit ENTER key*/
n=line(fp1,a);
printf("%d.\t%d\t%d\t%d\n",++x,w,l,c);
}
fclose(fp1);
}
line(fp1,a)
FILE *fp1;
char a[100];
{
int i;
for(i=0;(a[i]=fgetc(fp1))!=EOF;i++)
{
if(a[i]=='\n')
{
a[i]='\0';
return 1;

}
}
return 0;
}
count(a)
char a[100];
{
int i;
for(i=0;a[i];i++)
{
if((a[i]!=' '&&a[i+1]==' ')||(a[i]!='\t'&&a[i+1]=='\t')||(a[i]!='\n'&&a[i+1]=='\n'))
w++;
if(a[i]=='\n')
l++;
c++;
}
}
/* 300. FILES AND FUNCTIONS --- GET CHARACTER FROM FILE, */
/* STORE IN AN ARRAY, COUNT THE PATTERN LINE BY LINE */
#include<stdio.h>
main(int argc, char *argv[])
{
FILE *fp1;
int n,p=0,m;
char a[100],ch;
if(argc!=3)
{
printf("wrong usage");
return;
}
fp1=fopen(argv[1],"r");
if(fp1==NULL)
{
printf("file opening error");
return;
}
n=line(fp1,a);
while(n==1)
{
m=count(a,argv[2]);
if(m==1)
p++;
n=line(fp1,a);
}
printf("PATTERN TOTAL = %d",p);

fclose(fp1);
}
line(fp1,a)
FILE *fp1;
char a[100];
{
int i;
for(i=0;(a[i]=fgetc(fp1))!=EOF;i++)
{
if(a[i]=='\n')
{
a[i]='\0';
return 1;
}
}
return 0;
}
count(a,b)
char a[100],b[20];
{
int i,j,k;
for(i=0;a[i];i++)
{
for(j=0,k=i;b[j]==a[k]&&b[j]!='\0';j++,k++)
;
if(b[j]=='\0')
return 1;
}
return 0;
}

Вам также может понравиться