| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 624 人关注过本帖
标题:只要输入任何字母,就打出649
只看楼主 加入收藏
simpley
Rank: 1
等 级:新手上路
帖 子:262
专家分:0
注 册:2005-2-23
收藏
 问题点数:0 回复次数:2 
只要输入任何字母,就打出649
#include<stdio.h>
main(){int i,j;m=5;
while(m!='n'){fflush(stdin);scanf("%d%c",&i,&j);
printf("%d%c",i,j);while((m=getchar())=='\n');}}
输入:yy(回车)
打出649
输入y
  
打出649
以后只要输入任何字母,就打出649
不知道是怎么回事
搜索更多相关主题的帖子: 字母 输入 
2005-04-11 17:43
激情依旧
Rank: 1
等 级:新手上路
威 望:2
帖 子:524
专家分:0
注 册:2005-4-4
收藏
得分:0 
#include<stdio.h>
main()
{int i,j,m=5;
  while(m!='n')
   {fflush(stdin);
    scanf("%d%c",&i,&j);
    printf("%d%c",i,j);
    while((m=getchar())=='\n');
   }
}
他函数是要你输入一个整数。然后在输入一个字符。直到输入的字符是'n'的时候。他程序就结束了。你的编程风格太差了。当别人运行你的代码时。就一个光标在那里闪动。谁知道你要别人做什么。。你起码也搞个提示吧!

坚强依然!永不言苦!永不言败!睇透数据结构!编程编程再编程!-----激情依旧

生是编程人!!!!死是编程鬼!!!!颠峰人生!!!焚尽编程!!! 爱已严重死机!情必须重新启动!情人已和服务器断开连接!网恋也需要重新拨号!-----激情依旧
2005-04-11 23:21
时空之蕊
Rank: 2
等 级:新手上路
威 望:3
帖 子:691
专家分:0
注 册:2004-10-31
收藏
得分:0 
经过跟踪后发现问题答案了: #include<stdio.h> void main() { int i=10,j='a',m=5;//注意这里的初始化 while(m!='n') { fflush(stdin); scanf("%d%c",&i,&j); printf("%d%c",i,j); fflush(stdin);//add while((m=getchar())==10);//楼上的注意了只要不是回车那么就退出这个while } } 现在按照楼主的要求输入发现么!为什么!因为输出的是默认初始化的那些i和j的值 经过跟踪后发现问题的所在,当scanf("%d%c",&i,&j); 发生无法匹配输入的时候处理的方式是不进行任何的字符提取,函数返回! 这样i和j就不可能改变了! scanf("%d%c",&i,&j); printf("%d%c",i,j); scanf("%c%d",&i,&j); printf("%c%d",i,j); 这段代码可以验证是否发生了字符提取,测试数据使用c12

我渴望掌控时空的核心——用最先进的技术,打造无比美丽的世界!
2005-04-12 01:13
快速回复:只要输入任何字母,就打出649
数据加载中...
 
   



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

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