检查数中重复出现的数字
#include<stdbool.h> /* only C99*/#include<stdio.h>
int main(void)
{
bool digit_seen = {flase};
int digit;
long n;
printf("Enter a number:");
scanf("%ld",&n);
while(n>0) {
digit = n%10; /*这一步有什么意思啊*/
if (digit_seen) /*用digit 作下标是为什么呢*/
break;
digit_seen = true;
n/=10;
}
if (n>0)
printf("Repeated digit\n");
else
printf("No repeated digit\n");
return 0;
} 1,取最后一位(为何不自己试一下?)
2,那还能用什么做下标?
3,第4行拼写错误 本帖最后由 liuzhengyuan 于 2020-3-9 14:18 编辑
看到底下
digit_seen = true;
就是说它是用数组的下标来表示一个数。
如果这个数已经出现过了,那么数组就会是true循环跳出,程序结束
比如:第一次出现n
原来是 false 的 digit_seen 就会变为 true.
第二次出现n:
检测到 digit_seen 是 true 条件成立跳出循环
页:
[1]