第1个回答 2017-05-12
#include <stdio.h>
#include <stdlib.h>
#define MAX_LINE 1024
void mysub(char* str);
int main()
{
FILE *fp;
char strLine[MAX_LINE];
system("cls");
if((fp = fopen("c:\\1.txt","r")) == NULL)
{
printf("Open Falied!");
return -1;
}
while (!feof(fp))
{
fgets(strLine,MAX_LINE,fp);
mysub(strLine);
}
fclose(fp);
system("pause");
return 0;
}
void mysub(char *str)
{
int i=0,sum=0,count=0,c=0;
for(i=0;str[i]!='\0' && str[i]!='\n';i++)
{
if(str[i]!=' ')
{
if(str[i]>='0' && str[i]<='9') {count++;c=str[i]-48;}
if(str[i]>='A' && str[i]<='F') {count++;c=str[i]-55;}
if(count%2!=0) c=c*16;
sum+=c;
/*printf("\n%d %d %c",count,sum,str[i]);*/
if(count%2==0)
{
printf("%d ",sum);
sum=0;
}
if(count>=8) break;
}
}
printf("\n");
}本回答被提问者采纳