华科面向对象程序设计作业二:编写程序,输入N个学生数据,包括学号、姓名、成绩,要求输出这些学生数据并计算平均分

题目描述

编写程序,输入N个学生数据,包括学号、姓名、成绩,要求输
出这些学生数据并计算平均分。要求:
➢设计学生类 CStud , 除了包括 no( 学 号 ) 、 name( 姓 名 ) 和
score(成绩)数据成员外,有两个静态变量sum和num,分别存
放总分和人数
➢有两个普通成员函数setdata()和disp(),分别用于给数据成员
赋值和输出数据成员的值
➢另有一个静态成员函数avg(),它用于计算平均分
➢main()函数中定义对象数组用于存储输入的学生数据

代码

#include "CStud.h"
#include <string.h>
#include <iostream>
using namespace std;
class CStud
{
private:
	char no[10];//学号
	char name[10];//姓名
	double score;//成绩
	static double sum;//总分
	static int num;//总人数
public:
	//给数据成员赋值
	void setdata(char* _no, char* _name, double _score) {
		strcpy(no, _no);
		strcpy(name, _name);
		score = _score;
		sum += score;
		num++;
	}
	//输出数据成员的值 
	void disp() {
		cout << "学号:" << no  << " 姓名:" << name  << " 分数:" << score << endl;
	}
	//计算平均分
	static double avg() {
		return sum / num;
	}

};

double CStud::sum = 0;
int CStud::num = 0;

int main() {
	int n;
	cout << "请输入学生人数" << endl;
	cin >> n;
	CStud* stu = new CStud[n];
	cout << "请依次输入学生的学号、姓名和分数" << endl;
	int i;
	for (i = 0; i < n; i++) {
		char tno[10];
		char tname[10];
		double tscore;
		cin >> tno;
		cin >> tname;
		cin >> tscore;
		stu[i].setdata(tno, tname, tscore);
	}
	for (i = 0; i < n; i++) {
		stu[i].disp();
	}
	double a = CStud::avg();
	cout << "平均分:" << a << endl;
}

注意事项

如果vs2019报错

C4996 ‘strcpy’: This function or variable may be unsafe. Consider using

则在c++预编译器下预编译定义下,新加一条

_CRT_SECURE_NO_WARNINGS
在这里插入图片描述
在这里插入图片描述

  • 2
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
华科c语言基于DPLL的SAT求解器程序是一个用来求解布尔可满足性问题的程序。它采用了DPLL算法,即Davis–Putnam–Logemann–Loveland算法,来解决SAT问题。 DPLL算法是一种递归回溯的算法,它通过对布尔表达式进行逻辑运算和变量赋值,来推导出是否存在一种赋值使得布尔表达式为真。算法的核心思想是选择一个未赋值的变量,为其赋值,然后通过简化布尔表达式,再递归调用自身来搜索其他变量的赋值,直到找到满足条件的赋值或者确定无解为止。 华科c语言基于DPLL的SAT求解器程序通过读取输入的CNF格式的布尔表达式,并将其转化为内部数据结构进行处理。程序首先对输入的表达式进行预处理,包括消解、子句移除和单位子句传播等操作,以简化表达式。然后,程序根据DPLL算法的步骤进行变量选择、赋值和递归调用等操作,直到找到满足条件的赋值或者确定无解为止。 程序输出结果可能是"满足"或"不满足",表示是否存在一种赋值使得布尔表达式为真。如果找到满足条件的赋值,程序还可以输出具体的赋值结果,即使得表达式为真的各个变量的取值。 华科c语言基于DPLL的SAT求解器程序的实现需要熟悉C语言的语法和数据结构,并具备一定的逻辑推理和算法设计能力。此外,对于大规模的SAT问题,可能需要优化算法和数据结构,以提高求解速度和节省内存空间。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值