c++作业5

一、问题及代码

/*   
* 文件名称:Ex4-2pp   
* 作    者:俸浩源 
* 完成日期:2017 年 4 月 19 日   
* 版 本 号:v1.0   
* 对任务及求解方法的描述部分:输入10个数输出没有重复的数  
* 输入描述:输入十个数 
* 问题描述:输入十个任意数后输出不重复的数
* 程序输出: 
* 问题分析:输入完成后对数组中每个数进行循环判断 
* 算法设计:见下方
*/ 
#include<iostream>
using namespace std;
int main()
	{	
	int a[10],b[10],i,j,k=0,l=-1;
	for(i=0;i<10;i++)
		{
		cin>>a[i];				
		}
	for(i=0;i<10;i++)
	{
	k=0;	
	for(j=0;j<10;j++)
			{
				if(a[i]!=a[j])
					k+=1;
				if(k==9)
					{
					b[l+1]=a[i];
					l+=1;
					}
				
			}
	}
	for(i=0;i<l;i++)

		{
		cout<<b[i]<<"\t";	
		}
	cout<<endl;
	}


二、运行结果


一、问题及代码

/*   
* 文件名称:Ex4-2pp   
* 作    者:俸浩源 
* 完成日期:2017 年 4 月 19 日   
* 版 本 号:v1.0   
* 对任务及求解方法的描述部分:输入10个数输出其和
* 输入描述:输入十个数 
* 问题描述:输入十个任意数后输出其和
* 程序输出: 十个数的和
* 问题分析:
* 算法设计:见下方
*/ 
#include<iostream>
using namespace std;
int main()
	{	
	int a[10],iSum=0,i;
	for(i=0;i<10;i++)
		cin>>a[i];
	for(i=0;i<10;i++)
		iSum+=a[i];
	cout<<iSum<<endl;
	}


二、运行结果


一、问题及代码

/*   
* 文件名称:Ex4-3pp   
* 作    者:俸浩源 
* 完成日期:2017 年 5 月 3 日   
* 版 本 号:v1.0   
* 对任务及求解方法的描述部分:输入小组人数和成绩,输出一系列参数	  
* 输入描述:小组人数及成绩	
* 问题描述:使用数组来输出最高最低和平均
* 程序输出:最高成绩,最低成绩,平均成绩,及人数,学号 
* 问题分析:循环比较,取最大最小。
* 算法设计:见下方
*/ 
#include<iostream>
using namespace std;
int main()
{
	double score[10],ave=0;
	int max,min,num1,num2,i,num,num3[10]={0,0,0,0,0,0,0,0,0,0},num4[10]={0,0,0,0,0,0,0,0,0,0};
	cout<<"请输入小组人数"<<endl;
	cin>>num;
	cout<<"请依次输入成绩"<<endl;
	for(i=0;i<num;i++)
	cin>>score[i];
	max=min=score[0];
	num1=num2=0;
	for(i=0;i<num;i++)
		{
			if(max<score[i])	
			max=score[i];	
			if(min>score[i])
			min=score[i];
			ave+=score[i];
		}
	ave/=num;
	for(i=0;i<num;i++)
		{
			if(score[i]==max)
			{
				num3[i]=1;
				num1++;
			}
			if(score[i]==min)
			{
				num4[i]=1;
				num2++;
			}
		}
	cout<<"该小组共有"<<num<<"人"<<endl;
	cout<<"该小组的最高成绩为"<<max<<endl;
	cout<<"该小组的最低成绩为"<<min<<endl;
	cout<<"该小组的平均成绩为"<<ave<<endl;
	cout<<"该小组考得最高成绩的人数是"<<num1<<endl;
	cout<<"学号为";
	for(i=0;i<num;i++)
		{
		if(num3[i]==1)
			cout<<i<<"\t";
		}
	cout<<"\n";
	cout<<"该小组考得最低成绩的人数是"<<num2<<endl;
	cout<<"学号为";
	for(i=0;i<num;i++)
		{
		if(num4[i]==1)
			cout<<i<<"\t";
		}
	cout<<"\n";
}


二、运行结果


一、问题及代码

