[讨论] 如何用汇编和C语言混合编程实现约瑟夫环问题

wangyi-   2011-12-12 19:05 楼主

#include <stdio.h>
#define N 9
int a[N];
int k;
int function(int m){
 int j=1;
 while(j<m)
 {
  while(a[k]==0)
   k=(k+1)%N;
  j++;
  k=(k+1)%N;
 }
 while(a[k]==0)
  k=(k+1)%N;
 printf("%d ",k);
 return k;
}


main()
{
    int i,m;
 k=0;
 printf("enter m:");
    scanf("%d",&m); //n总人数,m步长
 printf("enter code array:");
    for(i=0;i<N;i++)
  scanf("%d",&a);
 printf("\nOutput:\n");
 for(i=0;i<N;i++)
 {
  k=function(m);
  m=a[k];
  a[k]=0;
 }
 return 0;
}

 

把main部分用汇编实现,初始化a[k]等

回复评论 (2)

为什么要混编呢?
QQ:1625345502
点赞  2011-12-13 09:20
呀,怎么没有文字啊,这些代码我看不懂呢
android培训
点赞  2011-12-14 10:39
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复