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

📄 b62.c

📁 c语言 有关c语言的编程设计方面 的一些小程序代码
💻 C
字号:
/*参考答案*/

#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <string.h>
#define MAX 100

char xx[MAX][20] ;
void WriteDat(void) ;

int ReadDat(void)
{
  FILE *fp ;
  int i,j;
  char c;

  if((fp = fopen("HEX.IN", "r")) == NULL) return 1 ;

  /***********读入数据并存放到数组xx中*************/
  for(i = 0; i < MAX; i++)
  {
      j = 0;

      while((c = (char) fgetc(fp)) != EOF)
      {
          if(c == ',')
          {
              xx[i][j] = '\0';
              break;
          }

	   else if(c != '\n' && c != '\r')/*去掉回车换行符*/
	   {
		  if(!isdigit(c))/*如果是字母,则转换为大写*/
			  c &= 0xdf;
              xx[i][j] = c;
             ++j;
	   }
      }

      if(c == EOF)
      	    break;
  }

  fclose(fp) ;
  return 0 ;
}

void H16To8(void)
{
    int i,j,val;

    for(i = 0; i < MAX; i++)
    {
        val = 0;
        j = 0;

        while(xx[i][j])
        {
            val *= 16;
	     val += isdigit(xx[i][j]) ? (xx[i][j] - 48) : (xx[i][j] - 55);
            j++;
        }

        itoa(val,xx[i],8);
    }
}


void main()
{
  int i ;

  for(i = 0 ; i < MAX ; i++) memset(xx[i], 0, 20) ;
  if(ReadDat()) {
    printf("数据文件HEX.IN不能打开!\007\n") ;
    return ;
  }
  H16To8() ;
  WriteDat() ;
}

void WriteDat(void)
{
  FILE *fp ;
  int i ;

  fp = fopen("OCK.OUT", "w") ;
  for(i = 0 ; i < MAX ; i++) fprintf(fp, "%s\n", xx[i]) ;
  fclose(fp) ;
}

⌨️ 快捷键说明

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