用c语言奥运五环的5种颜色的英文单词按一定顺序排列{"red" "blue","yellow","green","black"},定义指针数组并初 始化,输入任意一个颜色的英文单词,从已有颜色中 查找并输出该颜色的位置值,若没有找到,则输 出"NotFound"
时间: 2023-10-01 16:06:34 浏览: 89
以下是代码实现:
```c
#include <stdio.h>
#include <string.h>
int main() {
char* colors[] = {"red", "blue", "yellow", "green", "black"};
char color[10];
int i, pos = -1; // 初始化为-1,表示没有找到
printf("请输入颜色的英文单词:");
scanf("%s", color);
for (i = 0; i < 5; i++) {
if (strcmp(color, colors[i]) == 0) {
pos = i;
break; // 找到了就跳出循环
}
}
if (pos == -1) {
printf("NotFound\n");
} else {
printf("%s 的位置是 %d\n", color, pos);
}
return 0;
}
```
解释一下:
1. 首先定义了一个指针数组 `colors`,其中存放了五种颜色的英文单词。
2. 然后定义了一个字符串 `color`,用来存放用户输入的颜色。
3. 接下来定义了一个整型变量 `pos`,初始化为-1,表示没有找到。
4. 用户输入颜色后,用 `for` 循环遍历 `colors` 数组,查找是否有和用户输入相同的颜色。
5. 如果找到了,就把 `pos` 的值设为当前位置,并跳出循环。
6. 最后根据 `pos` 的值输出结果,如果是-1则说明没有找到,否则输出位置值。
阅读全文