.exe已停止工作
#include <stdio.h>
#include"string.h"
#include"stdlib.h"
#include"iostream.h"
typedef struct{
char Sno[8];
char Sname[20];
char Ssex[4];
char Spost[10];
}DataType;

typedef struct Node
{ DataType data;
struct Node *next;
}SLNode;
void ListInitiate(SLNode *head)
{ head = (SLNode *)malloc(sizeof(SLNode));
head->next = NULL;
}
int ListLength(SLNode *head)
{
SLNode *p = head;
int size = 0;
while(p->next != NULL)
{ p = p->next;
size ++;
}
return size;
}
int ListInsert(SLNode *head, int i, DataType x)
{ SLNode *p, *q; int j;
p = head; j = -1;
while(p->next != NULL && j < i - 1)
{ p = p->next; j++;
}
if(j != i - 1)
{ printf("插入位置参数错!");
return 0;
}
q = (SLNode *)malloc(sizeof(SLNode));
q->data = x; q->next = p->next; p->next = q;
return 1;
}
int ListDelete(SLNode *head, int i, DataType *x)
{ SLNode *p, *s; int j;
p = head; j = -1;
while(p->next != NULL && p->next->next!= NULL && j < i - 1)
{ p = p->next; j++;
}
if(j != i - 1)
{ printf("插入位置参数错!");
return 0;
}
s = p->next; *x = s->data; p->next = p->next->next;
free(s);
return 1;
}
int ListGet(SLNode *head, int i, DataType *x)
{ SLNode *p;
int j;
p = head; j = -1;
while(p->next != NULL && j < i)
{ p = p->next; j++;
}
if(j != i)
{ printf("取元素位置参数错!");
return 0;
}
*x = p->data;
return 1;
}
void Destroy(SLNode **head)
{ SLNode *p, *p1;
p = *head;
while(p != NULL)
{ p1 = p; p = p->next;
free(p1);
}
*head = NULL;
}
void StaffInsert(SLNode *L,DataType S){
int a;
printf("请输入插入位置:");
scanf("%d",&a);
printf("\n");
printf("员工号:");
cin>>S.Sno;
printf("员工姓名:");
cin>>S.Sname;
printf("员工性别:");
cin>>S.Ssex;
printf("员工职位:");
cin>>S.Spost;
ListInsert(L, a-1, S);
printf("插入成功!");
}
void StaffDelete(SLNode *L){
DataType x;
int a;
printf("请输入删除位置:");
scanf("%d",&a);
ListDelete(L,a-1,&x);
printf("删除成功!");
}
void StaffP(DataType x){
printf("%s\t",x.Sno);
printf("%s\t",x.Sname);
printf("%s\t",x.Ssex);
printf("%s\t",x.Spost);
printf("\n");
}
void StaffGet(SLNode *head){
DataType x;
int a;
int b;
int c=0;
SLNode *pWork = head->next;
printf("1.查询全部\n");
printf("2.查询单个\n");
printf("请输入选择:");
scanf("%d",&b);
switch(b){
case 1: {
printf("学号:\t");
printf("姓名:\t");
printf("性别:\t");
printf("年龄:\n");
while (pWork != NULL ){
x=pWork->data;
StaffP(x);
pWork = pWork->next;
}
break;}
case 2:printf("请输入查询位置:");
scanf("%d",&a);
printf("学号:\t");
printf("姓名:\t");
printf("性别:\t");
printf("年龄:\n");
ListGet(head,a-1,&x);
StaffP(x);
break;
default:break;
}
}
void first(SLNode *L,DataType S){
int num=0;
strcpy(S.Sno,"001");
strcpy(S.Sname,"张珊");
strcpy(S.Ssex,"女");
strcpy(S.Spost,"文员");
ListInsert(L,num,S);
num++;
strcpy(S.Sno,"002");
strcpy(S.Sname,"李思");
strcpy(S.Ssex,"女");
strcpy(S.Spost,"销售员");
ListInsert(L,num,S);
num++;
strcpy(S.Sno,"004");
strcpy(S.Sname,"王强");
strcpy(S.Ssex,"男");
strcpy(S.Spost,"经理");
ListInsert(L,num,S);
num++;
strcpy(S.Sno,"005");
strcpy(S.Sname,"赵括");
strcpy(S.Ssex,"男");
strcpy(S.Spost,"秘书");
ListInsert(L,num,S);
num++;
strcpy(S.Sno,"006");
strcpy(S.Sname,"刘刚");
strcpy(S.Ssex,"男");
strcpy(S.Spost,"文员");
ListInsert(L,num,S);
num++;
}
void main(){
SLNode L;
ListInitiate(&L);
DataType S;
int a;
first(&L,S);
while(1){
printf("\n-----------------\n");
printf("1.插入数据\n");
printf("2.删除数据\n");
printf("3.查询数据\n");
printf("4.退出\n");
printf("-----------------\n");
printf("请输入选择:");
scanf("%d",&a);
if(a==4)break;
switch(a){
case 1:StaffInsert(&L,S); break;
case 2:StaffDelete(&L); break;
case 3:StaffGet(&L);break;
}
}
}
...全文
相关推荐
csc.exe已停止工作
csc.exe已停止工作,很多时候需要重启电脑才能解决,很头疼,根据文档内容操作瞬间搞定。
解决adb.exe以停止工作问题,亲测可用
解决adb.exe以停止工作问题,亲测可用 1,找到andriod开发环境路径:\sdk\platform-tools 路径 2,把压缩包的内容替换到 \sdk\platform-tools 路径下
android错误 aapt.exe已停止工作的解决方法
主要介绍了android错误 aapt.exe已停止工作的解决方法,需要的朋友可以参考下
解决PyCharm的Python.exe已经停止工作的问题
今天遇到一个问题,就是用pycharm运行python程序,老是会出现Python.exe已停止的对话框。后来我到处在网上搜原因,网上给出的解决办法也有很多种。最终帮我解决问题的就是:打开网络防火墙,把相应的Python.exe,pythonw.exe还有sqlservr.exe添加到防火墙允许程序列表就可以了。 真的是山重水复疑无路,柳暗花明又一村。 怎么打开防火墙:控制面板–Windows防火墙–允许程序或者功能通过防火墙–允许运行另一程序 找到你需要允许程序的路径,添加进去就可以啦。 耗费我好长时间,幸好搞定了,开心。 以上这篇解决PyCharm的Python.exe已经停止工作的问题就
安装oracle时报错OUI.exe已停止工作
安装oracle时报错 OUI.exe已停止工作 处理方法


