| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1908 人关注过本帖
标题:小问题请教
只看楼主 加入收藏
meteor57
Rank: 1
来 自:银河系
等 级:新手上路
帖 子:267
专家分:0
注 册:2007-9-29
结帖率:100%
收藏
 问题点数:0 回复次数:26 
小问题请教
请问用scanf();给一个变量赋值,如果输入的是回车,可以用什么语句判断出回车?
2008-02-01 18:33
卧龙孔明
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:59
帖 子:3872
专家分:684
注 册:2006-10-13
收藏
得分:0 
判断是否是回车符就可以了

My Blog: www.aiexp.info
虽然我的路是从这里开始的,但是这里不再是乐土.感谢曾经影响过,引导过,帮助过我的董凯,飞燕,leeco,starwing,Rockcarry,soft_wind等等等等.别了,BCCN.
2008-02-01 18:35
雨中飞燕
Rank: 3Rank: 3
等 级:禁止访问
威 望:8
帖 子:2200
专家分:0
注 册:2007-8-9
收藏
得分:0 
请用"%c"或者getchar函数
2008-02-01 19:10
meteor57
Rank: 1
来 自:银河系
等 级:新手上路
帖 子:267
专家分:0
注 册:2007-9-29
收藏
得分:0 
其实是一个数组,但要处理的数据的元素个数不明确,我想当输入完所有元素时,直接回车,表示数据已经输入完毕.该怎么做好点呢?谢谢了
2008-02-01 19:31
雨中飞燕
Rank: 3Rank: 3
等 级:禁止访问
威 望:8
帖 子:2200
专家分:0
注 册:2007-8-9
收藏
得分:0 
循环输入,如果你必须要判断回车结束,对于入门的程序会难一些,
前面讲过用什么函数了,这里不说,说点别的

你直接循环输入整数用%d一类,字符串用%s就得了
建议你目前还不很熟悉输入输出函数的工作方式时,还是用特征值结果输入,或者用EOF
2008-02-01 19:37
meteor57
Rank: 1
来 自:银河系
等 级:新手上路
帖 子:267
专家分:0
注 册:2007-9-29
收藏
得分:0 
谢谢了! 那是个数字的int a[]的数组啊.特征值的办法用数字的就知道(输入数字表示数组输入结束,进入下一步处理.好像觉得有点怪怪的...).那EOF怎么用?谢谢不吝指教啦~~~

刚看了雨中飞燕,你在别的帖子,说到最大流的最短增广路算法.建议你可以找一下<运筹学>的书,上面一般都会有很详细的最大流的最短增广路的数学理论,希望对你理解算法有所帮助~~~
2008-02-01 20:16
么么蝶
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2008-2-3
收藏
得分:0 
这样好像应该可以吧 ^_^
while (scanf("%d",&n)!=EOF)

菜鸟目标:爱上编程 ^_^
2008-02-03 21:19
死了都要C
Rank: 4
来 自:四川成都
等 级:贵宾
威 望:13
帖 子:1582
专家分:116
注 册:2006-12-7
收藏
得分:0 
EOF: win下为CTRL+Z 其他的OS看看CTRL+D可以不

女施主``我给你``送茶来了```师太``你就从了老衲吧``
代码本天成~~~妙头偶得之```
2008-02-03 21:55
meteor57
Rank: 1
来 自:银河系
等 级:新手上路
帖 子:267
专家分:0
注 册:2007-9-29
收藏
得分:0 
谢谢么么蝶,可是好像不行啊.while (scanf("%d",&n)!=EOF)输入回车还是会循环
谢谢死了都要C,CTRL+Z可以结束,但如果要打印出来好像打印到哪不好控制
比如,int a[5];for(i=0;i<5;i++){scanf("%d",a[i]);}
输入2个后,CTRL+Z结束.
for(i=0;i<5;i++){printf("%d",a[i]);}//这样会全都打印了.怎么控制到前两个元素呢?
偶是新手,麻烦的问题还真不少.

其实,比如,int a[5].而我输入的元素只有两个(N),
可以用for(i=0;i<N;i++)来控制scanf();和printf();

听一高手说可以创建动态数组
比如,N我输入的是2.
好像输入完2个元素了还没到下一步
scanf("%d",array+i)还继续循环
什么回事啊.第一次用动态的,不太好理解,让大虾们指点一下.谢谢了!
#include<stdio.h>
#include<stdlib.h>
int main(void)
{
  int N;
  int i;
  scanf("%d",&N);
  int *array=(int*)malloc(sizeof(int)*N);
  for(i=0;i<N;i++)
  {scanf("%d",array+i);}
  for(i=0;i<N;i++);
  {printf("%d",*(array+i));}
   free(array);
  return 0;
}
2008-02-17 09:55
peach5460
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:武汉
等 级:贵宾
威 望:30
帖 子:2780
专家分:6060
注 册:2008-1-28
收藏
得分:0 
char a;
scantf("%c",&a);
if(a=="/n")
{
...
}

貌似这样是可以的...我不太确定...楼主可以试试

我总觉得授人以鱼不如授人以渔...
可是总有些SB叫嚣着:要么给代码给答案,要么滚蛋...
虽然我知道不要跟SB一般见识,但是我真的没修炼到宠辱不惊...
2008-02-17 10:49
快速回复:小问题请教
数据加载中...
 
   



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

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