请大家帮忙看一下,不知错在哪个地方!
1. 题意描述:写一个把N(N=2,8,10,16)进制数字字符串转换成整数的函数,它有两个参数,一个是基数N,一个是字符数组。程序在运行时用户输入:
N DDDDDD
其中N 为基数, DDDD为数字字符串,然后输出转换后的整数值,以10进制显示。不必考虑整数太大int类型无法容纳的问题。
程序代码:#include "stdio.h"
#include "conio.h"
#include "string.h"
#include "math.h"
int myint(int N,char *p) /*转换*/
{ int n,i,a=0;
n=strlen(p);
for(i=0;i<n;i++)
a+=((p[n-i-1]-'0')*pow(N,i)) ;
return a;
}
main()
{int N,B;char a[80];
printf("please input N:");
scanf("%d",&N);
printf("please input a(0~N-1):");
gets(a);
B=myint(N,a);
printf("%d",B);
}







