📄 sblock.c
字号:
//********************************************
//文件名:SBLOCK.C
//功能:将源扇区文件数据块写入目的扇区文件中去
//********************************************
#include<stdio.h> //1.
#include<conio.h> //2.
#include<stdlib.h> //3.
#include<ctype.h> //4.
void main() //5.
{ //6.
FILE *fp1,*fp2; //7.
char *sp1,*sp2; //8.
int i,j,k=0; //9.
char ch; //10.
//11.
printf("Enter SOURCE file name: "); //12.
scanf("%s",sp1); //13.源扇区文件
printf("Enter TARGET file name: "); //14.
scanf("%s",sp2); //15.目的扇区文件
clrscr(); //16.清屏
printf("Show source file " //17.提示
"press key [S]\n"); //18.
printf("Show target file press " //19.提示
"key [T]\n"); //20.
printf("Copy file block press " //21.提示
"key [C]\n"); //22.
printf("Quit press key [Esc]\n"); //23.提示
while(1) //24.
{ //25.
k=toupper(getch()); //26.接收字符并转为大写
if(k==83) //27.若字符为"S"
{ //28.
clrscr(); //29.
printf("Show source file " //30.
"press key [S]\n"); //31.
printf("Show target file " //32.
"press key [T]\n"); //33.
printf("Copy file block " //34.
"press key [C]\n"); //35.
printf("Quit press key [Esc]\n"); //36.
fp1=fopen(sp1,"rb"); //37.打开源文件
for(i=1;i<=512;i++) //38.
{ //39.
j=fgetc(fp1); //40.
printf("%2x",j); //41.显示十六进制数据
if(i%32==0) //42.
printf("\n"); //43.
} //44.
fclose(fp1); //45.
} //46.
if(k==84) //47.若字符为"T"
{ //48.
clrscr(); //49.
printf("Show source file " //50.
"press key [S]\n"); //51.
printf("Show target file " //52.
"press key [T]\n"); //53.
printf("Copy file block " //54.
"press key [C]\n"); //55.
printf("Quit press key [Esc]\n"); //56.
fp1=fopen(sp2,"rb"); //57.打开目的文件
for(i=1;i<=512;i++) //58.
{ //59.
j=fgetc(fp1); //60.
printf("%2x",j); //61.显示十六进制数据
if(i%32==0) //62.
printf("\n"); //63.
} //64.
fclose(fp1); //65.
} //66.
if(k==67) //67.若字符为"C"
{ //68.
printf("\n"); //69.
printf("Enter starting bytes: "); //70.
scanf("%d",&i); //71.起始字节编号
printf("Enter finishing bytes: "); //72.
scanf("%d",&j); //73.终止字节编号
fp1=fopen(sp1,"rb"); //74.只读方式打开源文件
fp2=fopen(sp2,"rb+"); //75.读写方式打开目的文件
fseek(fp1,i-1,0); //76.移动源文件指针
fseek(fp2,i-1,0); //77.移动目的文件指针
for(;i<=j;i++) //78.
{ //79.
ch=fgetc(fp1); //80.从源文件中读字符
fputc(ch,fp2); //81.写入目的文件
} //82.
fclose(fp1); //83.
fclose(fp2); //84.
clrscr(); //85.
printf("Show source file " //86.
"press key [S]\n"); //87.
printf("Show target file " //88.
"press key [T]\n"); //89.
printf("Copy file block " //90.
"press key [C]\n"); //91.
printf("Quit press key [Esc]\n"); //92.
} //93.
if(k==27) //94.若为"Esc"
exit(0); //95.退出
} //96.
} //97.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -