用C语言编写找出三个数组中相同的元素
时间: 2024-05-03 22:21:35 浏览: 12
以下是使用C语言编写找出三个数组中相同元素的程序:
```
#include <stdio.h>
int main() {
int arr1[] = {1, 2, 3, 4, 5};
int arr2[] = {3, 4, 5, 6, 7};
int arr3[] = {5, 6, 7, 8, 9};
int i, j, k;
printf("Common elements in all three arrays are: ");
for (i = 0; i < 5; i++) {
for (j = 0; j < 5; j++) {
for (k = 0; k < 5; k++) {
if (arr1[i] == arr2[j] && arr2[j] == arr3[k]) {
printf("%d ", arr1[i]);
}
}
}
}
return 0;
}
```
这个程序首先定义了三个整数数组arr1,arr2和arr3,每个数组包含5个整数。接下来,程序嵌套了三个循环,每个循环遍历一个数组。在循环内部,程序检查当前三个元素是否相同,如果是,则打印该元素。最后,程序返回0,表示成功结束。
相关问题
用c语言编写程序,从键盘输入三个字符串,分别存入字符数组a、b、C中(数组大小均为50),找出三个字符串中最小的字符串存放到字符数组m中(数组大小为50)并输出。
好的,下面是程序的代码实现:
```c
#include <stdio.h>
#include <string.h>
int main() {
char a[50], b[50], c[50], m[50];
printf("请输入三个字符串:\n");
scanf("%s %s %s", a, b, c);
// 找出最小的字符串
strcpy(m, a);
if (strcmp(m, b) > 0) {
strcpy(m, b);
}
if (strcmp(m, c) > 0) {
strcpy(m, c);
}
printf("最小的字符串是:%s\n", m);
return 0;
}
```
程序首先定义了四个字符数组,分别是存储输入字符串的数组 a、b、c 和存储最小字符串的数组 m。然后通过 scanf 函数从键盘输入三个字符串,并将它们存储到相应的数组中。
接着通过使用 strcmp 函数,将数组 m 初始化为数组 a,并逐一与数组 b 和 c 进行比较,将最小的字符串存储到数组 m 中。
最后,程序输出存储在数组 m 中的最小字符串。
希望能够帮到你,如果还有其他问题,请随时提出。
用c语言编写程序,从键盘输入三个字符串,分别存入字符数组a、b、c中(数组大小均为 50),找出三个字符串中最小的字符串存放到字符数组m中(数组大小为50)并输出。
好的,这是一个简单的字符串比较问题,以下是C语言程序实现:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char a[50], b[50], c[50], m[50];
printf("请输入三个字符串,每个字符串长度不超过50:\n");
scanf("%s%s%s", a, b, c);
strcpy(m, a); // 先将第一个字符串存入m中
if (strcmp(b, m) < 0) // 如果b比m小,则将b存入m
strcpy(m, b);
if (strcmp(c, m) < 0) // 如果c比m小,则将c存入m
strcpy(m, c);
printf("最小的字符串为:%s\n", m);
return 0;
}
```
程序中用到了字符串比较函数 `strcmp()`,当字符串1小于字符串2时,返回值为负数,当两者相等时返回0,当字符串1大于字符串2时,返回值为正数。