c语言由键盘任意输入10个姓名存放到二维数组中,再输入一个姓名,在此10个姓名中查找此姓名是否存在,如果存在,输出其位置(允许使用字符串函数strcmp)。
时间: 2023-06-10 08:05:02 浏览: 88
好的,让我思考一下。这个问题可以用以下代码解决:
```
#include <stdio.h>
#include <string.h>
#define NAMES 10
#define LENGTH 20
int main() {
char names[NAMES][LENGTH];
char input[LENGTH];
int i, found = 0;
// 输入10个姓名
printf("请输入%d个姓名:\n", NAMES);
for (i = 0; i < NAMES; ++i) {
scanf("%s", names[i]);
}
// 输入要查找的姓名
printf("请输入要查找的姓名:\n");
scanf("%s", input);
// 查找姓名
for (i = 0; i < NAMES; ++i) {
if (!strcmp(names[i], input)) {
printf("%s在第%d个位置\n", input, i + 1);
found = 1;
break;
}
}
if (!found) {
printf("%s不存在\n", input);
}
return 0;
}
```
以上代码中,我们首先定义了一个10行20列的二维数组`names`,用于存储10个姓名。然后我们使用`scanf`函数输入10个姓名,再输入要查找的姓名。接着我们使用`strcmp`函数在`names`中查找输入的姓名,如果找到了就输出位置,否则输出不存在。最后返回0表示程序成功结束。
阅读全文