/*   
* 文件名称:Ex4-3pp   
* 作    者:俸浩源 
* 完成日期:2017 年 5 月 3 日   
* 版 本 号:v1.0   
* 对任务及求解方法的描述部分:输入一串字符串后统计大小写字母的数量	  
* 输入描述:一串50个字符以内的字符串
* 问题描述:循环判断其ASCII码
* 程序输出:“大写字母有xx个”“小写字母有xx个”“其他字符有xx个”“数字有xx个”
* 问题分析:循环判断并统计即可
* 算法设计:见下方
*/ 
#include<iostream>
#include<cstdio>
using namespace std;
int main()
{
	char str[50];
	int i=0,num1=0,num2=0,num3=0,num4=0;
	cout<<"输入字符串";
	gets(str);
	while(str[i]!='\0')
	{
		if(str[i]>=65&&str[i]<=90)num1++;
		else if(str[i]>=97&&str[i]<=122)num2++;
		else if(str[i]>=48&&str[i]<=57)num3++;
		else num4++;
		i++;
	}
	cout<<"大写字母有"<<num1<<"个,小写字母有"<<num2<<"个,数字有"<<num3<<"个,其他字符有"<<num4<<"个"<<endl;
}


二、运行结果

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
第一次作业 这个作业将让你去练习建立一些简单的类和使用C++的基本功能,包括:封装,引用,动态内存开辟, 简单构造函数和析构函数和const。 下面给的程序片段未经过编译或调试. 做出合理的错误修正是你任务的一部分。 一般的,我们会给你最基本部分的代码,如果你需要,你可以在一个类里添加额外的变量或方法,这个作业被分为三个部分,那么你们要按照步骤一步一步地完成。 1. 设计要求 第一部分) 构建简单的类 R1.1) 创建一个Person类, 其模型在下面的代码结构里。 R1.2) 人类(Persons)应该有一些属性: name, email_address, birthdate 作为表示人类的属性。 R1.3) 按下面的要求创建一个Date类。 R1.4) 每个类都应该可以使用输出运算符(<<)输出内容。 //file Date.h class Date { public: Date(); Date( int year, int month, int day ); ... private: int _year; int _month; int _day; }; //end file Date.h //file Person.h class Person { public: Person(void); Person(char * their_name, char * email, int day, int month, int year); char * GetName(); char * GetEmailAddress(); Date GetBirthDate(); void Print(); private: char* name; char* email_address; Date date; }; //end file Person.h 第二部分) 构建一个容器类 Set container. R2.1) 建立一个set的模型PersonSet类, 并且它只能保存Person的对象. R2.2) 这个set应该存储person的地址(指针),以便可以获取原始对象(非拷贝). R2.3) set的存储应该用动态数组来保存Person的指针(用new来创建), 但是set不应该有界限(数组大小), 它们应该在成员进行添加或移除时,适当进行扩展.. R2.4) 成员不按任何特定顺序存储(无排序). R2.5) set允许存储副本(相同对象). R2.6) Add() 函数应该当在添加的时候,并且需要的情况,进行扩展数组大小并且输出一串信息. R2.7) Remove() 函数应该在移除的时候, 并且在需要的情况, 可以进行缩小数组大小并输出一串信息. R2.8) Add() 函数应该带一个引用类型的参数(Person&). R2.9) 迭代应该通过NextElement()函数来提供. R2.10) NextElement()和 RemoveElement() 应该通过引用返回 对于现在我们将去建立sets去只保存Person对象,因此类名是PersonSet. //file PersonSet.h class PersonSet { public: //default constructor allocate appropriate heap storage store elements on //heap array declared like this: new Person*[initial_size]; PersonSet (int initial_size = 4); //store element in the set if the set is full allocate more memory ~ PersonSet (void); public: void Add(Person & element) ; Person & NextElement() ; // 从set中移除最后一个成员 //如果Set空的数据超过一半,释放一些内存 Person & RemoveElement(); // 从Set中的index索引处移除成员 // 如果Set空的数据超过一半, 释放一些内存 Person & RemoveElement( int index ); int Size(); //answer the number of elements in the set. void Print();

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值