70,022
社区成员




char * comma(__int64 num) {
static char commades[80];
static char commasrc[80];
sprintf(commasrc,"%I64d",num);
int L=strlen(commasrc);
register int j=0;
register int k=0;
for (int i=L-1;i>=0;i--) {
commades[j]=commasrc[i];
k++;
j++;
if ((k%3)==0 && i>0) {
commades[j]=',';
j++;
}
}
commades[j]=0;
strrev(commades);
return commades;
}
#include <stdio.h>
#include <math.h>
void show_digit(int num);
void show_digit_as_bit(int num, int bit);
int main(int argc, char** argv)
{
#if 1
int num;
while (scanf("%d", &num) > 0 && num > 0) {
show_digit(num);
printf("\n");
show_digit_as_bit(num, 3);
printf("\n");
}
#else
int i,longest,n,bn,t;
i,longest=0;
t=1;
scanf("%d",&bn);
n=bn;
while(n/10!=0)
{
n=n/10;
i++;
}
longest=i+1;
n=bn;
i=0;
while(n/10!=0)
{
while(i<longest-1)
{
n=n/10;
i++;
if(n/10==0)
{
printf("%d ",n);
}
}
i=0;
while(i<longest-1)
{
t=10*t;
i=i+1;
}
longest=longest-1;
bn=bn%t;
n=bn;
i=0;
t=1;
}
printf("%d\n",n);
#endif
return 0;
}
void show_digit(int num)
{
if (num > 0)
show_digit(num / 10);
if (num <= 0)
return;
printf("%d ", num % 10);
}
void show_digit_as_bit(int num, int bit)
{
printf("****%d\n", num);
int n = pow(10, bit);
if (num > 0)
show_digit_as_bit(num / n, bit);
if (num <= 0)
return;
printf("%d ", num % n);
}
参考一下吧,其实用一个函数就可以实现你的两个功能;
void show_digit_as_bit(int num, int bit)
{
printf("****%d\n", num);
int n = pow(10, bit);
if (num > 0)
show_digit_as_bit(num / n, bit);
if (num <= 0)
return;
printf("%d ", num % n);
}
实现第一个功能,只需要调用函数是第二个参数传1,实现第二个功能传3;即
#include <stdio.h>
#include <math.h>
void show_digit(int num);
void show_digit_as_bit(int num, int bit);
int main(int argc, char** argv)
{
int num;
while (scanf("%d", &num) > 0 && num > 0) {
show_digit_as_bit(num, 1);
printf("\n");
show_digit_as_bit(num, 3);
printf("\n");
}
return 0;
}
void show_digit(int num)
{
if (num > 0)
show_digit(num / 10);
if (num <= 0)
return;
printf("%d ", num % 10);
}
void show_digit_as_bit(int num, int bit)
{
int n = pow(10, bit);
if (num > 0)
show_digit_as_bit(num / n, bit);
if (num <= 0)
return;
printf("%d ", num % n);
}
参考一下吧,递归方法