如何用C语言做一款答题软件,怎么用C语言做一个进制转换的程序

满意答案

00e27ab806e4881f8254fe7ae8741834.png

Jprvsmf

2014.10.25

00e27ab806e4881f8254fe7ae8741834.png

采纳率:52%    等级:12

已帮助:9664人

#include #include void toer_jz(); void toba_jz(); void tosl_jz(); void main() { int num; char ans; do{ system("cls"); printf(" ┏-------------------------------------------------------------------┓\n"); printf(" │ 1-十进制转二进制. │\n"); printf(" │ 2-十进制转八进制. │\n"); printf(" │ 3-十进制转十六进制. │\n"); printf(" │ 0-退出程序. │\n"); printf(" ┗-------------------------------------------------------------------┛\n"); printf("\n提示:请根据自己的需求选择操作数:"); scanf("%d",&num); switch(num) { case 0: exit(0); case 1: toer_jz(); break; case 2: toba_jz(); break; case 3: tosl_jz(); break; default: printf("\n输入错误,!只能输入0~3的操作数!\n"); break; } printf("\n是否继续操作(y/n) ?"); fflush(stdin); ans=getchar(); }while(ans=='y'||ans=='Y'); } void toer_jz() { int num,count=0,i=0; //num接收10进制的数字,count记录除2的次数 int er[20]; //存放2进制的数字 printf("\n请输入你要转换的成为二进制的十进制数:"); scanf("%d",&num); while(num!=0&&num!=1) { er[i]=num%2; num=num/2; count++; i++; } er[count]=num; //加上最后一位余数. /*打印结果*/ printf("\n结果:十进制转换成二进制后的结果为:"); for(i=count;i>=0;i--) { printf("%d ",er[i]); } } void toba_jz() { int num,count=0,i=0; //num接收8进制的数字,count记录除8的次数 int ba[10]; //存放8进制的数字 printf("\n请输入你要转换的成为八进制的十进制数:"); scanf("%d",&num); while(num!=0) { ba[i]=num%8; num=num/8; count++; i++; } /*打印结果*/ printf("\n结果:十进制转换成八进制后的结果为:"); for(i=count-1;i>=0;i--) { printf("%d ",ba[i]); } } void tosl_jz() { int num,count=0,i=0,k; char sl[20]; printf("\n请输入你要转换的成为十六进制的十进制数:"); scanf("%d",&num); while(num!=0) { k=num%16; if(k>9) { switch(k) { case 10: sl[i]='A'; break; case 11: sl[i]='B'; break; case 12: sl[i]='C'; break; case 13: sl[i]='D'; break; case 14: sl[i]='E'; break; case 15: sl[i]='F'; break; } } else { sl[i]=48+k; } num=num/16; count++; i++; } /*打印结果*/ printf("\n结果:十进制转换成十六进制后的结果为:"); for(i=count-1;i>=0;i--) { printf("%c ",sl[i]); } }

00分享举报

你可能感兴趣的:(如何用C语言做一款答题软件)