C语言编写程序,输入一串数字,展示出这一串数字中是否有重复的数字,如果有,展示出重复数字的个数;如果没有,输出-1并且退出程序。
时间: 2024-01-13 19:02:37 浏览: 29
```c
#include <stdio.h>
int main() {
int count[10] = {0}; // 计数数组,用来统计每个数字出现的次数
char num[100]; // 存储输入的数字串
printf("请输入数字串:");
scanf("%s", num);
int i = 0;
while (num[i] != '\0') {
int n = num[i] - '0'; // 将字符转换成数字
count[n]++;
i++;
}
int flag = 0; // 标记是否有重复数字
int repeat = 0; // 记录重复数字的个数
for (i = 0; i < 10; i++) {
if (count[i] > 1) {
flag = 1;
repeat++;
}
}
if (flag) {
printf("重复数字的个数为:%d\n", repeat);
} else {
printf("-1\n");
}
return 0;
}
```
相关问题
C语言编写程序,输入一串数字,展示出这一串数字中是否有重复的数字,如果有,展示出重复的数字是什么及该数字重复次数;如果没有出现重复数字,输出-1并且退出程序。
```c
#include <stdio.h>
int main() {
int count[10] = {0}; // 统计数字出现次数
char num[100]; // 存储输入的数字串
int i, index; // 循环计数器和数字索引
int flag = 0; // 是否存在重复数字的标志
printf("请输入一串数字(不超过100个):");
scanf("%s", num);
for (i = 0; num[i] != '\0'; i++) {
index = num[i] - '0'; // 将字符转换为数字索引
count[index]++; // 统计数字出现次数
if (count[index] > 1) { // 如果数字出现次数大于1,则存在重复数字
flag = 1;
}
}
if (flag) { // 存在重复数字
printf("重复数字如下:\n");
for (i = 0; i < 10; i++) {
if (count[i] > 1) { // 输出重复数字及其出现次数
printf("%d:%d次\n", i, count[i]);
}
}
} else { // 不存在重复数字
printf("-1\n");
}
return 0;
}
```
用c语言编写:输入一串字符,判断数字,字母,其他字符的个数的程序
答:#include <stdio.h>
int main()
{
char str[100];
int digits, alphabets, others;
digits = alphabets = others = 0;
printf("请输入一串字符:");
gets(str);
for(int i=0; str[i]!='\0'; i++)
{
if(str[i]>='0' && str[i]<='9')
digits++;
else if((str[i]>='A' && str[i]<='Z') || (str[i]>='a' && str[i]<='z'))
alphabets++;
else
others++;
}
printf("字母个数: %d\n", alphabets);
printf("数字个数: %d\n", digits);
printf("其他字符个数: %d\n", others);
return 0;
}