| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2284 人关注过本帖
标题:两道程序题请大家帮一下.
只看楼主 加入收藏
xxp27
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2008-7-18
收藏
得分:0 
既然是用C++,还是建议你使用标准库,省时又省力,不然还不如直接用C
文件部分明天有空再写吧

// 测试.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include<iostream>
#include<fstream>
#include<vector>
#include<algorithm>
using namespace std;

int main()
{
    vector<int> ivec;
    int n=0;
    int num;
    while(n!=6)
    {
        cin>>num;
        ivec.push_back(num);
        n++;
    }
    int sum=0;
    int m=0;
    for(vector<int>::iterator it=ivec.begin();it!=ivec.end();it++)
    {
        cout<<*it<<" ";
        sum+=*it;
    }
    cout<<"平均值为"<<sum/6<<endl;
    cout<<"最大值为"<<*(max_element(ivec.begin(),ivec.end()))<<endl;

}
改好了

#include "stdafx.h"
#include<iostream>
#include<fstream>
#include<vector>
#include<algorithm>
using namespace std;

int main()
{
    vector<int> ivec;
    ofstream out("1.txt");
    if(!out)
    {
        cout<<"error"<<endl;
        exit(0);
    }
    int n=0;
    int num;
    while(n!=6)
    {
        cin>>num;
        ivec.push_back(num);
        n++;
    }
    int sum=0;
    int m=0;
    for(vector<int>::iterator it=ivec.begin();it!=ivec.end();it++)
    {
        out<<*it<<" ";
        sum+=*it;
    }
    out<<endl<<"平均值为"<<sum/6<<endl;
    out<<"最大值为"<<*(max_element(ivec.begin(),ivec.end()))<<endl;
    cout<<"已成功储存在1.txt中"<<endl;
    return 0;

}

[[it] 本帖最后由 xxp27 于 2008-8-15 10:30 编辑 [/it]]
2008-08-15 00:27
独孤剑魔
Rank: 1
等 级:新手上路
帖 子:103
专家分:0
注 册:2008-8-5
收藏
得分:0 
真的都号简单
2008-08-15 09:15
hhitjsj021
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2005-9-17
收藏
得分:0 
#include <iostream>
using namespace std;
int fun(int );
   
int main()
{
   
    cout<<fun(10)+fun(9)+fun(8)+fun(7)+fun(6)+fun(5)+fun(4)+fun(3)+fun(1)<<endl;
    system("pause");
    return 0;
                    
    }
int fun(int num)
{
   if(1==num)
   {
    return 1;
   }
    else
    return num*fun(num-1);
}
2008-08-15 13:21
maying_11
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2008-8-15
收藏
得分:0 
程序代码:
#include <iostream>
using namespace std;
//声明函数 
int *max(int*,int ,int*);
int avg(int*,int);
int main()
{
    int a[6];
    int ia;
    int i=0;
    int *maxaddr;
    int idx;
    static int m=0;
    while(m<6&&cin>>ia)
    {
      a[i]=ia;
      i++;
      m++;
    }
    maxaddr= max(a,sizeof(a)/sizeof(*a),&idx);
    cout<<*maxaddr<<endl;
    cout<<avg(a,sizeof(a)/sizeof(*a))<<endl;;
    system("pause");
    return 0;
   
}

 //求数组的最大值    

 int *max(int*array,int size1,int*maxa)
{
     *maxa=0;
     for(int i=1;i<size1;i++)
     if(*(array+*maxa)<*(array+i))
     *maxa=i;
     return(array+*maxa);

 }   
//求数组的平均数 
int avg(int*pr,int size2)
{
    int avgg=0;
    for(int i=0;i<size2;i++)
    {
       avgg+=*pr++;  
    }
    return avgg/size2;
}        
                  
    
2008-08-15 15:08
gloomyboy
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2008-8-10
收藏
得分:0 
我觉得第一道,最简单的算法还是应该用递归来做,我写的程序如下,运行正确,楼主可以参考一下!
#include<iostream.h>
int N=10,sum=0;
long f(int n);
void main()
{
    for(N=10;N>0;N--)
        sum+=f(N);
    cout<<sum<<endl;
}
long f(int n)
{
    if(n==0)
        return 1L;
    if(n==1)
        return 1L;
    else
        return n*f(n-1);
}
2008-08-16 10:09
lizhigang34
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2007-11-24
收藏
得分:0 
作业还是要自己做的.
2008-08-16 10:25
细雨斜飞
Rank: 1
等 级:新手上路
帖 子:42
专家分:0
注 册:2008-5-4
收藏
得分:0 
#include <iostream>
using namespace std;

template<class T>
T factorial(T x)
{
    if( x == 1)
        return 1;
    else
        return factorial(x-1)*x;


}

void main()
{
    double sum=0;
    for(int i=1;i<=10;i++)
    {
        sum+=factorial(i);
    }
    cout<<"结果是:"<<sum<<endl;

}
2008-08-18 10:29
快速回复:两道程序题请大家帮一下.
数据加载中...
 
   



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

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