由键盘任意输入10个姓名,再输入一个姓名,在此10个姓名中查找此姓名是否存在;如果存在,输出其位置。
时间: 2024-05-08 11:20:23 浏览: 121
以下是一个 Python 代码示例,可以实现你所描述的功能:
```python
names = []
for i in range(10):
name = input("请输入第{}个姓名:".format(i+1))
names.append(name)
search_name = input("请输入要查找的姓名:")
if search_name in names:
position = names.index(search_name)
print("{}在列表中的位置是:{}".format(search_name, position+1))
else:
print("{}不在列表中".format(search_name))
```
代码解释:
1. 首先使用 `for` 循环和 `input` 函数,让用户输入10个姓名,并将这些姓名存入一个列表 `names` 中。
2. 接着使用 `input` 函数让用户输入要查找的姓名,存入变量 `search_name` 中。
3. 使用 `if` 条件语句判断要查找的姓名是否在列表 `names` 中,如果存在,则使用 `index` 函数查找该姓名在列表中的位置,并将其存入变量 `position` 中。
4. 最后输出查找结果,包括要查找的姓名在列表中的位置(如果存在),或者提示要查找的姓名不在列表中。
相关问题
C语言由键盘任意输入10个姓名,再输入一个姓名,在此10个姓名中查找此姓名是否存在;如果存在,输出其位置。
好的,我明白了。这个问题可以通过使用数组和循环来解决。首先,我们定义一个字符串数组来存储10个姓名,然后使用循环从键盘输入这10个姓名。接着,再次使用scanf函数从键盘输入一个姓名。接下来,使用循环遍历这个数组,查找是否存在这个姓名。如果找到了,输出位置。如果没有找到,输出不存在。以下是代码示例:
```
#include <stdio.h>
#include <string.h>
#define MAX_NAME_LENGTH 20
#define MAX_NAMES 10
int main() {
char names[MAX_NAMES][MAX_NAME_LENGTH];
int i, found = 0;
char search[MAX_NAME_LENGTH];
// Input names
for(i = 0; i < MAX_NAMES; i++) {
printf("Enter name %d: ", i+1);
scanf("%s", names[i]);
}
// Search for name
printf("\nEnter name to search: ");
scanf("%s", search);
for(i = 0; i < MAX_NAMES; i++) {
if(strcmp(names[i], search) == 0) {
printf("%s found at position %d\n", search, i+1);
found = 1;
break;
}
}
// If name not found
if(!found) {
printf("%s not found\n", search);
}
return 0;
}
```
由键盘任意输入 10 个姓名,再输入一个姓名,在此 10 个姓名中查找此姓名是否存在; 如果存在,输出其位置c语言代码
可以使用字符串数组和循环遍历的方法实现,示例代码如下:
```c
#include <stdio.h>
#include <string.h>
#define MAX_NAMES 10
#define MAX_NAME_LEN 20
int main()
{
char names[MAX_NAMES][MAX_NAME_LEN];
char target[MAX_NAME_LEN];
int pos = -1;
int i;
// 从键盘输入10个姓名
printf("Please input 10 names:\n");
for (i = 0; i < MAX_NAMES; i++) {
scanf("%s", names[i]);
fflush(stdin);
}
// 再输入一个要查找的姓名
printf("Please input the name to search:\n");
scanf("%s", target);
fflush(stdin);
// 查找姓名是否存在
for (i = 0; i < MAX_NAMES; i++) {
if (strcmp(names[i], target) == 0) {
pos = i;
break;
}
}
// 输出结果
if (pos >= 0) {
printf("%s is at position %d.\n", target, pos + 1);
} else {
printf("%s is not found.\n", target);
}
return 0;
}
```
需要注意的是,这里假设输入的姓名长度不超过20个字符,如果超过20个字符可能会导致程序发生错误。
阅读全文