欢迎来到学术参考网
当前位置:发表论文>论文发表

ptr论文查重

发布时间:2023-02-24 10:11

ptr论文查重

毕速过
首页智能降重人工降重论文查重
登录注册
首页> 正文
薄荷基格氏试剂的立体选择性反应及薄荷基环氧丙烷的合成
2020-11-29阅读(367)
论文查重 检测结果与学校相同
知网、万方、维普、PaperPass、大雅等官方查重产品,价格全网最优,步骤最简。

智能AI降重 抄袭直接变原创
采用词性处理的AI智能程序设计语言,可一键通过所有查重!100%抄袭的一键降重即可100%原创!

论文摘要
甲基丙烯酸三苯甲基酯(TrMA)螺旋选择性聚合的成功,极大地推动了TrMA类似物螺旋选择性聚合的研究。虽然甲基丙烯酸三苯甲基酯(PTrMA)及其衍生物作为手性固定相已应用于高效液相色谱(HPLC)的手性分离柱上,但是该酯类手性固定相易与HPLC中常用的溶剂甲醇进行酯交换,而使手性柱分离效率下降。为了避免酯交换的问题,我们试图将该种酯类手性固定相替换为聚醚类手性固定相。为此,我们对一些聚醚单体(如:薄荷基取代环氧丙烷)的合成作了初步研究。本文中合成取代环氧化合物的方法有两种:一种是烯烃环氧化法;另一种是金属有机试剂与环氧氯丙烷取代法。本文通过薄荷基氯生成的格氏试剂与象卤代烯烃和二苯甲酮等一类的亲电试剂反应,合成了四种手性薄荷基取代末端烯烃和薄荷基取代甲醇,并进一步对薄荷基氯生成的格氏试剂与亲电试剂反应的立体选择性进行了探讨。发现通过在反应体系中加入Ph3P可以有效提高反应的立体选择性。在有Ph3P存在下,我们合成了3-(1R,2S,5R)-薄荷基-1-丙烯,d.e.(diastereoisomeric excess)值为82%、2-甲基-3-(1S,2S,5R)-薄荷基-1-丙烯,d.e.值为82%、2-(1R,2S,5R)-薄荷基-1-丙烯,d.e.值为100%、α-(1R,2S,5R)-薄荷基苯乙烯,d.e.值为100%、1,1-二苯基-(1R,2S,5R)-薄荷基甲醇,d.e.值为100%。并以过氧化苯甲酸为氧化剂,在(R,R)-Salen Mn(Ⅲ)的存在下对烯烃2-甲基-3-(1S,2S,5R)-薄荷基-1-丙烯进行了不对称环氧化,合成了2-甲基-3-(1S,2S,5R)-薄荷基-1,2-环氧丙烷,d.e.值为60%,这些化合物还未见文献报导。采用薄荷基氯生成的格氏试剂与环氧氯丙烷直接取代法,我们首次合成了(2S)-3-(1R,2S,5R)-薄荷基-1,2-环氧丙烷,在Ph3P存在下立体选择性较好,d.e.值为60%。但该方法得到的环氧单体只能为一取代的。此外,本文还对(2S)-3-[(1R/1S,2S,5R)-薄荷基]-1,2-环氧丙烷进行了用阴离子催化剂和阳离子催化剂开环聚合的初步研究。

