题目描述
希望大神们可以给出代码啊
题目来源及自己的思路
一个查找函数,用到strcmp函数比较
相关代码
// 请把代码文本粘贴到下方(请勿用图片代替代码)
这是定义的结构体
typedef struct snode
{
int No; //学号
char Name[20]; //姓名
char Gender[5]; //性别
int Cnt; //所选课程数
LNode *cj; //成绩
char brithday[20];//生日
double Avg; //平均成绩
char party[6]; //是否党员
char phoneNo[15];//手机号码
char addr[20]; //家庭住址
}SNode;
void Search(SNode *a,int Count){
char r[20];
strcpy(r,"1");
if(Count==0)
cout<<"信息为空,请先创建信息"<<endl;
else{
int sel;
do{
system("CLS");
menu2();
cin>>sel;
system("CLS");
if(sel==1) do{
int flag=0;
cout<<"请输入学号,返回上层请按0"<<endl;
cin>>r;
for(int j=0;j<Count;j++)
if(strcmp(a[j].No,r)==0){
cout<<a[j].No<<" "<<
a[j].name<<" "<<
a[j].gender<<" "<<
a[j].brithday<<" "<<
a[j].phoneNo<<" "<<
a[j].party<<" "<<
a[j].addr<<endl;
flag=1;}
if(!flag)
cout<<"查无此人,请重新输入"<<endl;
}while(strcmp(r,"0")!=0);
else if(sel==2)
do{
strcpy(r,"1");
int flag=0;
cout<<"请输入姓名,返回上层请按0"<<endl;
cin>>r;
for(int j=0;j<Count;j++)
if(strcmp(a[j].name,r)==0){
cout<<a[j].No<<" "<<
a[j].name<<" "<<
a[j].gender<<" "<<
a[j].brithday<<" "<<
a[j].phoneNo<<" "<<
a[j].party<<" "<<
a[j].addr<<endl;
flag=1;}
if(!flag)
cout<<"查无此人,请重新输入"<<endl;
}while(strcmp(r,"0")!=0);
else if(a==0)
break;
else{
cout<<"请重新选择"<<endl;
system("pause"); }
}while(1);}
break;
}
你期待的结果是什么?实际看到的错误信息又是什么?
主要是那个strcmp的错误
下面是函数,
{
}
这里是使用例子:
char tmp_str[20] = {0};
int tmp_num = 10;
me_uint64_to_str(num, 10, tmp_str, strlen(tmp_str));
cout << "result" << tmp_str << endl;