|
发表于 2018-6-21 12:02:52
|
显示全部楼层
- #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[10][10],i,j;
- char t_bit[256]={0};
- srand((unsigned)time(NULL));
- for(i=0;i<10;i++){
- for(j=0;j<10;j++){
- printf("%3d",a[i][j]=rand()%100);
- }
- printf("\n");
- }
-
- for(i=0;i<10;i++){
- for(j=0;j<10;j++){
- printf("%-5d:",a[i][j]);
- print(a[i][j],2,t_bit,0);
- printf("\t%s\n",t_bit);
- }
- }
-
- }
复制代码
|
|