4个回答
展开全部
#include<stdio.h>
#define
MAX
1000
void
main()
{
int
func(char
s[]);
int
c,i=0,flag=0,flag1=1;
char
t[MAX];
printf("请输入一个十六进制的数:\n");
while((c=getchar())!
='\0'&&i<MAX&&flag1)
{
if(c>='0'&&c<='9'||c>='a'&&c<='f'||c>='A'&&c<='F')
{
flag=1;
t[i++]=c;
}
else
if(flag)
{
t[i]='\0';
printf("十进制数为:%d\n",func(t));
printf("是否继续?");
c=getchar();
if(c=='N'||c=='n')
flag1=0;
else
{
flag=0;
i=0;
printf("\n输入一个十六进制的数:");
}
}
}
}
int
func(char
s[])
{
int
i,n=0;
for(i=0;s[i]!='\0';i++)
{if(s[i]>='0'&&s[i]<=9)
n=n*16+s[i]-'0';
if(s[i]>='a'&&s[i]<='f')
n=n*16+s[i]-'a'+10;
if(s[i]>='A'&&s[i]<='F')
n=n*16+s[i]-'A'+10;
}
return(n);
}
#define
MAX
1000
void
main()
{
int
func(char
s[]);
int
c,i=0,flag=0,flag1=1;
char
t[MAX];
printf("请输入一个十六进制的数:\n");
while((c=getchar())!
='\0'&&i<MAX&&flag1)
{
if(c>='0'&&c<='9'||c>='a'&&c<='f'||c>='A'&&c<='F')
{
flag=1;
t[i++]=c;
}
else
if(flag)
{
t[i]='\0';
printf("十进制数为:%d\n",func(t));
printf("是否继续?");
c=getchar();
if(c=='N'||c=='n')
flag1=0;
else
{
flag=0;
i=0;
printf("\n输入一个十六进制的数:");
}
}
}
}
int
func(char
s[])
{
int
i,n=0;
for(i=0;s[i]!='\0';i++)
{if(s[i]>='0'&&s[i]<=9)
n=n*16+s[i]-'0';
if(s[i]>='a'&&s[i]<='f')
n=n*16+s[i]-'a'+10;
if(s[i]>='A'&&s[i]<='F')
n=n*16+s[i]-'A'+10;
}
return(n);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
#define MAX 1000
void main()
{ int func(char s[]);
int c,i=0,flag=0,flag1=1;
char t[MAX];
printf("请输入一个十六进制的数:\n");
while((c=getchar())! ='\0'&&i<MAX&&flag1)
{ if(c>='0'&&c<='9'||c>='a'&&c<='f'||c>='A'&&c<='F')
{ flag=1;
t[i++]=c;
}
else if(flag)
{ t[i]='\0';
printf("十进制数为:%d\n",func(t));
printf("是否继续?");
c=getchar();
if(c=='N'||c=='n')
flag1=0;
else
{ flag=0;
i=0;
printf("\n输入一个十六进制的数:");
}
}
}
}
int func(char s[])
{
int i,n=0;
for(i=0;s[i]!='\0';i++)
{if(s[i]>='0'&&s[i]<=9)
n=n*16+s[i]-'0';
if(s[i]>='a'&&s[i]<='f')
n=n*16+s[i]-'a'+10;
if(s[i]>='A'&&s[i]<='F')
n=n*16+s[i]-'A'+10;
}
return(n);
}
#define MAX 1000
void main()
{ int func(char s[]);
int c,i=0,flag=0,flag1=1;
char t[MAX];
printf("请输入一个十六进制的数:\n");
while((c=getchar())! ='\0'&&i<MAX&&flag1)
{ if(c>='0'&&c<='9'||c>='a'&&c<='f'||c>='A'&&c<='F')
{ flag=1;
t[i++]=c;
}
else if(flag)
{ t[i]='\0';
printf("十进制数为:%d\n",func(t));
printf("是否继续?");
c=getchar();
if(c=='N'||c=='n')
flag1=0;
else
{ flag=0;
i=0;
printf("\n输入一个十六进制的数:");
}
}
}
}
int func(char s[])
{
int i,n=0;
for(i=0;s[i]!='\0';i++)
{if(s[i]>='0'&&s[i]<=9)
n=n*16+s[i]-'0';
if(s[i]>='a'&&s[i]<='f')
n=n*16+s[i]-'a'+10;
if(s[i]>='A'&&s[i]<='F')
n=n*16+s[i]-'A'+10;
}
return(n);
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2009-11-25
展开全部
#include<stdio.h>
int main(void)
{
unsigned long x;
printf("输入要转换的数据\n");
scanf("%lx",&x);
printf("%lx的十进制数是%lu\n",x,x);
return 0;
}
int main(void)
{
unsigned long x;
printf("输入要转换的数据\n");
scanf("%lx",&x);
printf("%lx的十进制数是%lu\n",x,x);
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询