标签:代码 电脑 files col 一个 变量 studio 进制 指针
1,十进制转二进制
#include<stdio.h>int main() { int i=0,n,a[32];//a[32]表示数组a里面有32个元素 printf("请输入一个十进制整数:\n"); scanf("%d",&n); while(n>0) { a[i]=n%2; i=i+1; n=n/2; } printf("十进制整数转换为二进制数是:\n"); for(i--;i>=0;i--)//i自减直到i<0 printf("%d",a[i]); printf("\n"); return 0; }
2,任意进制转为十进制
#include<stdio.h> #include<math.h> #include<string.h> #include<stdlib.h> int y(char a[32],int n)//构造函数y {int i,j; long int c=0; j=strlen(a);//测试字符串的总长度 for(i=j-1,j=0;i>=0;i--,j++) c=c+(long)((a[i])*pow(n,j));//pow(n,j)为n^j return c; } int main() {char a[32]; int b; long int c; char *p=a;//声明一个指针变量并把a里面的地址赋值给指针p,让p和a指向同一个变量 printf("输入数据和a进制:\n"); scanf("%s",p);//%s为字符串占位符 scanf("%d",&b); c=y(p,b); printf("输出十进制的数为:%ld",c);//%ld输出long整数 system("pause"); return 0; }
对这个代码进行运行时会出现1>c:\users\lenovo\documents\visual studio 2012\projects\consoleapplication7\consoleapplication7\源.cpp(11): error C2668: “pow”: 对重载函数的调用不明确1> c:\program files\microsoft visual studio 11.0\vc\include\math.h(582): 可能是“long double pow(long double,int)”1> c:\program files\microsoft visual studio 11.0\vc\include\math.h(534): 或 “float pow(float,int)”1> c:\program files\microsoft visual studio 11.0\vc\include\math.h(496): 或 “double pow(double,int)”1> 尝试匹配参数列表“(int, int)”时
为什么上机时用电脑运行会是这个结果,但在手机上运行却能成功????
标签:代码 电脑 files col 一个 变量 studio 进制 指针
原文地址:https://www.cnblogs.com/hongjiamin/p/9961269.html