题目内容

可以激发罪犯积极改造动机的是 【 】

A. 运用累进处遇
B. 利用反馈
C. 利用迁移
D. 狠抓反复
E. 抓住时机

查看答案
更多问题

//“链表与系统开发示例//跟踪管理系统开发//要对某人某天所到之处进行跟踪,记录其按时间先后顺序所到过的地名、时间、相关事务等信息,试设计一个系统完成此任务。//请选择相应位置的正确内容#include #include #include struct poi_info //定义节点所对应的结构体类型{char name[31];//数据域,存放地名char dateTime[35];//数据域,存放日期时间char others[81];//数据域,存放发生的相关事务的记录struct poi_info *next;//指针域,存放后一节点地址};//要有";"//按顺序录入地名,创建单链表void input(struct poi_info *head){int sfjx;struct poi_info *q,*p;q=head;//q指向链表头节点while(q->next!=NULL)//q所指节点不是末节点[A请选择]//即q指向后一个节点do{//给新节点分配空间p=(struct poi_info *)malloc(sizeof(struct poi_info));if(p==NULL)//分配不成功printf("\n空间分配不成功,无法进行记录!\n");else{printf("\n请输入要记录的地名:");scanf("%s",p->name);//读入地名并存入新节点数据域fflush(stdin);//清空输入缓冲区printf("\n请输入日期时间:");scanf("%s",p->dateTime);//读入日期时间并存入新节点数据域fflush(stdin);//清空输入缓冲区printf("\n请输入相关事务:");scanf("%s",p->others);//读入相关事务并存入新节点数据域fflush(stdin);//清空输入缓冲区q->next=p;//将新节点连到当前链表末尾q=p;//即让q指向新链表的末节点,以方便后续节点的添加}printf("\n是否继续(0-结束其它-继续):");scanf("%d",&sfjx);//输入用户选择,决定是否继续}while(sfjx!=0); //直到用户决定结束为止q->next=NULL;//将新链表末节点的指针域置为NULL}//按从前往后顺序输出所有地名void output(struct poi_info *head){struct poi_info *p;[B请选择]printf("\n以下为输出结果:\n");while(p!=NULL){printf("%-s\n%-s\n%-s\n------\n",p->name,p->dateTime,p->others);p=p->next;}}//查询,判断是否到过某地,若到过的话判断是此人所到过的第几个地方void search(struct poi_info *head){int sfjx,count;struct poi_info *p;char dcdm[31];do{p=head->next;//p指向链表第二个节点,即存放有效数据的第一个节点count=1;//计数器赋初值为1printf("\n请输入要查询的地名:");scanf("%s",dcdm);//p!=NULL表示没有找完,strcmp(dcdm,p->name)!=0表示没找到while((p!=NULL)&&(strcmp(dcdm,p->name)!=0)){p=p->next;//p指向后一个节点count++;//计数器增1}if([C请选择])//p==NULL表示没找到printf("\n此人没有到过以下地方:%s\n",dcdm);else{printf("%-s\n%-s\n%-s\n------\n",p->name,p->dateTime,p->others);printf("是此人到过的第%d站。\n",count);}printf("\n是否继续(0-结束其它-继续):");scanf("%d",&sfjx);//输入用户选择,决定是否继续}while(sfjx!=0);}//从链表中删除指定的某些地方void del(struct poi_info *head){int sfjx=1;struct poi_info *p,*q;char dcdm[31];do{[D请选择]//q指向头节点p=head->next;//p指向链表第二个节点printf("\n请输入要删除的地名:");scanf("%s",dcdm);while((p!=NULL)&&(strcmp(dcdm,p->name)!=0)){q=p;//q指向后一个节点,可改为:q=q->next;p=p->next;//p指向后一个节点}if(p==NULL)printf("\n此人没有到过以下地方:%s\n",dcdm);else{[E请选择]//将待删节点的前后两节点连起来free(p);//删除相应节点printf("\n已成功删除!\n");}printf("\n是否继续(0-结束其它-继续):");scanf("%d",&sfjx);}while(sfjx!=0);}//往某个地名前插入一个地名void insert(struct poi_info *head){int sfjx=1;struct poi_info *p,*q,*x;char dcdm[31];do{q=head;//q指向头节点p=head->next;//p指向链表第二个节点printf("\n请输入用于指示位置的地名:");scanf("%s",dcdm);while((p!=NULL)&&(strcmp(dcdm,p->name)!=0)){[F请选择]p=p->next;}if(p==NULL)printf("\n此人没有到过以下地方:%s,无法确定插入位置!\n",dcdm);else{//给新节点分配空间x=(struct poi_info *)malloc(sizeof(struct poi_info));if(x==NULL)printf("\n空间分配不成功,无法进行记录!\n");else{printf("\n请输入要记录的地名:");scanf("%s",p->name);//读入地名并存入新节点数据域fflush(stdin);//清空输入缓冲区printf("\n请输入日期时间:");scanf("%s",p->dateTime);//读入日期时间并存入新节点数据域fflush(stdin);//清空输入缓冲区printf("\n请输入相关事务:");scanf("%s",p->others);//读入相关事务并存入新节点数据域fflush(stdin);//清空输入缓冲区//以下两条语句用于将新节点插入至相应位置x->next=p;//新节点插到位置节点之前q->next=x;//新节点连到位置节点的前一节点之后printf("\n已成功插入!\n");}}printf("\n是否继续(0-结束其它-继续):");scanf("%d",&sfjx);}while(sfjx!=0);}//修改某一指定的地名void modify(struct poi_info *head){int sfjx=1;struct poi_info *p;char dcdm[31];do{p=head->next;printf("\n请输入要修改的地名:");scanf("%s",dcdm);while((p!=NULL)&&(strcmp(dcdm,p->name)!=0))p=p->next;if(p==NULL)printf("\n此人没有到过以下地方:%s\n",dcdm);else{printf("\n原信息为:\n");printf("%-s\n%-s\n%-s\n------\n",p->name,p->dateTime,p->others);printf("\n请重新输入相关信息:");printf("\n请输入要记录的地名:");scanf("%s",p->name);//读入地名并存入新节点数据域fflush(stdin);//清空输入缓冲区printf("\n请输入日期时间:");scanf("%s",p->dateTime);//读入日期时间并存入新节点数据域fflush(stdin);//清空输入缓冲区printf("\n请输入相关事务:");scanf("%s",p->others);//读入相关事务并存入新节点数据域fflush(stdin);//清空输入缓冲区printf("\n已成功修改!\n");}printf("\n是否继续(0-结束其它-继续):");[G请选择]}while(sfjx!=0);}//按顺序保存void save(struct poi_info *head){struct poi_info *p;FILE *fp;fp=fopen("data.txt","w");if(fp==NULL)printf("文件无法打开,数据不能保存!\n");else{p=head->next;while(p!=NULL){fprintf(fp,"%-s\n%-s\n%-s\n",p->name,p->dateTime,p->others);p=p->next;}fclose(fp);printf("已成功保存!\n");}}//按顺序读取,添加到已有链表的末尾void read(struct poi_info *head){FILE *fp;char name[31];char dateTime[25];char others[81];struct poi_info *q,*p;fp=fopen("data.txt","r");if(fp==NULL)printf("文件无法打开,数据不能读取!\n");else{//以下代码找到当前链表的末节点q=head;while(q->next!=NULL)q=q->next;fscanf(fp,"%s%s%s",name,dateTime,others);while([H请选择])//文件中还有未读数据{p=(struct poi_info *)malloc(sizeof(struct poi_info));if(p==NULL)printf("\n空间分配不成功,无法进行记录!\n");else{strcpy(p->name,name);strcpy(p->dateTime,dateTime);strcpy(p->others,others);q->next=p;q=p;}fscanf(fp,"%s%s%s",name,dateTime,others);}fclose(fp);//关闭文件printf("读取完成!\n");}q->next=NULL;//末节点指针域置为NULL}//释放链表空间,使之成为一个空链表void release(struct poi_info *head){struct poi_info *p,*q;//p指向第二个节点,即待释放部分的首节点,从此节点开始逐个释放p=head->next;while(p!=NULL){q=p->next;//q指向当前节点的后一个节点[I请选择]//释放当前节点p=q;//p重新指向链表待释放部分的首节点}//将链表首节点的指针域置为NULL,该节点此时也是末节点[J请选择]printf("\n空间已正常释放!\n");}int main(){int xz=1;struct poi_info *head;//给头节点分配空间head=(struct poi_info *)malloc(sizeof(struct poi_info));if(head==NULL)printf("\n空间分配不成功!\n");else{head->next=NULL;//将头节点指针域置为NULL,完成链表初始化while(xz!=0){system("cls");//清除屏幕printf("\n 欢迎使用民用跟踪记录系统!\n\n\n");printf("1-添加 2-输出 3-查询 4-删除 5-修改 6-插入 7-保存 8-读取 9-清空 0-退出\n");//显示文本形式菜单printf("\n请选择:");scanf("%d",&xz); //输入菜单选项switch(xz)//根据菜单选项的不同调用不同函数{case 1:input(head);break;case 2:output(head);break;case 3:search(head);break;case 4:del(head);break;case 5:modify(head);break;case 6:insert(head);break;case 7:save(head);break;case 8:read(head);break;case 9:release(head);break;case 0:release(head);free(head);//释放头节点空间printf("谢谢使用!\n");break;}system("pause");}}return 0;}

.由一组数据的最大值、最小值、中位数和两个四分位数5个特征值绘制而成的,反映原始数据分布的图形,称为()

A. 直方图
B. 箱线图
C. 茎叶图
D. 雷达图

箱线图由哪些特征值绘制而成()

A. 最大值
B. 最小值
C. 中位数
D. 两个四分位数
E. 均值

与直方图相比,茎叶图()。

A. 没有保留原始数据的信息
B. 保留了原始数据的信息
C. 适合描述小批量数据的分布
D. 不能有效展示数据的分布
E. 更适合描述大批量数据的分布

答案查题题库