论文目录
摘要
Abstract
第一章 文献综述
1.1 前言
1.1.1 手性物质的重要性
1.1.2 手性药物及其研究概况
1.1.3 手性分离技术的发展
1.2 薄荷基衍生物及含薄荷基化合物的合成和应用
1.2.1 在食品,日化等工业中的应用
1.2.2 在手性物质合成中的应用
1.3 取代环氧化合物的合成
1.3.1 烯烃的环氧化
1.3.2 金属有机试剂与环氧氯丙烷取代法
1.4 本课题的意义
第二章 实验部分
2.1 主要试剂和仪器
2.2 薄荷基氯生成的格氏试剂与亲电试剂的反应
2.2.1 由 L-薄荷醇制备(1R,2S,5R)-薄荷基氯
2.2.2 薄荷基氯生成的格氏试剂与卤代烯烃的反应
2.2.3 薄荷基氯生成的格氏试剂与(S)-(+)-环氧氯丙烷的反应
3P 存在下格氏试剂与亲电试剂的立体选择性反应'>2.3 在 Ph3P 存在下格氏试剂与亲电试剂的立体选择性反应
2.3.1 薄荷基氯生成的格氏试剂与卤代烯烃的立体选择性反应
2.3.2 薄荷基氯生成的格氏试剂与二苯甲酮的立体选择性反应
2.3.3 格氏试剂与(S)-(+)-环氧氯丙烷的立体选择性反应
2.4 (2S)-4,4-二苯基-5-(1R,2S,5R)-薄荷基-1,2-环氧戊烷的制备
2.4.1 1,1-二苯乙烯的合成
2.4.2 1,1-二苯基-2-(1S,2S,5R)-薄荷基乙基锂的制备
2.5 Salen Mn(Ⅲ)对2-甲基-3-(1R,2S,5R)-薄荷基-1-丙烯不对称环氧化
2.5.1 本论文中所采用 Salen Mn(Ⅲ)催化剂的结构
2.5.2 过氧苯甲酸的制备
2.5.3 2-甲基-3-(1S,2S,5R)-薄荷基-1,2-环氧丙烷的合成
2.6 新薄荷醇(Neomenthol)衍生物的合成
2.6.1 (1R,2S,5R)-1-乙烯基-2-异丙基-5-甲基-环己醇的合成
2.6.2 (1S,2S,5R)-1 苯基-2-异丙基-5-甲基-环己醇的合成
2.7 (2S)-3-(1R/1S,2S,5R)-薄荷基-1,2-环氧丙烷(MEP)的聚合
2.7.1 聚合反应的一般步骤
第三章 结果与讨论
3.1 (1R,2S,5R)-薄荷基氯的合成
3.2 薄荷基氯生成的格氏试剂与卤代烯烃的反应
3.3 薄荷基氯生成的格氏试剂与(S)-(+)-环氧氯丙烷反应
3.3.1 催化剂用量对产率的影响
3.3.2 薄荷基氯生成的格氏试剂的滴加温度对产率的影响
3P 存在下格氏试剂与亲电试剂的立体选择性反应'>3.4 在 Ph3P 存在下格氏试剂与亲电试剂的立体选择性反应
3.4.1 薄荷基氯生成的格氏试剂与卤代烯烃的立体选择性反应
3.4.2 1,1-二苯基-(1R,2S,5R)-薄荷基甲醇的合成
3.4.3 (2S)-3-(1R,2S,5R)-薄荷基-1,2-环氧丙烷的合成
3.5 新薄荷醇(Neomenthol)衍生物的合成
3.6 聚合反应
结论
参考文献
致谢
附录A 攻读硕士期间发表的论文
附录B 主要中间产物及各目标产物的谱图
相关论文文献
标签:薄荷基论文; 取代末端烯烃论文; 取代环氧丙烷论文; 立体选择性论文; 三苯基膦论文;

薄荷基格氏试剂的立体选择性反应及薄荷基环氧丙烷的合成
下载Doc文档

最新标签最新文章分类导航SiteMap
© 2022 毕速过 版权所有 鄂ICP备12018319号-5 站长统计

PTrhpa医学上是什么?

他应该说是一种一种染色剂吧,一种放射性物质。

求一篇<汽车租赁管理系统>的毕业设计论文VB+ACCESS

汽车租赁系统的c语言,数据结构的语言程序

【问题描述】
汽车租赁公司拥有若干种不同类别的汽车,允许持有相应类别驾照的顾客租赁汽车,按照租赁的汽车类型和租赁的时间进行收费,租赁最长时间不能超过一周;若延迟归还,则按延迟的时间进行罚金处理。
其中,汽车信息包括:汽车编号、类别、收费标准、库存数量、延迟归还罚金标准;(汽车类别分为A、B、C三类,收费标准每天分别为:400、300、200元,延迟归还的罚金标准分别为:每天600、500、400元。)
顾客租赁信息包括:顾客编号、顾客名、驾照类别(A、B、C三类)、租赁的汽车编号、租赁天数、延迟归还的天数)。
主要用到的知识点有:结构体、线性表、函数
【基本要求】 设计一个汽车租赁管理系统,能够完成以下功能:
查询并显示汽车信息、顾客的租赁信息
顾客租赁汽车:首先检查顾客驾照类别,然后查询相应类别的汽车数量,若可租赁,则添加顾客信息、同时修改汽车库存量。
顾客归还汽车:首先检查归还日期并计算费用,然后删除该顾客的租赁信息表、修改汽车库存量。
系统以菜单的方式工作:运行界面可选择要执行的操作是查询?租赁还是归还?
【测试数据】由读者自行设定
编译器是VC6

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define MaxNum 20

