每日编程中遇到任何疑问、意见、建议请公众号留言或加入每日编程群聊739635399
输入一个整数n,输出该整数中重复的数字,如果没有重复出现的数字则输出 No repeat number!
输入样例:
2312626
输出样例:
2 6
解决方法:
(1)代码实现:
#include
#include
int main() {
char zhengshu[1000];
scanf("%s", zhengshu); //输入数字
int ku
[1000]; //建立一个库,存储已经出现过的数字,将接下来的数字与库里的数字比较,提高效率
int result[1000]; //最终结果存储在这个数组里面
int i = 0, j = 0, k = 0;
while (zhengshu[i] != 0) {
j = 0; //每次比较都要从库里的第一个数字开始
while (ku[j] != 0) {
if (zhengshu[i] == ku[j]) {
result[k] = zhengshu
[i]; //发现zhengshu[i]在之前曾被输出过,说明是重复数字,记录到result数组中去
k = k + 1;
break;
}
++j;
}
ku[j] = zhengshu
[i]; //如果zhengshu[i]之前没有被输出过,库中没有这个数字,则将这个数字加到库里
++i;
}
/*以下过程是输出结果,并将重复的数字剔除*/
int k1 = 0;
i = 0;
while (k1 < k) {
i = 0;
while (i < k1) {
if (result[i] == result[k1])
break;
else
++i;
}
if (i == k1) //说明是比较到了result[k1-1]才跳出循环,不是break出来的,result[k1]在前面没有出现过
{
printf("%c ", result[k1]);
}
k1 = k1 + 1;
}
return 0;
}
输入一个字符串,统计字符串中大、小写字母,数字及其他字符出现的次数。
输入样例:
abcd123![]ABC
输出样例:
3 4 3 3