| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 879 人关注过本帖
标题:录入多个数进行重复数字的判断
取消只看楼主 加入收藏
达尔文
Rank: 2
等 级:论坛游民
帖 子:84
专家分:29
注 册:2015-8-22
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:8 
录入多个数进行重复数字的判断
程序代码:

 printf("Enter a number:");

 scanf("%ld",&n);

 

 while (n > 0){
    
    while (n > 0){
   
      digit = n % 10;
       if (digit_seen[digit]){

        if (n > 0) 
      printf("%3d",digit); 

      printf("%3d \n",digit_seen[digit]);
      
      }
       digit_seen[digit] = true;
       n /= 10; 

    }
    digit_seen[digit] = 0;
    scanf("%ld",&n);
    
}

return 0;
}

问题有2:1.发现前面连用2个while条件都相同感觉怪怪的,有没有什么更好的方法代替。  2.比如第一次输入51562   输出5 1    but第二次输入217343  就会输出 3 1  1 1  2 1 (也就是第二次的输出受到了第一次的干扰,如何避免这种现象?)
2015-09-11 20:59
达尔文
Rank: 2
等 级:论坛游民
帖 子:84
专家分:29
注 册:2015-8-22
收藏
得分:0 
忘了说了后面的那个digit_seen[digit] = 0;应该是这样digit_seen[digit] = {0};但是这样又无法进行编译。我的想法是在这里将原先的库存数值清除为0.

能有一件喜欢的事很不容易,就坚持下去吧.....
2015-09-11 21:02
达尔文
Rank: 2
等 级:论坛游民
帖 子:84
专家分:29
注 册:2015-8-22
收藏
得分:0 
回复 5楼 jklqwe111
不好意思

能有一件喜欢的事很不容易,就坚持下去吧.....
2015-09-12 10:53
达尔文
Rank: 2
等 级:论坛游民
帖 子:84
专家分:29
注 册:2015-8-22
收藏
得分:0 
回复 3楼 小王KING
程序代码:
#include<stdbool.h>
#include<stdio.h>

int main(void)
{

 bool digit_seen[10] = {0};

 int digit;

 long n;

 

 printf("Enter a number:");

 scanf("%ld",&n);

 

 while (n > 0){
    
    while (n > 0){
   
      digit = n % 10;
       if (digit_seen[digit]){

        if (n > 0) 
      printf("%3d",digit); 

      printf("%3d \n",digit_seen[digit]);
      
      }
       digit_seen[digit] = true;
       n /= 10; 

    }
    fflush(stdin);
    scanf("%ld",&n);
    
}

return 0;
}

这样算不算清除键盘缓冲区呢感觉效果还是没有达到呢

能有一件喜欢的事很不容易,就坚持下去吧.....
2015-09-12 10:56
达尔文
Rank: 2
等 级:论坛游民
帖 子:84
专家分:29
注 册:2015-8-22
收藏
得分:0 
回复 8楼 边小白
刚学习C,很多地方不是很明白,望多多指教。

能有一件喜欢的事很不容易,就坚持下去吧.....
2015-09-12 19:21
达尔文
Rank: 2
等 级:论坛游民
帖 子:84
专家分:29
注 册:2015-8-22
收藏
得分:0 
回复 9楼 TonyDeng
第二次输出的结果会受到第一次的影响呢

能有一件喜欢的事很不容易,就坚持下去吧.....
2015-09-12 19:24
达尔文
Rank: 2
等 级:论坛游民
帖 子:84
专家分:29
注 册:2015-8-22
收藏
得分:0 
回复 11楼 TonyDeng
多谢指点,我重新试试。这是个改编题,没有答案。我就照着原题整了半天,没整出来,就来论坛请教各位。

能有一件喜欢的事很不容易,就坚持下去吧.....
2015-09-12 19:31
达尔文
Rank: 2
等 级:论坛游民
帖 子:84
专家分:29
注 册:2015-8-22
收藏
得分:0 
回复 10楼 jklqwe111
多谢指点完全都在点上。我试着把它重新定义成int类型,然后试着把数字中的1-9以及出现的次数都显示出来了。有没有方法照之前只显示出重复的数和出现次数呢,也就是对这道题最初的想法呢?虚心求教

能有一件喜欢的事很不容易,就坚持下去吧.....
2015-09-12 21:26
达尔文
Rank: 2
等 级:论坛游民
帖 子:84
专家分:29
注 册:2015-8-22
收藏
得分:0 
回复 10楼 jklqwe111
好的,我再试下

能有一件喜欢的事很不容易,就坚持下去吧.....
2015-09-17 14:14
快速回复:录入多个数进行重复数字的判断
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.023044 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved