标题:指针的用法!各位大侠,帮帮忙!
取消只看楼主
sydyh43
Rank: 1
等 级:新手上路
帖 子:10
专家分:9
注 册:2009-6-17
结帖率:80%
已结贴  问题点数:10 回复次数:0 
指针的用法!各位大侠,帮帮忙!
有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那个人。


帮忙看一下下面程序哪错了?

#include <stdio.h>

#define N 100

int main()
{
    int i = 0;
    int k = 0;
    int n, t;
    int *p;
    int a[N];
    int flag = 1;
   
    printf("please input a number:");
    scanf("%d", &n);
   
    p = a;
    for (i = 0; i < n; i++)
    {
          *(p + i) = i + 1;
    }
    p = a;
    for (i = 0; i < n; i++)
    {
           printf("%3d", *p++);
    }
   
    putchar('\n');
    p = a;
    t = n;
    while (i < n && flag)
    {
          if (*p++ !=0)
          {
                   k++;
          }
          if (k == 3)
          {
                   k = 0;
                   *(p + i) = 0;
                   t--;
          }
          if (t == 1)
          {
                   flag = 0;
          }
          i++;
          if (i == n)
          {
                i = 0;
          }
    }
   
    if (* p == 0)
    {
            p++;
    }
    printf("%d", *p);
    system("pause");
}
搜索更多相关主题的帖子: 指针 
2009-08-18 19:54



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-283138-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.415311 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved