考试网 >> IT认证 >> 等级 >> 三级考试 >> 三级C语言程序设计上机考试习题集(51-60)

三级C语言程序设计上机考试习题集(51-60)

发布时间:2006-06-27 08:15     点击:
分页:前10页  上一页  [11] 12 13 14 15  下一页

  s1=s;

  for(i=1; i<=n; i++)  p[i-1]=i;

  for(i=n; i>=2; i--)

   { s1=(s1+m-1)%i;

     if(s1==0) s1=i;

     w=p[s1-1];

     for(j=s1; j<i; j++)  p[j-1]=p[j];

     p[i-1]=w;

   }

/*由于上面的解法是倒着存放出圈数,以下采用两个循环的是将数组p中的数据倒过来以实现题意要求,即:第1个出圈的编号存放在p[0]中,第2个出圈的编号存放在p[1]中,直至第n个出圈的编号存放在p[n-1]中。*/

   for(i=0,j=n-1;i<n,j>=0;i++,j--) /*也可改为for(i=0,j=n-1;i<n;i++,j--) */

     q[j]=p[i];

   for(i=0;i<n;i++)

     p[i]=q[i];

}

void main()

{

  m = M ;

  n = N ;

  s = S ;

  Josegh() ;

  WriteDat() ;

}

void WriteDat(void) /*注意两种题中此函数的区别*/

{

  int i, j = 0 ;

  FILE *fp ;

  fp = fopen("out.dat", "w") ;

  for(i = 0 ; i <= N - 1 ; i++) {

    printf("%4d ", p[i]) ;

    fprintf(fp, "%4d", p[i]) ;

    j++ ;

    if(j % 10 == 0) {

      printf("\n") ;

      fprintf(fp, "\n") ;

    }

  }

  fclose(fp) ;

}

*****************************************************************************************

★☆题目58(无忧id 31  选票问题)

    部分源程序存在文件prog1.c中。

    请勿改动主函数main()、读数据函数ReadDat()和输出数据函数writeDat()的内容。

分页:前10页  上一页  [11] 12 13 14 15  下一页
版权申明:未经书面授权请勿转载本站信息!!作品版权归所属媒体与作者所有!!
发表评论: 匿名发表 用户名: 查看评论
您将承担一切因您的行为、言论而直接或间接导致的民事或刑事法律责任
留言板管理人员有权保留或删除其管辖留言中的任意内容
本站提醒:不要进行人身攻击。谢谢配合。
在本站搜索相关信息
2003-2005 Ksw123.com All Rights Reserved. - TOP
Copyright © 2006 Ksw123.com. All rights reserved.中国考题网 版权所有