
//made by Albert
//2007-9-26
//http://dreamland2006.blog.hexun.com/
#include "stdio.h"
main()
{
int a;
int t=1;
unsigned int b;
while((a!=0)&&(t==1))
{
a=0;
printf("请您输入4位十六进制有符号数(例如FFFF):");
t=scanf("%x",&a);
if((a>0xffff)||(a<0)){printf("输入有误,请重新输入!\n");continue;}
if(t==0){printf("输入有误,程序异常退出!\n");}
if(a>=0x8000)
{
b=(unsigned int)a+0xffff0000;
a=(int)b;
}
printf("其十进制数为:%d\n",a);
}
printf("程序退出!");
}
/////////////////////////////////////////////////////////////////////////////////////////////////
//made by Albert
//2007-9-26
//http://dreamland2006.blog.hexun.com/
#include "stdio.h"
class zhuanhuan
{
public:
int a,t;
unsigned int b;
void myinput();
void myouput();
};
void zhuanhuan::myinput()
{
a=0;
printf("请您输入4位十六进制有符号数(例如FFFF):");
t=scanf("%x",&a);
}
void zhuanhuan::myouput()
{
if(a>=0x8000)
{
b=(unsigned int)a+0xffff0000;
a=(int)b;
}
printf("其十进制数为:%d\n",a);
}
main()
{
zhuanhuan aa;
aa.t=1;
while((aa.a!=0)&&(aa.t==1))
{
aa.myinput();
//aa.a=0xffff;
if((aa.a>0xffff)||(aa.a<0)){printf("输入有误,请重新输入!\n");continue;}
aa.myouput();
if(aa.t==0){printf("输入有误,程序异常退出!\n");}
}
printf("程序退出!\n");
}
: 科技