typedef struct A{
int No; /*车辆编号*/
char Type; /*车类型*/
int Payment;/*租费*/
int fine; /*罚金*/
struct A *next;/*指向下一个结点*/
} car;

typedef struct B{
int No; /*顾客编号*/
char Name[20]; /*顾客姓名*/
char License; /*执照类别*/
int carNo; /*租凭的车辆编号*/
int Day; /*租的天数*/
int DelayDay;/*延迟的天数*/
struct B *next;
} client;

struct C{/*这个结构体是车辆链表的头结点,A,B,C每种类型有一种*/
char Type;/*车辆型号*/
int avl; /*可用数*/
car *head;/*指向车辆结点*/
} headNode[3]={{'A',MaxNum,NULL},{'B',MaxNum,NULL},{'C',MaxNum,NULL}} ;

client *allClien=NULL;
int pay[3]={400,300,200},fine[3]={600,500,400};
void init();/*初始化*/
int menu();/*简单菜单界面*/
void search();/*查询*/
void carSc(); /*查询车辆*/
void clientSc();/*查询顾客*/
void rent(); /*租车*/
void giveback();/*还车*/
void addCli(client *cli);/*向顾客链表增加顾客*/
client* delCli(int clientNo);/*从顾客链表删除一个顾客*/
void addCar();/*向车辆链表归还车辆*/
car* delCar();/*从车辆链表拿出一辆车*/
void Exit();/*退出*/

void main()
{
init();
while(1)
{
switch(menu())
{
case 1:search();break;
case 2:rent();break;
case 3:giveback();break;
case 4:Exit();
default:;
}
}
}

void init()
{
int i;
car *ptr,*pa=headNode[0].head,*pb=headNode[1].head,*pc=headNode[2].head;
for(i=1;i<=MaxNum;i++)
{
ptr=(car *)malloc(sizeof(car));
ptr->No=100+i;
ptr->Type='A';
ptr->Payment=400;
ptr->fine=600;
pa=ptr;
pa=ptr->next;

ptr=ptr=(car *)malloc(sizeof(car));
ptr->No=200+i;
ptr->Type='B';
ptr->Payment=300;
ptr->fine=500;
pb=ptr;
pb=ptr->next;

ptr=(car *)malloc(sizeof(car));
ptr->No=300+i;
ptr->Type='C';
ptr->Payment=200;
ptr->fine=400;
pc=ptr;
pc=ptr->next;
}
pa=NULL;pb=NULL;pc=NULL;
}

int menu()
{
int choice;

printf("\n\n\n选择服务:1.查询 2.租车 3.归还 4.退出\n");

scanf("%d",&choice);

while(choice!=1&&choice!=2&&choice!=3&&choice!=4)
{
printf("\n输入有误,重新输入:");
scanf("%d",&choice);
}
return choice;
}

void search()
{
int choice;
printf("\n你想查询:1.汽车 2.顾客 3.返回 \n");
scanf("%d",&choice);

while(choice!=1&&choice!=2&&choice!=3)
{
printf("\n输入有误,重新输入:");
scanf("%d",&choice);
}

switch(choice)
{
case 1:carSc(); break;
case 2:clientSc(); break;
case 3: ;
default:;
}
}

void carSc()
{
printf("\n\n所有汽车信息:\n");
printf("\nA类汽车还剩%d辆.\nB类汽车还剩%d辆.\nC类汽车还剩%d辆.",
headNode[0].avl,headNode[1].avl,headNode[2].avl);

}

void clientSc()
{
client *ptr=allClien;
printf("\n\n所有顾客信息:\n");

while(ptr!=NULL)
{ printf("\n\n顾客编号:%d",ptr->No);
printf("\n顾客姓名:%s",ptr->Name);
printf("\n驾照类型:%c",ptr->License);
printf("\n租赁车号:%d",ptr->carNo);
printf("\n租赁天数:%d",ptr->Day);
printf("\n延迟天数:%d",ptr->DelayDay);

ptr=ptr->next;
}
}

