c语言16进制按10进制输出,C语言编程:写一个函数,输入一个16进制数,输出相应的10进制数。...
滿意答案
chengexin
2013.05.27
采納率:59%????等級:11
已幫助:10599人
#include
#include
#include
#define N 1000
char str[N];
int a[N],b[N];
int main(void)
{
void zsh();
long ycl();
int i,n;
do{
printf("請輸入一個十六進制數:\n");
scanf("%s",str);
for(i=0,n=0;str[i]!='\0';i++)
if(str[i]'9'&&str[i]'F'&&str[i]'f')
{
n=1;
printf("輸入不符和要求\n");
break;
}
}while(n);
zsh();
printf("轉換成十進制后的結果為%ld\n",ycl());
getch();
}
void zsh()
{
int i,j;
j=strlen(str)-1;
b[j]=1;
for(i=j;i>0;i--)
b[i-1]=b[i]*16;
}
long ycl()
{
long x,i,j;
j=strlen(str)-1;
for(x=0,i=j;i>=0;i--)
{
if(str[i]>='a'&&str[i]<='z')
a[i]=str[i]-'a'+10;
else if(str[i]>='A'&&str[i]<='Z')
a[i]=str[i]-'A'+10;
else
a[i]=str[i]-'0';
x=x+a[i]*b[i];
}
return x;
}
06分享舉報
總結
以上是生活随笔為你收集整理的c语言16进制按10进制输出,C语言编程:写一个函数,输入一个16进制数,输出相应的10进制数。...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: unity3d高版本转化低版本
- 下一篇: 黑盒法测试c语言,黑盒测试用例练习题.p