编写函数 输入16进制函数 输出十进制函数 请大家帮忙看一下
//自己把很多地方都省略了 比如在主函数内对输入的判断 仍然有问题 //LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
//Debug/Cpp1.exe : fatal error LNK1120: 1 unresolved externals
//从来没有见过这样的报错 希望大家能帮找一下错 我是菜鸟 对函数这块不是很熟……
#include<stdio.h>
void mian()
{ int f16(int);
int f(int a[]);
int a[10]={0},i;
printf("input a number:\n");
for(i=0;i<=10;i++)
scanf("%d",&a[i]);
printf("%d\n",f(a));
}
int f16(int n)
{
int i,temp=1;
for(i=0;i<n;i++)
temp=temp*16;
return temp;
}
int f(int a[])
{
int i,j,sum=0;
for(i=9;i>=0;i--)//这儿是找到数开始的地方 比如123af00000 j=5
if(a[i]!=0)
{j=i;
break;
}
for(i=0;i<10;i++)
if(a[i]>=65&&a[i]<=70)
a[i]=a[i]-55;//换算
for(i=0;i<=j,j>=0;i++,j--)
sum=sum+a[i]*f16(j-i);//这儿的计算方法sum=sum+a[i]*16^(j-i) 比如i=0 1*16^4+… 这儿十六的指数写了一个函数f16
return sum;
}