| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5127 人关注过本帖
标题:关于c++的函数问题
只看楼主 加入收藏
a181625133
Rank: 1
等 级:新手上路
帖 子:56
专家分:0
注 册:2017-10-7
收藏
得分:0 
图片附件: 游客没有浏览图片的权限,请 登录注册

这是给wengbin先生的截图
2018-02-04 13:09
a181625133
Rank: 1
等 级:新手上路
帖 子:56
专家分:0
注 册:2017-10-7
收藏
得分:0 
还有一个问题,能教一下我吗
输入一个正整数 N,打印一个对称数列,从 1 到 N,再从 N 到 1。例如: N=4 时,输出: 1 2 3 4 3 2 1
这个我想了好久都没想出来啊
求解
2018-02-04 16:06
wengbin
Rank: 10Rank: 10Rank: 10
来 自:陕西西安
等 级:贵宾
威 望:19
帖 子:370
专家分:1846
注 册:2015-5-8
收藏
得分:0 
程序代码:
#include <iostream>

int foo(int i)
{
    int n = 0;
    if (1 == i) n = 1;
    else n = foo(i - 1) + 3 * (i - 1);
    std::cout << n << " ";
    return n;
}

int Nprint(int n)
{
    unsigned int i = 1;
    unsigned int N = n - 1;
    while (i < 2*n)
    {
        if (i <= n) std::cout << i << " ";
        else std::cout << N-- << " ";
        i++;
    }
    return 0;
}
int main()
{
    foo(5);// 这里是不用循环的,是递归调用的一个特点
    std::cout << std::endl;
    Nprint(6);
    std::cout << std::endl;
    return 0;
}
2018-02-04 17:28
a181625133
Rank: 1
等 级:新手上路
帖 子:56
专家分:0
注 册:2017-10-7
收藏
得分:0 
好难啊,能教一下吗
2018-02-04 19:53
a181625133
Rank: 1
等 级:新手上路
帖 子:56
专家分:0
注 册:2017-10-7
收藏
得分:0 
看着都晕
2018-02-04 19:54
a181625133
Rank: 1
等 级:新手上路
帖 子:56
专家分:0
注 册:2017-10-7
收藏
得分:0 
还有,似乎不行哦
图片附件: 游客没有浏览图片的权限,请 登录注册
?wengbin先生
2018-02-04 19:57
ehszt
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:40
帖 子:1744
专家分:3216
注 册:2015-12-2
收藏
得分:0 
楼主是这个意思吗?
#include <iostream>
using namespace std;
int m[100];
int foo(int i)
{
    int n=0;
    if(1==i) n=1;
     else n=foo(i-1)+3*(i-1);
     cout<<n<<" ";
     m[i]=n;
     return n;
}
int main()
 {
      //读入要输出的数列数量n
      int n;
      cin>>n;
      foo(n);
      for(int i=n-1;i>0;i--)
      cout<<m[i]<<" ";
     return 0;
}
2018-02-04 20:39
a181625133
Rank: 1
等 级:新手上路
帖 子:56
专家分:0
注 册:2017-10-7
收藏
得分:0 
输入一个正整数 N,打印一个对称数列,从 1 到 N,再从 N 到 1。例如: N=4 时,输出: 1 2 3 4 3 2 1

输入

    第一行 1 个整数 N,范围在[1,100]

输出


一行,2N-1 个整数
错了,不过还是感谢你们了
2018-02-04 21:41
a181625133
Rank: 1
等 级:新手上路
帖 子:56
专家分:0
注 册:2017-10-7
收藏
得分:0 
希望能想出好的方法并教一下我
2018-02-04 22:35
wengbin
Rank: 10Rank: 10Rank: 10
来 自:陕西西安
等 级:贵宾
威 望:19
帖 子:370
专家分:1846
注 册:2015-5-8
收藏
得分:0 
答案都给你了,运行结果你都贴出来了,你说不行是什么意思?输入和输出你调下格式不难吧,主函数调用改成这样
程序代码:
int main()
{
    int i = 0;
    std::cin >> i;
    foo(i);
    std::cout << std::endl;
    int n = 0;
    std:: cin >> n;
    Nprint(n);
    std::cout << std::endl;
    return 0;
}
2018-02-04 23:20
快速回复:关于c++的函数问题
数据加载中...
 
   



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

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