void addCli(client *cli)
{
if(allClien)
allClien=cli;
else
{
cli->next=allClien->next;
allClien=cli;
}
}

client* delCli(int clientNo)
{
client *ptr,*prePtr;;
ptr=allClien;
while(ptr!=NULL&&ptr->No!=clientNo)
{ prePtr=ptr;
ptr=ptr->next;
}
if(ptr!=NULL)
{
if(ptr==allClien)
{
allClien=NULL;
}
else
{
prePtr->next=ptr->next;
}
}
return ptr;
}

void rent()
{
char name[20],type,Yes_No;
int num,day,No;
car *carPtr;
client *cli;

printf("\n\n输入执照类型(A/B/C):");
scanf("%c",&type);
while(type!='A'&&type!='B'&&type!='C')
{
printf("输入有误,重新输入:");
scanf("%c",&type);
}
if(type=='A')
num=headNode[0].avl;
else if(type=='B')
num=headNode[1].avl;
else
num=headNode[2].avl;

printf("\n%c类汽车还剩%d辆,是否要租凭(Y/N):",type,num);
scanf("%c",&Yes_No);
while(Yes_No!='Y'&&Yes_No!='N'&&Yes_No!='y'&&Yes_No!='n')
{
printf("Y或N:");
scanf("%c",&Yes_No);
}

/*增加顾客*/
if(Yes_No=='Y'||Yes_No=='y')
{
printf("\n输入你的名字:");
scanf("%s",name);

printf("\n输入你的租赁天数:");
scanf("%d",&day);
}
No=rand()%60+200;
carPtr=delCar(type);

cli=(client *)malloc(sizeof(client));
cli->No=No;
strcpy(cli->Name,name);
cli->License=type;
cli->carNo=carPtr->No;
cli->Day=day;
cli->DelayDay=0;
cli->next=NULL;
addCli(cli);

/*移出一辆车*/
printf("\n你的顾客编号是:%d",No);
printf("\n你所租赁的汽车是%c类车,车号是:%d",type,carPtr->No);
printf("\n你的租赁天数是%d天.",day);

}

void giveback()
{
int No;
long int payment;
client *ptr;
printf("\n\n顾客编号:");
scanf("%d",&No);
if((ptr=delCli(No))==NULL)
printf("\n该顾客不存在,无法归还!");
else
{
switch(ptr->License)
{
case 1:payment=ptr->Day*400+ptr->DelayDay*600;break;
case 2:payment=ptr->Day*300+ptr->DelayDay*500;break;
case 3:payment=ptr->Day*200+ptr->DelayDay*400;break;
default:;
}
printf("\n\n顾客姓名:%s",ptr->Name);
printf("\n驾照类型:%c",ptr->License);
printf("\n租赁车号:%d",ptr->carNo);
printf("\n租赁天数:%d",ptr->Day);
printf("\n延迟天数:%d",ptr->DelayDay);
printf("\n\n所需费用:%ld",payment);

addCar(ptr->License,ptr->carNo);

free(ptr);
}

}

void addCar(char carType,int carNo)
{
car *ptr;
int index=carType-65;
ptr=headNode[index].head;
if(ptr==NULL)
{ptr=(car *)malloc(sizeof(car));
headNode[index].head=ptr;
}
else
{while(ptr->next)
ptr=ptr->next;
ptr->next=(car *)malloc(sizeof(car));
ptr=ptr->next;
}
ptr->No=carNo;
ptr->Type=carType;
ptr->Payment= pay[index];
ptr->fine=fine[index];
ptr->next=NULL;
}

car* delCar(char type)
{
car *rentcar;

switch(type)
{
case 'A':rentcar=headNode[0].head;
headNode[0].head=rentcar->next;
break;
case 'B':rentcar=headNode[1].head;
headNode[1].head=rentcar->next;
break;
case 'C':rentcar=headNode[2].head;
headNode[2].head=rentcar->next;
break;
default:;
}
return rentcar;

}

void Exit()
{

printf("\n欢迎使用.....888888888886666....");
exit(0);
}

上一篇:味精发酵毕业论文

下一篇:受众研究论文