设为首页收藏本站

新微赢技术网

 找回密码
 注册
搜索
热搜: 回贴
查看: 671|回复: 8
打印 上一主题 下一主题

[求助]下面几题怎么编啊?

[复制链接]
跳转到指定楼层
1#
发表于 2009-11-4 01:28:46 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
用VC++语言来编!周末就要考了,帮帮忙啊,拜托了!


1. 定义一个学生类Student,其中包括姓名和成绩,姓名用动态分配的字符数组存放,要求在对象被撤消时,能将动态数组所占空间归还给堆内存。主函数的内容为:
void main()
{ Student s1("zhang san",80),s2(s1);
s1.print();s2.print(); //显示对象s1和s2的姓名和成绩
}

2. 输入一组非0整数(以输入0作为输入结束标志)到一维数组中,设计一程序,统计这一组数中正数的个数、负数的个数,并求出这一组数的平均值。(10分)

3. 编写程序,输入一个6×6的二维整型数组,并输出该数组的平均值、最大元素值、最小元素值。(10分)
要求:(1)输入一个6×6的二维整型数组的任务由一个函数实现,该函数用指向一维数组的指针变量和二维数组的行数作参数。
(2)输出数组的平均值、最大元素值、最小元素值的任务由另一个函数实现,该函数用指向一维数组的指针变量和二维数组的行数作参数。
(3)在主函数中分别调用上述函数以实现整个编程。

4. 编一程序,根据输入x的值计算下列表达式的值:
┌ 1.5x, x<0
y= ┤ 1.5x+7, 0≤x<2.5
└ 9.32x-34.2, x≥2.5
要求:画出流程图或N-S图。
9#
发表于 2009-11-4 01:28:55 | 只看该作者
对六楼的稍微修改了一下:

#include<iostream>
using namespace std;
const int MAXSIZE = 100;
void read(int[],int&);
void summ(int& i,int& j,float& sum,int a[],int size);
int main()
{
int a[MAXSIZE] = {0},size,i,j;
float sum,avg;
read(a,size);
summ(i,j,sum,a,size);
avg=sum/(size-2);
cout<<i<<" "<<j<<" "<<sum<<" "<<avg<<endl;
return 0;
}

void read(int a[],int& n)
{
cout<<"Enter integers. Terminate with 0:\n";
n=0;
do
{
cout<<"a["<<n<<"]:";
cin>>a[n];
}while(a[n++]!=0 && n<MAXSIZE);

}

void summ(int& i,int& j,float& sum,int a[],int size)
{
sum = 0.0;
i = 0;
j = 0;
for(int k=0;k<=size;k++)
{
sum+=a[k];
if(a[k]>0)
i++;
if(a[k]<0)
j++;
}
}
回复 支持 反对

使用道具 举报

8#
发表于 2009-11-4 01:28:53 | 只看该作者
有些小问题没有必要OO,就可以不OO了

OO是比不OO要慢的
回复 支持 反对

使用道具 举报

7#
发表于 2009-11-4 01:28:52 | 只看该作者
很可惜, 美中不足, 6楼的程序 is not oo programming.
回复 支持 反对

使用道具 举报

6#
发表于 2009-11-4 01:28:51 | 只看该作者
第2题的:新手,还望各位大虾指点。
#include<iostream>
using namespace std;
const int MAXSIZE = 100;
void read(int[],int&);
void summ(int& i,int& j,float& sum,int a[],int size);
int main()
{
int a[MAXSIZE] = {0},size,i,j;
float sum,avg;
read(a,size);
summ(i,j,sum,a,size);
avg=sum/size;
cout<<i<<" "<<j<<" "<<sum<<" "<<avg<<endl;
return 0;
}
void read(int a[],int& n)
{
cout<<"Enter integers. Terminate with 0:\n";
n=0;
do
{
cout<<"a["<<n<<"]:";
cin>>a[n];
}while(a[n++]!=0 && n<MAXSIZE);
--n;
}
void summ(int& i,int& j,float& sum,int a[],int size)
{
sum = 0.0;
i = 0;
j = 0;
for(int k=0;k<=size;k++)
{
sum+=a[k];
if(a[k]>0)
i++;
if(a[k]<0)
j++;
}
}
回复 支持 反对

使用道具 举报

5#
发表于 2009-11-4 01:28:50 | 只看该作者
对啊,好歹自己也要写一下程序啊,运行不出来再来问比较好点
回复 支持 反对

使用道具 举报

4#
发表于 2009-11-4 01:28:49 | 只看该作者
4号楼306,

你的这4道题都是很简单的, 估计你现在什么都不会, 放弃幻想重新学吧. 
回复 支持 反对

使用道具 举报

3#
发表于 2009-11-4 01:28:48 | 只看该作者
对,楼上的说的对.

自己要先去思考问题,试着去写出来,如果还是有错误那就仔细想想,真的想不出再来请叫高手.
这样以后你就不会在问同样的问题了.
回复 支持 反对

使用道具 举报

2#
发表于 2009-11-4 01:28:47 | 只看该作者
我觉得把问题100%的往那一堆等着解答,这样的问题及时回答你对你来说是一种损害,毫无帮助.
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

申请友链|小黑屋|最新主题|手机版|新微赢技术网 ( 苏ICP备08020429号 )  

GMT+8, 2024-11-19 13:18 , Processed in 0.107215 second(s), 9 queries , Gzip On, Memcache On.

Powered by xuexi

© 2001-2013 HaiAn.Com.Cn Inc. 寰耽

快速回复 返回顶部 返回列表