输入一个三位数,如果有且仅有两个数位相同,则输出1,否则输出0,c语言
时间: 2024-12-17 12:24:42 浏览: 7
在C语言中,你可以通过遍历输入的三位数,并检查每一位是否与其他两位都相等来实现这个功能。下面是一个简单的函数示例:
```c
#include <stdio.h>
int check_unique_digit(int num) {
int first_digit = num / 100; // 取百位
int second_digit = (num % 100) / 10; // 取十位
int third_digit = num % 10; // 取个位
if (first_digit == second_digit && second_digit != third_digit) {
return 1;
} else if (second_digit == third_digit && second_digit != first_digit) {
return 1;
} else if (third_digit == first_digit && third_digit != second_digit) {
return 1;
}
// 如果没有满足条件,返回0
return 0;
}
int main() {
int input;
printf("请输入一个三位数: ");
scanf("%d", &input);
int result = check_unique_digit(input);
if (result) {
printf("输出: 1\n");
} else {
printf("输出: 0\n");
}
return 0;
}
```
在这个程序中,`check_unique_digit` 函数首先分别提取出数字的每一位,然后检查它们之间的关系。如果只发现有两个数位相等,函数会返回1;否则返回0。
阅读全文