判断一个三位数是否有且仅有两个数字相同c语言代码
时间: 2023-05-21 12:04:08 浏览: 356
以下是判断一个三位数是否有且仅有两个数字相同的 C 语言代码:
```c
#include <stdio.h>
int main() {
int num;
printf("请输入一个三位数:");
scanf("%d", &num);
int a = num / 100; // 百位数
int b = num / 10 % 10; // 十位数
int c = num % 10; // 个位数
if ((a == b && b != c) || (a == c && b != c) || (b == c && a != b)) {
printf("%d 有且仅有两个数字相同\n", num);
} else {
printf("%d 没有且仅有两个数字相同\n", num);
}
return 0;
}
```
注意:这里的判断条件是有且仅有两个数字相同,如果允许三个数字相同也算,则需要修改判断条件。
相关问题
C语言编程输入一个三位整数,判断这个三位数是否有且仅有两个数字相同,如果是的话输出yes,否则输出no
```
#include <stdio.h>
int main() {
int num, a, b, c;
printf("请输入一个三位整数:");
scanf("%d", &num);
a = num / 100; // 百位
b = num / 10 % 10; // 十位
c = num % 10; // 个位
if ((a == b && a != c) || (a == c && a != b) || (b == c && b != a)) {
printf("yes\n");
} else {
printf("no\n");
}
return 0;
}
```
解释:
首先读入一个三位整数,然后通过除法和取余运算分别取出其百位、十位和个位。
接下来,我们用条件语句来判断是否有且仅有两个数字相同。注意,这里使用了逻辑运算符和比较运算符来组合判断条件。如果满足条件,则输出 yes,否则输出 no。
用c语言编写一个程序任意输入一个三位数,如果有且仅有两个数字相同,则输出1,否则输出0。
```c
#include <stdio.h>
int main() {
int num;
printf("请输入一个三位数:");
scanf("%d", &num);
int d1 = num / 100; // 百位数字
int d2 = num % 100 / 10; // 十位数字
int d3 = num % 10; // 个位数字
if (d1 == d2 && d2 != d3 || d1 == d3 && d3 != d2 || d2 == d3 && d3 != d1) {
printf("1\n");
} else {
printf("0\n");
}
return 0;
}
```
在这个程序中,我们首先通过 `scanf` 函数从用户输入中读入一个三位数。然后,我们用取整和取余的方法分别得到该数字的百位、十位和个位数字 `d1`、`d2` 和 `d3`。接下来,我们使用逻辑表达式判断该三位数中是否存在恰好两个数字相同的情况,如果是则输出1,否则输出0。最后返回程序执行成功的信号。