humanint 2016-11-08 15:02 采纳率: 100%
浏览 925

c语言循环的问题,c primer plus第六版第六章第18题

题目大概是,某人刚开始有5个朋友,他的朋友数量以下面方式增长:第1周少1个朋友,剩下的朋友数量翻倍;第二周少2个朋友,剩下的朋友数量翻倍.......第N周少N个朋友,剩下的朋友数量翻倍。
编写一个程序显示这个人每周朋友的数量,直到朋友数量<=150.
这是我写的
#include
int main(void)
{
int fr[200], i=0;

while (fr[i] < 150) {
    fr[0] = 5;
    fr[i] = (fr[i] - i + 1) * 2;
    i++;
}
for (i = 0; fr[i] <150; i++)
    printf("at %dd week there are %3d friends\n", i, fr[150]);
getchar();
return 0;

}
然后调试
图片说明
就是这样,谢谢
(我在想能否用数组的方式实现)

  • 写回答

4条回答 默认 最新

  • Dream淡漠 2016-11-08 15:21
    关注

    #include
    #include

    int main(void)
    {

    int f = 5;
    int i = 1;
    while (1)
    {
        f = (f - i) * 2;
        if (f >= 150)
            break;
        printf("%d ,%d\n", i, f);
        i++;
    }
    
    system("pause");
    return 0;
    

    }

    评论

报告相同问题?