📄 cwq.cpp
字号:
#include <iostream>
#include <string>
#define NULL 0
#define LEN sizeof(struct student)
using namespace std;
struct student
{
char name[10];
char number[15];
struct student * next;
};
int n;
struct student * xuesheng(void)
{
struct student * p1, * p2, * head;
n=0;
p1=p2=(struct student * )malloc(LEN);
cout<<"开始输入记录"<<endl;
cout<<"请输入姓名"<<endl;
cin>>p1->name;
cout<<"请输入学号"<<endl;
cin>>p1->number;
head=NULL;
while(p1->name!=0)
{
n=n+1;
if(n==1) head=p1;
else p2->next=p1;
p2=p1;
p1=(struct student * )malloc(LEN);
cout<<"请输入姓名,以 ! 退出"<<endl;
cin>>p1->name;
if(strcmp(p1->name,"!")==0) break;
cout<<"请输入学号"<<endl;
cin>>p1->number;
}
p2->next=NULL;
return head;
}
struct student * search(struct student * head)
{
struct student * p1;
char nam[10];
char nam1[10]="";
int t=0;
p1=head;
cout<<endl;
cout<<" 请输入要查询的信息"<<endl;
cin>>nam;
while(p1!=NULL)
{
strncpy(nam1,p1->name,strlen(nam)); //按输入姓名字符数截取每个姓名,和输入姓名比较
if(strcmp(nam,nam1)==0)
{
cout<<" 学号: "<<p1->number<<" 姓名: "<<p1->name<<endl;
t++;
p1=p1->next;
}
else
p1=p1->next;
}
cout<<" 共搜索到 "<<t<<" 条信息"<<endl;
return head;
}
void main()
{
struct student * h;
while(1)
{
cout<<endl;
cout<<" 1.增加记录"<<endl;
cout<<" 2.查找记录"<<endl;
cout<<" 3.退出"<<endl;
int choose;
cin>>choose;
switch(choose)
{case 1:
h=xuesheng();
break;
case 2:
search(h);
break;
case 3:
exit(0);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -