J.H


私信TA

用户名:dotcpp0649969

访问量:5185

签 名:

等  级
排  名 80
经  验 9561
参赛次数 1
文章发表 135
年  龄 0
在职情况 学生
学  校 桂林理工大学
专  业 计算机科学与技术

  自我简介:

TA的其他文章

解题思路:

注意事项:

参考代码:

#include<stdio.h>

#include<stdlib.h>

#include<math.h>

#define maxsize 101

typedef struct

{

int num[maxsize];

int top;

}Sequenstack;

Sequenstack* init_sequenstack()

{

Sequenstack* s;

s = (Sequenstack*)malloc(sizeof(Sequenstack));

if (s == NULL)

return NULL;

s->top = -1;

return s;

}

int push_sequenstack(Sequenstack* s, int x)

{

if (s->top + 1 > maxsize)

{

return 0;

}

else

{

s->top++;

s->num[s->top] = x;

return 1;

}

}

int pop_sequenstack(Sequenstack* s, int* x)

{

if (s->top == -1)

return 0;

else

{

*x = s->num[s->top];

s->top--;

return 1;

}

}

int main()

{

int n,x,*a,m,sum=0;

a = (int*)malloc(sizeof(int));

Sequenstack* s;

s = init_sequenstack();

while (scanf("%d", &n) != EOF)

{

if (n == 0)

{

printf("0-->0\n");

}

else

{

m = n;

while (m != 0)

{

if (abs(m)>0&&abs(m)<2)

{

x = m % 2;

}

else

x = abs(m) % 2;

push_sequenstack(s, x);

m /= 2;

}

printf("%d-->", n);

while (s->top != -1)

{

pop_sequenstack(s, a);

printf("%d", *a);

}

printf("\n");

}

}

free(a);

return 0;

}


 

0.0分

0 人评分

  评论区

  • «
  • »