【c语言】输入一个十进制数,转换成对应的八进制数和十六进制数并输出 二进制数转换为对应的十进制、八进制和十六进制数,C语言?
C\u8bed\u8a00 \u8f93\u5165\u4e00\u4e2a\u5341\u8fdb\u5236\u6570\uff0c\u8981\u6c42\u5206\u522b\u5b9a\u4e49\u4e0d\u540c\u7684\u51fd\u6570\u5c06\u5341\u8fdb\u5236\u8f6c\u6362\u6210\u516b\u8fdb\u5236\u548c\u5341\u516d\u8fdb\u5236\uff0c\u5e76\u8f93\u51fa\uff1f\u4f60\u7684\u95ee\u9898\u8fd8\u771f\u4e0d\u597d\u8bf4\uff0c\u5927\u65b9\u5411\u6ca1\u95ee\u9898\uff0c\u7ec6\u8282\u4e0a\u5f97\u52a0\u5f3a\u3002\u4e3a\u4e86\u5c3d\u53ef\u80fd\u7b80\u5355\uff0c\u6211\u7528\u4e86\u5168\u5c40\u53d8\u91cf\uff0c\u9664\u975e\u5fc5\u8981\uff0c\u6ee5\u7528\u5b83\u662f\u4e00\u4e2a\u975e\u5e38\u4e0d\u597d\u7684\u4e60\u60ef\u3002
\u81ea\u5df1\u8981\u5b66\u4f1a\u4e0d\u4f7f\u7528\u5168\u5c40\u53d8\u91cf\uff0c\u600e\u4e48\u5b9e\u73b0\u76f8\u540c\u7684\u529f\u80fd\u3002\u53e6\u5916\u4e86\u89e3\u4e00\u4e0b\u4f7f\u7528%o\uff0c%x\uff0c%a\u8fd9\u51e0\u79cd\u683c\u5f0f\u65f6printf\u7684\u8f93\u51fa\u7ed3\u679c
int a[100] = { 0 }; // \u8f6c\u6362\u540e\u7684\u503c
int flag = 0; // \u7b26\u53f7
// \u628ax\u8f6c\u6362\u4e3abase\u8fdb\u5236\u6570
int convert(int x, int base)
{
int i = 0;
flag = 0;
if (x < 0)
{
flag = 1;
x = -x; // \u786e\u4fdd\u662f\u975e\u8d1f\u6574\u6570
}
if (base <= 0)
{
printf("\u8fdb\u5236\u8f93\u5165\u9519\u8bef\n");
return 0;
}
while (x)
{
a[i++] = x % base;
x /= base;
}
i--;
return i; // \u8fd4\u56de\u4f4d\u6570
}
int eight(int x)
{
return convert(x, 8);
}
int sixteen(int x)
{
return convert(x, 16);
}
/* \u975e\u5e38\u7b80\u964b\uff0c\u53ea\u5904\u740616\u8fdb\u5236\u4ee5\u4e0b\u7684\u60c5\u5f62 */
void printf_num(int i)
{
printf("\n");
if (flag)
printf("-"); // \u8d1f\u53f7
while (i >= 0)
{
if (a[i] > 9 && a[i] < 16)
printf("%c", a[i] + 55); // \u8f93\u51faA-F
else
printf("%d", a[i]); // \u8f93\u51fa0-9
i--;
}
}
int main() {
int x, i;
printf("\u8bf7\u8f93\u5165\u4e00\u4e2a\u5341\u8fdb\u5236\u6574\u6570\uff1a");
scanf("%d", &x);
i = eight(x);
printf_num(i);
i = sixteen(x);
printf_num(i);
return 0;
}
#include
#include
char s[128];
int main(){
printf("Input a binary number:");
gets(s);
int len,i,n=0;
len=strlen(s);
for (i=0; i<len; i++) {
if(s[i]=='1'){
n<<=1;
n|=1;
}
else{
n<<=1;
}
}
printf("The number is %d in decimal.\n",n);
printf("The number is %o in octal.\n",n);
printf("The number is %X in octal.\n",n);
}
#include <stdio.h>
void dec2n(int x,int n)
{int a[33],i;
for(i=0;x;x/=n)a[i++]=x%n;
for(i--;i>=0;i--)
if(a[i]<10)printf("%d",a[i]);
else printf("%c",a[i]+55);
printf("
");
}
int main()
{int x;
scanf("%d",&x);
printf("%d的八进制:",x);dec2n(x,8);
printf("%d的十六进制:",x);dec2n(x,16);
return 0;
}
#include<stdio.h>
const int maxn = 128;
const int index8 = 8;
const int index16 =16;
int main()
{
int Array8[maxn];
int Array16[maxn];
int n, cot8 = 0;
scanf("%d", &n);
int m = n, cot16 = 0;
while(n)
{
Array8[cot8++] = n % index8;
n /= index8;
}
while(m)
{
Array16[cot16++] = m % index16;
m /= index16;
}
int i;
for(i = cot8 - 1; i >= 0; i--)
printf("%d", Array8[i]);
puts("");
for(i = cot16 - 1; i >= 0; i--)
//************************这里有改动****************************
if(Array16[i]<10){ //小于10的情况
printf("%d", Array16[i]);
}else{ //大于10 的情况 ASCII码的知识
printf("%c",Array16[i]-10+'A');
}
//*********************************************************************
printf("
");
return 0;
}
#include<stdio.h>
const int maxn = 128;
const int index8 = 8;
const int index16 = 16;
int main()
{
int Array8[maxn];
int Array16[maxn];
int n, cot8 = 0;
scanf("%d", &n);
int m = n, cot16 = 0;
while(n)
{
Array8[cot8++] = n % index8;
n /= index8;
}
while(m)
{
Array16[cot16++] = m % index16;
m /= index16;
}
int i;
for(i = cot8 - 1; i >= 0; i--)
printf("%d", Array8[i]);
puts("");
for(i = cot16 - 1; i >= 0; i--)
printf("%d", Array16[i]);
return 0;
}
绛旓細c include int main() { int decimalInput; // 瀹氫箟瑕佽浆鎹㈢殑鍗佽繘鍒舵暟 int hexadecimalOutput; // 瀛樺偍鍗佸叚杩涘埗缁撴灉 // 杈撳叆鍗佽繘鍒舵暟 printf("璇杈撳叆涓涓崄杩涘埗姝f暣鏁: ");scanf("%d", &decimalInput);// 杞崲涓哄崄鍏繘鍒 hexadecimalOutput = decimalInput;printf("鍏跺搴旂殑鍗佸叚杩涘埗鏁存暟涓: %x\...
绛旓細dec2n(x,8)
绛旓細//姹傚嚭杩欎釜姝f暟temp鐨勪簩杩涘埗骞跺瓨鏀惧湪pwm_temp涓 transform_data_zhengshu(temp,pwm_temp);//灏嗚繖涓鏁皌emp鐨勪簩杩涘埗pwm_temp鍙栧弽骞惰浆鎹㈡垚鍗佽繘鍒舵暟sum int sum=0;int i=0;for(i=0;i<15;i++){ if(pwm_temp==0)pwm_temp=1;else pwm_temp=0;sum+=cifang(i)*pwm_temp;pwm_temp=0;}...
绛旓細鍙互閫氳繃C璇█缂栧啓涓涓绋嬪簭锛屽皢杈撳叆鐨鍗佽繘鍒舵暟杞崲涓轰簩杩涘埗鏁般傞鍏堬紝鎴戜滑闇瑕佷簡瑙e崄杩涘埗鍜屼簩杩涘埗涔嬮棿鐨勮浆鎹㈠師鐞嗐傚崄杩涘埗鏄垜浠棩甯哥敓娲讳腑甯哥敤鐨勬暟鍊艰〃绀烘柟娉曪紝姣涓浣涓婄殑鏁扮爜閮芥槸0~9涔嬮棿鐨勬暟瀛椼傝屼簩杩涘埗鍒欏彧鏈0鍜1涓や釜鏁扮爜銆傝灏嗗崄杩涘埗杞崲涓轰簩杩涘埗锛屽彲浠ラ噰鐢“闄2鍙栦綑”鐨勬柟娉曪紝鍗冲皢鍗...
绛旓細j--; } return;}void my_itoa(int x,char a[],int n){ int i=0; while(x>0) { a[i]=x%n+'0'; x = x/n; i = i+1; } if(i==0) { a[i]='0'; i = i+1; } a[i]='\0'; reverse(a);}void dtob(...
绛旓細include"stdio.h"main(){ int i;printf("enter a number");scanf("%d",&i);printf("\n鍏杩涘埗涓%o",i);printf("\n鍗佸叚杩涘埗涓%x",i);}
绛旓細include<stdio.h> int main(){ int a,*p;p=&a;scanf("%d",p);printf("%x\n",*p);return 0;}
绛旓細int main(){ int a;int b[1000],i,x0,x1,k,c;x0=0;x1=1;printf("璇杈撳叆鍗佽繘鍒舵暟a\n");scanf("%d",&a);if(a == 0){ printf("鍗佽繘鍒舵暟0杞垚浜岃繘鍒舵暟涓0\n");printf("1鐨勪釜鏁颁负0\n");printf("0鐨勪釜鏁颁负1\n");} c = a;for(i=0;i<1000;i++)b[i]=0;i=0;...
绛旓細鎬濊矾锛鍗佽繘鍒鏁存暟杞崲涓轰簩杩涘埗鏁存暟閲囩敤"闄2鍙栦綑锛岄嗗簭鎺掑垪"娉曘傚嵆鐢2鏁撮櫎鍗佽繘鍒舵暣鏁帮紝鍙互寰楀埌涓涓鍟嗗拰浣欐暟锛涘啀鐢2鍘婚櫎鍟嗭紝鍙堜細寰楀埌涓涓晢鍜屼綑鏁帮紝濡傛杩涜锛岀洿鍒板晢涓0鏃朵负姝紝鐒跺悗鎶婂厛寰楀埌鐨勪綑鏁颁綔涓轰簩杩涘埗鏁鐨勪綆浣嶆湁鏁堜綅锛屽悗寰楀埌鐨勪綑鏁颁綔涓轰簩杩涘埗鏁扮殑楂樹綅鏈夋晥浣嶏紝渚濇鎺掑垪璧锋潵銆傚弬鑰冧唬鐮侊細include "...
绛旓細using namespace std;include <math.h> define MAXSIZE 20 typedef struct Stack { char node[MAXSIZE];int top;}Stack;int main(){ Stack s;s.top=-1;int n;cout<<"璇杈撳叆鍗佽繘鍒舵暟锛"<<endl;cin>>n;int m;cout<<"璇疯緭鍏ヨ杞寲鐨勮繘鍒舵暟锛"<<endl;cin>>m;int q=n;while(n!=0)...