用c++写出输入10个学生的姓名,再输入一个字符串,查找该字符串是否是某个学生的姓名,如果是,则输出是第几个(从1开始)学生的姓名,如果不是,则输出“It is not a name.”
时间: 2023-06-12 19:04:02 浏览: 81
下面是一个参考实现:
```c
#include <stdio.h>
#include <string.h>
#define MAX_NAME_LEN 20
#define MAX_STUDENTS 10
int main() {
char names[MAX_STUDENTS][MAX_NAME_LEN + 1]; // 存储学生姓名的数组
int i;
char search_name[MAX_NAME_LEN + 1]; // 待查找的姓名
int found = 0; // 是否找到待查找的姓名
int found_idx; // 待查找的姓名在数组中的下标
// 输入10个学生的姓名
printf("请输入10个学生的姓名:\n");
for (i = 0; i < MAX_STUDENTS; i++) {
scanf("%s", names[i]);
}
// 输入待查找的姓名
printf("请输入待查找的姓名:\n");
scanf("%s", search_name);
// 在数组中查找待查找的姓名
for (i = 0; i < MAX_STUDENTS; i++) {
if (strcmp(names[i], search_name) == 0) {
found = 1;
found_idx = i;
break;
}
}
// 根据是否找到待查找的姓名输出结果
if (found) {
printf("%s是第%d个学生的姓名。\n", search_name, found_idx + 1);
} else {
printf("It is not a name.\n");
}
return 0;
}
```
阅读全文