程序:检查数中重复出现的数字。 用户输入数后,程序显示信息Repeated digit或No Repeated digit: Enter a number: 28212 Repeated digit 数28212有一个重复的数字(2),而数9357则没有。 **输入格式要求:"%ld" 提示信息:"Enter a number :" **输出格式要求:"Repeated digit\n\n" "No Repeated digit\n\n"
时间: 2023-07-07 09:33:43 浏览: 116
重复两个斯塔克尔伯格领导者和追随者的颤抖手完美-研究论文
好的,这是一个简单的 C 语言程序,可以实现您的要求:
```c
#include <stdio.h>
int main() {
long n;
printf("Enter a number: ");
scanf("%ld", &n);
int digits[10] = {0};
int repeated = 0;
while (n > 0) {
int digit = n % 10;
digits[digit]++;
n /= 10;
}
for (int i = 0; i < 10; i++) {
if (digits[i] > 1) {
repeated = 1;
break;
}
}
if (repeated) {
printf("Repeated digit\n\n");
} else {
printf("No Repeated digit\n\n");
}
return 0;
}
```
程序的具体思路是:
1. 读入一个长整型数 `n`;
2. 构建一个长度为 10 的数组 `digits`,用来记录数中每个数字出现的次数;
3. 遍历数 `n` 的每个数字,将其出现次数加 1;
4. 遍历数组 `digits`,如果有某个数字出现次数超过 1,说明有重复数字,将 `repeated` 标记为 1;
5. 根据 `repeated` 的值输出相应的信息。
程序的输出结果示例如下:
```
Enter a number: 28212
Repeated digit
Enter a number: 9357
No Repeated digit
```
希望能够帮助您解决问题。
阅读全文