十进制转为十六进制,代码已打好,需要大神帮我加上个循环程序
让程序不断循环,做到可以多次输入4个十进制数#include<stdio.h>
void printXXX(int x){
//16进制数组
char chs[] = "0123456789ABCDEF";
char result[20];
//计算位数
int size = 0;
int temp = x;
while (temp > 0) {
temp = temp / 16;
size++;
}
//计算
int shang = x; //商,默认为a,不断除以16,逐渐减小
int i ;
for (i = size - 1; i >= 0; i--) { //从低位到高位,逐位计算
result[i] = chs[shang % 16]; //通过对16求余获得
shang = shang / 16; //商除以16
}
int j ;
for (j= 2; j < 4; j++)
{
printf("%c", result[j]);
}
printf(" ");
int p;
for (p=0;p<2;p++)
{
printf("%c",result[p]);
}
}
int main()
{
//输入数据
float a=0,b=0,c=0,d=0;
printf("请依次输入需要发送的数据:");
scanf("%f%f%f%f",&a,&b,&c,&d);
int aa = a*100 + 10000;
int bb = b*100 + 10000;
int cc = c*10 + 10000;
int dd = d*10 + 10000;
printXXX(aa);
printf(" ");
printXXX(bb);
printf(" ");
printXXX(cc);
printf(" ");
printXXX(dd);
printf(" ");
}