求一个代码:将一个二维数组中的数据转换为二进制并转存
转换二进制功能要求:
将数组中的数据转换为二进制并转存到另一数组中输出
急
#include <stdio.h>
#include "stdlib.h"
#include "time.h"
int main(int argc,char *argv[])
{
int a,i,j;
srand((unsigned)time(NULL));
for(i=0;i<10;i++)
{
for(j=0;j<10;j++)
printf("%3d",a=rand()%100);
printf("\n");
}
} #include <stdio.h>
//此函数主要模拟除二取余,要在转换的地方使用此函数即可
signed int DecToBin(signed int Dec)
{
signed int Bin = 0;
do
{
Bin *= 10; //升级十进制的位
Bin += Dec % 2; //取余
Dec /= 2; //除二
} while (Dec > 0);
return Bin;
}
int main(void)
{
printf("100Dec = %dBin", DecToBin(100));
getchar();
return 0;
} 不明白你在问什么
#include <stdio.h>
#include <string.h>
int main(void)
{
int a;
int b;
for(int i = 0; i < 100; ++i)
a = i;
memcpy(b, a, 100 * sizeof(int));
for(int i = 0; i < 100; ++i)
printf("%d ", b);
printf("\n");
return 0;
}
人造人 发表于 2018-6-20 21:14
不明白你在问什么
可以写一个除二取余法转换二进制吗
接在我上面写的代码的下面 千杯不醉的关关 发表于 2018-6-20 21:49
可以写一个除二取余法转换二进制吗
接在我上面写的代码的下面
把数字转换成二进制字符串? 千杯不醉的关关 发表于 2018-6-20 21:49
可以写一个除二取余法转换二进制吗
接在我上面写的代码的下面
可以的就按照我的那个函数来实现就OK了 #include <stdio.h>
#include "malloc.h"
#include "time.h"
int print(int n,int m,char * p,int index){
if(n){
int i= print(n/m,m,p,1+index); //递归(转换到值,进制,保存转换的信息,长度累计)
printf("%d",n%m); //打印效果
*(p+i)=n%m ? '1': '0'; //这里可以写一个 整数转字符的函数,实现其他进制转换1='1'
return i+1; //插入次数+1
}else{
*(p+index)='\0'; //index 记录字符的次数,为了在添加结尾标志
return 0; //从index0开始插入字符
}
}
int main(int argc,char *argv[]){
int a,i,j;
char t_bit={0};
srand((unsigned)time(NULL));
for(i=0;i<10;i++){
for(j=0;j<10;j++){
printf("%3d",a=rand()%100);
}
printf("\n");
}
for(i=0;i<10;i++){
for(j=0;j<10;j++){
printf("%-5d:",a);
print(a,2,t_bit,0);
printf("\t%s\n",t_bit);
}
}
}
页:
[1]