1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > C语言【程序48】题目:八进制转换为十进制 二进制转换为十进制 十进制转换为二进制

C语言【程序48】题目:八进制转换为十进制 二进制转换为十进制 十进制转换为二进制

时间:2023-03-12 20:20:51

相关推荐

C语言【程序48】题目:八进制转换为十进制 二进制转换为十进制 十进制转换为二进制

基本思想:八进制转十进制,二进制转十进制都一样的道理

八进制 --> 十进制

//【程序48】//题目:八进制-->十进制#include<stdio.h>#include<math.h>int main(){int i=0,n,tmp,sum=0;scanf("%d",&n);while(n){tmp=n%10;n=n/10;sum+=tmp*pow(8,i);i++;}printf("%d",sum);return 0;}

二进制 --> 十进制

#include<stdio.h> //二进制-->十进制#include<math.h>int main(){int i=0,n,tmp,sum=0;scanf("%d",&n);while(n){tmp=n%10;n=n/10;sum+=tmp*pow(2,i);i++;}printf("%d",sum);return 0;}

十进制 --> 二进制

#include<stdio.h> //十进制-->二进制 int main(){int i=0,n,str[15];scanf("%d",&n);while(n){str[i]=n%2;n=n/2;i++;} for(int j=i-1;j>=0;j--)printf("%d",str[j]);return 0;}

十进制 --> 八进制

#include<stdio.h> //十进制-->八进制 int main(){int i=0,n,str[15];scanf("%d",&n);while(n){str[i]=n%8;n=n/8;i++;} for(int j=i-1;j>=0;j--)printf("%d",str[j]);return 0;}

十六进制 --> 十进制

#include<stdio.h> //十六进制-->十进制 eg. (十六进制)AB-->171(十进制) #include<math.h> //ABCD-->43981int main(){int i,j,k=0;long int sum=0,tmp;char str[15],a[15]; gets(str);for(i=0;str[i]!='\0';i++){if(str[i]>='0'&&str[i]<='9')a[i]=str[i]-'0';if(str[i]>='a'&&str[i]<='z')a[i]=str[i]-'a'+1+9;if(str[i]>='A'&&str[i]<='Z')a[i]=str[i]-'A'+1+9;}for(j=i-1;j>=0;j--){tmp=a[j]*pow(16,k);sum+=tmp;k++;}printf("%ld",sum);return 0;}//#include<stdio.h> //方法二:参看大佬的解法 //int main()//16-->10进制 //{//int num = 0;// printf("输入一个十六进制数: ");// scanf("%x", &num);// printf("十六进制数 %x 转换为十进制为 %d\n", num, num);//return 0;//}

十进制 --> 十六进制

#include<stdio.h>int main(){int n,i=0,j;char ten[16],str[17]="0123456789ABCDEF"; //10进制-->16进制 scanf("%d",&n); //46-->2E; 59-->3Bwhile(n) //46= 2*16^1 + 14*16^0{ten[i++]=str[n%16];n=n/16;}for(j=i-1;j>=0;j--)printf("%c",ten[j]); return 0;}

C语言【程序48】题目:八进制转换为十进制 二进制转换为十进制 十进制转换为二进制 十进制转换为八进制 十六进制转换为十进制 十进制转换为十六进制

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。