问题 填空题

(10分)(2011·锦州高一检测)目前世界上60%的镁是从海水提取的。海水提镁的主要流程如下:

请回答下列问题:

(1)从离子反应的角度思考,在海水中加入石灰乳的作用是________,写出在沉淀池发生反应的离子方程式 ________________________________________________________.

(2)石灰乳是生石灰与水形成的化合物,从充分利用海洋化学资源,提高经济效益的角度考虑,生产生石灰的主要原料来源于海洋中的________________________。

(3)操作A是________,操作B是________。

(4)加入的足量试剂a是________(填化学式)。

(5)无水MgCl2在熔融状态下,通电后会产生Mg和Cl2,该反应的化学方程式为______________________________________________________________________。

从考虑成本和废物循环利用的角度,副产物氯气可以用于

__________________________________________________________________。

答案

(1)沉淀Mg2[或使Mg2形成Mg(OH)2沉淀] Mg2+2OH===Mg(OH)2↓             

(2)贝壳(或牡蛎壳等)   (3)过滤 加热浓缩(或蒸发结晶)

(4)HCl              (5)MgCl2(熔融)Mg+Cl2↑ 制盐酸,循环使用

(1)石灰乳中含有OH,能结合镁离子生成氢氧化镁沉淀,方程式为Mg2+2OH===Mg(OH)2↓。

(2)由于贝壳的主要成分就是碳酸钙,因此可以利用海洋中的贝壳等。

(3)要得到沉淀,应该通过过滤;氯化镁易溶于水,因此要得到氯化镁晶体,应该是加热浓缩(或蒸发结晶)。

(4)氢氧化镁要转化为氯化镁,需要加入盐酸。

(5)镁是活泼的金属,通过电解法冶炼,方程式为MgCl2(熔融)Mg+Cl2↑;氯气可以制取盐酸,循环使用。

填空题

阅读下列说明和C++代码,填充代码中的空缺。
[说明]
某学校在学生毕业时要求对其成绩进行综合评定,学生的综合成绩(GPA)由其课程加权平均成绩(Wg)与附加分(Ag)构成,即GPA=Wg+Ag。
设一个学生共修了n门课程,则其加权平均成绩(Wg)定义如下:


其中,gradei、Ci分别表示该学生笫i门课程的百分制成绩及学分。
学生可以通过参加社会活动或学科竞赛获得附加分(Ag)。学生参加社会活动所得的活动分(Apoints)是直接给出的,而竞赛分(Awards)则由下式计算(一个学生最多可参加m项学科竞赛):


其中,li和si分别表示学生所参加学科竞赛的级别和成绩。
对于社会活动和学科竞赛都不参加的学生,其附加分按活动分为0计算。
下面的程序实现计算学生综合成绩的功能,每个学生的基本信息由抽象类Student描述,包括学号(stuNo)、姓名(name)、课程成绩学分(grades)和综合成绩(GPA)等,参加社会活动的学生由类ActStudent描述,其活动分由Apoints表示,参加学科竞赛的学生由类CmpStudent描述,其各项竞赛的成绩信息由awards表示。
[C++代码]
#include <string>
#include <iostream>
us ing namespace std;
const int n=5; /*课程数*/
const int m=2;/*竞赛项目数*/
class Student
protected:
int stuNo; string name;
double GPA; /*综合成绩*/
int(*grades)[2]; /*各门课程成绩和学分*/
public:
Student(const int stuNe, const string &name, int grades[][2])
this->stuNo=stuNo;this->name=name;this->grades=grades;

Virtual~Student()
int getstuNo() /*实现略*/
string getName() /*实现略*/
______;
double computeWg()
int totalGrades=0,totalCredits=0;
for(int i=0;i<N;i++)
totalGrades+=grades[i][0]*grades[i][1]; totalGredits+=grades[i][1];

return GPA=(double)totalGrades/totalCredits;

;
class ActStudent; public Student
int Apoints;
public;
ActStudent(const int stuNo,const string &name,int gs[][2],int Apoints)
:______
this->Apoints=Apoints;

double getGPA()(return GPA=______;
;
class CmpStudent:public Student
private:
int(*awards)[2];
public:
CmpStudent(const int stuNo, const string &name, int gs[][2], int awards[][2])
:______ (this->award=award;
double getGPA()
int Awards=0;
for(int i=0;i<M;i++)
Awards+=awards[i][0]*awards[i][1];

Return GPA=______;

;
int main()
//以计算3个学生的综合成绩为例进行测试
int g1[][2]=((80,3),(90,2),(95,3),(85,4),(86,3)),
g2[][2]=((60,3),(60,2),(60,3),(60,4),(65,3)),
g3[][2]=((80,3),(90,2),(70,3),(65,4),(75,3));//课程成绩
int c3[][2]=((2,3),(3,3)); //竞赛成绩
Student*Student[3]=
new ActStudent(101,"John",g1,3), //3为活动分
new ActStudent(102,"Zhang",g2,0),
new ActStudent(103,"Li",g3,C3),
;
//输出每个学生的综合成绩
for(int i=0;i<3;i++)
Cout<<______<<endl;
delete*student;
return 0;

单项选择题 A型题