回 帖 发 新 帖 刷新版面

主题:给大家分享一个经典的例子!

#include<stdio.h>
#define nmax 50
void main()
{
    int a[nmax],i,j,k,n,*p;
    printf("please input the num");
    scanf("%d",&n);
    for(i=0;i<n;i++)
        a[i]=i+1;
    i=0;j=0;k=0;
    p=a;
    while(j<n-1)
    {
        if(*(p+i)!=0)
            k++;
        if(k==3)
        {
            *(p+i)=0;
            k=0;
            j++;
        }
        i++;
        if(i==n) i=0;
    }
    while(*p==0) p++;
    printf("%d",*p);
}
        
以前其他的方法我看了半天才能明白。这个程序我觉得相当的好,大家好好的看看,

回复列表 (共4个回复)

沙发

这是干什么的

板凳

什么意思呢?做什么用的?

3 楼

这段代码就是在说比如 123456789 数到3就淘汰,然后继续数看最后是那个数字留下。

4 楼

可以动态申请一个数组
a=new int[n];

我来回复

您尚未登录,请登录后再回复。点此登录或注册