⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pe29.c

📁 C语言编程与设计也是一些文章
💻 C
字号:
#include "stdio.h"
#include "stdlib.h"
#include "ctype.h"
#include "string.h"
#define MAX 64

char xx[MAX][20];
ReadDat()
{FILE *fp;
  int i,j;
  char ch;
  char ss[20];
  if((fp = fopen("IN.dat", "r")) == NULL) return 1 ;
  printf("\n");
  i=j=0;
  while(!feof(fp))
    { fscanf(fp,"%c",&ch);
      if ((ch>='0'&&ch<='9')||(ch>='a'&&ch<='f')||(ch>='A'&&ch<='F')) {ss[j]=ch;j++;}
	else if(ch==','||ch=='\n') {
		ss[j]=0;
		strcpy(xx[i],ss);
		j=0;ss[j]=0;i++;
		  }
    }
    ss[j]=0;strcpy(xx[i],ss);i++;
  fclose(fp) ;
  for(i=0;i<MAX;i++) {if(i%10==0) printf("\n");      printf("%s,",xx[i]);}
  return 0 ;

}

H16To2()
{ int value,j,i;
  char ss[20];
  char s1[5],s2[5];
  for(i=0;i<MAX;i++)
     {
 	value=0;
	 for(j=0;xx[i][j];j++) {
 	  if(xx[i][j]>='0'&&xx[i][j]<='9') value=value*16+xx[i][j]-'0';
 	  if(xx[i][j]>='a'&&xx[i][j]<='f') value=value*16+xx[i][j]-'a'+10;
  	 if(xx[i][j]>='A'&&xx[i][j]<='F') value=value*16+xx[i][j]-'A'+10;
  	 }
	 if(value==0) {xx[i][0]='0';xx[i][1]=0;}
	   else if(value==1) {xx[i][0]='1';xx[i][1]=0;}
	     else {
		 j=0;
		  while(value>1)
		   {
		     xx[i][j]=value%2+48;
		     j++;
		     value/=2;
		   }
		  xx[i][j]='1';
		  xx[i][j+1]=0;
		  }
   }

}

main()
{int i;
 for(i=0;i<MAX;i++) memset(xx[i],0,20);
 if(ReadDat()) {printf("in.dat open error!\n");return;}
 H16To2();
 WriteDat();
}

WriteDat()
{FILE *fp;
 int i;
 fp=fopen("out.dat","w");
 for(i=0;i<MAX;i++) {fprintf(fp,"%s\n",xx[i]);printf("%s\n",xx[i]);}
 fclose(fp);
} 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -