解题思路:直接按题目意思写代码
注意事项:
参考代码:
#include<iostream>
#include<cstring>
using namespace std;
struct tstudent
{
char name[21];
char num[21];
char sex;
};
void readdata(tstudent student[], int n)
{
// 输入N个学生的信息
for(int i=0; i<n; i++)
cin>>student[i].name>>student[i].num>>student[i].sex;
}
int findstudent(tstudent student[], int n, char* data)
{
if (data == NULL)
return -1;
//判断是否有某个学生的学号或名字等于data,如果有,函数返回该学生在student数组中的序号,否则返回-1
for(int i=0; i<n; i++)
{
if(strcmp(student[i].name,data)==0||strcmp(student[i].num,data)==0)
return i;
}
return -1;
}
void solve(tstudent student[], int n, int m)
{
char x[21], y[21];
for (int i=0; i< m; i++)
{
//输入两个人的信息X、Y。通过调用findstudent函数判断这两个人能否成为舞伴
cin>>x>>y;
int x1=findstudent(student,n,x),y1=findstudent(student,n,y);
if(x1>-1&&y1>-1&&x1!=y1&&student[x1].sex!=student[y1].sex)
cout<<"Y"<<endl;
else
cout<<"N"<<endl;
}
}
int main()
{
int n, m;
tstudent student[1010];
cin>> n;
readdata(student, n);
cin>> m;
solve(student, n, m);
}
/**
4
John 10 M
Jack 11 M
Kate 20 F
Jim 21 M
3
John 11
20 Jack
Jim Jack
*/
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题6.3 (Java代码)浏览:695 |
2005年春浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:530 |
C语言训练-求函数值 (C语言代码)浏览:976 |
这可能是一个假的冒泡法浏览:1071 |
C语言程序设计教程(第三版)课后习题6.4 (C语言代码)浏览:781 |
小明A+B (C语言代码)浏览:1317 |
C语言训练-求函数值 (C语言代码)浏览:600 |
C语言程序设计教程(第三版)课后习题10.4 (C语言代码)浏览:943 |
数对 (C语言代码)浏览:762 |
整数平均值 (C语言代码)浏览:856 |