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

📄 prog1.c

📁 计算机等级考试 四级 机试总汇 历年真题
💻 C
字号:
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <string.h>
#define MAX 100

char xx[MAX][20] ;
int maxnum;
void WriteText(void) ;

int ReadText(void)
{
  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<='7') {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++;
  maxnum=i;
  fclose(fp) ;
  for(i=0;i<maxnum;i++) {if(i%10==0) printf("\n"); printf("%s,",xx[i]);}
  return 0 ;
}

void XT1(void)
{
  int z,value,j,k,i,yz,l;
  char ss[20];
  char s1[5],s2[5];
  for(i=0;i<maxnum;i++)
     {   value=0;k=0;
	 j=strlen(xx[i]);
	 z=atoi(xx[i]);
	 yz=1;
	 while(j>0)
	  {
	    l=z%10;
	    if(k>0)  yz*=8;
	    l*=yz;
	    value+=l;
	    z=z/10;
	    k++;
	    j--;
	  }
	 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;
		  }
   }

}

void main()
{
  int i ;
/*  for(i = 0 ; i < MAX ; i++) memset(xx[i], 0, 20) ;*/
  if(ReadText()) {
    printf("数据文件R1.IN不能打开!\007\n") ;
    return ;
  }

  XT1() ;
  WriteText() ;
}

void WriteText(void)
{
  FILE *fp ;
  int i ,j;
  printf("\n");
  fp = fopen("OUT.dat", "w") ;
  for(i = 0 ; i <maxnum ; i++) {
      j=strlen(xx[i]);
      while(j>0) {
	      printf("%c",xx[i][j-1]);
	      fprintf(fp, "%c", xx[i][j-1]) ;
	      j--;}
      printf("\n");
      fprintf(fp,"\n");
      }
  fclose(fp) ;
}



⌨️ 快捷键说明

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