| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 609 人关注过本帖
标题:求助个问题,谢谢各位
只看楼主 加入收藏
zhouweiyong55
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2008-4-8
收藏
 问题点数:0 回复次数:9 
求助个问题,谢谢各位
以下是个论证数字回文的程序,为什么当我出入字母时,他就会一直出现"please input a number:"
#include<stdio.h>
void main()
{long int a,a1,a2,a3,a4,rent;
 do
 {printf("\nplease input a number:");
  scanf("%ld",&a);
 }while(a<10000||a>99999);
 a1=a/10000;
 rent=a%10000;
 a2=rent/1000;
 rent=a%100;
 a3=rent/10;
 a4=a%10;
 if((a1==a4)&&(a2==a3))
    printf("\nthe number is huiwen");
 else
    printf("\nthe number is not huiwen");
}



希望高手的帮助,谢谢

[[it] 本帖最后由 zhouweiyong55 于 2008-4-8 00:17 编辑 [/it]]
搜索更多相关主题的帖子: include please number 字母 
2008-04-08 00:15
广陵绝唱
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:29
帖 子:3607
专家分:1709
注 册:2008-2-15
收藏
得分:0 
键盘缓存问题(应该是这么叫的),以前我也有这样的问题与困惑,后来在大家的帮助下,解决了此问题:
char c;
whilde(c=getchar!='\n'&&c!=EOF);
你在scanf输入语句的后面加上while这行——不过前面得先定义变量c。

你试试,应该可以的。
2008-04-08 00:21
zhouweiyong55
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2008-4-8
收藏
得分:0 
这个论坛回复的速度也太快了,真是谢谢广陵兄,我再试试
2008-04-08 00:31
zhouweiyong55
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2008-4-8
收藏
得分:0 
但是如果象上面那样改就不能判断a的范围了啊,不知道有没有更好的解决方法吗,还有问下EOF是什么意思?
谢谢各位!
2008-04-08 00:36
devfhpgah
Rank: 1
来 自:江西
等 级:新手上路
帖 子:204
专家分:0
注 册:2007-8-16
收藏
得分:0 
这样就可以了!
#include<stdio.h>
void main()
{long int a,a1,a2,a3,a4,rent;
do
{printf("\nplease input a number:");
  scanf("%ld",&a);
  while(getchar()!='\n')
   continue;
}while(a<10000||a>99999);
a1=a/10000;
rent=a%10000;
a2=rent/1000;
rent=a%100;
a3=rent/10;
a4=a%10;
if((a1==a4)&&(a2==a3))
    printf("\nthe number is huiwen");
else
    printf("\nthe number is not huiwen");
}

努力才会成功!
2008-04-08 02:47
zhouweiyong55
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2008-4-8
收藏
得分:0 
谢谢上面的兄弟
2008-04-08 09:21
论坛元老
Rank: 1
等 级:新手上路
帖 子:812
专家分:0
注 册:2008-3-31
收藏
得分:0 
回复 5# 的帖子
学习了,

怎么不可以用Discuz代码呢!
2008-04-08 10:45
雨中飞燕
Rank: 3Rank: 3
等 级:禁止访问
威 望:8
帖 子:2200
专家分:0
注 册:2007-8-9
收藏
得分:0 
请LZ学习一下数组

" border="0" />
2008-04-08 11:20
死了都要C
Rank: 4
来 自:四川成都
等 级:贵宾
威 望:13
帖 子:1582
专家分:116
注 册:2006-12-7
收藏
得分:0 
为什么要学数组啊```

女施主``我给你``送茶来了```师太``你就从了老衲吧``
代码本天成~~~妙头偶得之```
2008-04-08 12:24
meteor57
Rank: 1
来 自:银河系
等 级:新手上路
帖 子:267
专家分:0
注 册:2007-9-29
收藏
得分:0 
长见识了,原来这叫回文,呵呵~~~

把相同的词汇或句子,在下文中调换位置或颠倒过来,产生首尾回环的情趣,叫做回文,也叫回环。

回环运用得当,可以表现两种事物或现象相互依靠或排斥的关系。

例子(1):信言不美,美言不信。 《道德经八十一》

例子(2):日往则月来,月往则日来。 《易经.系辞》

例子(3):非人磨墨墨磨人。

例子(4):自我突破,突破自我。

例子(5):你需要警队,警队需要你。

帮你改了一下,字符也可以.

#include<stdio.h>
#define MAX 64
int main(void)
{
    int i = 0,len;
    char str[MAX];
    do
    {
         printf("\nplease input a string:");
         gets(str);
        // fflush(stdin);或while(getchar()!='\n')continue;都不用了
        len = strlen(str);
    }while(len < 3 || len > MAX);
    if (str[i] == str[len-i-1])
       {
          for (i = 0; i <= len/2; i++)
              if (str[i] != str[len-i-1])
              {
                    printf("\nthe number is not huiwen");
                    break;
              }
          if (i > len/2)
              printf("\nthe number is huiwen");
       }
     else
     printf("\nthe number is not huiwen");
     getch();
     return 0;
}

[[it] 本帖最后由 meteor57 于 2008-4-8 12:54 编辑 [/it]]
2008-04-08 12:50
快速回复:求助个问题,谢谢各位
数据加载中...
 
   



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

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