. .
. .word..
. -
- -可修编.
C语言课程设计报告
班 级: 电气1004
学 号: 202109334
姓 名:雷海燕
指导教师:王果
评语:
2011 年 07 月 18日
. .
. .word..
. -
- -可修编.
1 基此题目
题目
有17个人围成一圈,从0号的人开场报数,凡报到3的倍数的人离开圈子,然后再数下去。直到最后只剩下一个人为止。问此人原来的位置是多少号。
题目分析
创立一个指针变量,指针变量中的初值为0至16。然后通过for循环将指针变量中所指的值是三的倍数的变量赋值为0,最后找出所要找的值。
程序
#include <>
#define N 17
int main()
{
int i,j,k,a[N+1],*p;
for(i=0,p=a;p<=a+N;i++,p++)
*p=i;
p=a+1;
k=N;
for(i=0,j=1;k!=1;j++)
{
if(p>(a+N))
p=a+1;
if(*p!=0)
i++;
if(i%3==0&&i!=0)
{
*p=0;i=0;k--;
}
p++;
}
for(i=1;i<=N;i++)
if(a[i]!=0)
printf("最后留下的是%d\n",a[i]);
return 0;
}
. .
. .word..
. -
- -可修编.
开场
i=0,p=a N=17
i=0
p<=a+N
Y
N
*p=i, i++, p++
p=a+1, i=0, j=0
k!=1
k!=1
Y
p>a+N
N
N
p=a+N
.
大一c语言课程设计报告 来自淘豆网www.taodocs.com转载请标明出处.