| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 963 人关注过本帖
标题:输入不结束
只看楼主 加入收藏
zzxwill
Rank: 1
等 级:新手上路
帖 子:398
专家分:0
注 册:2007-8-15
收藏
 问题点数:0 回复次数:11 
输入不结束

#include<stdio.h>
//主要问题是:我想定义了足够大的a[100],然后任意输入小于100个数,可是
//输入不结束:
main()
{
int i,a[100],n;
i=0;

while(a[i]!='\n'){//请问是这里有问题导致输入不结束吗?应该怎样改正?
scanf("%d",&a[i]);
i++;
}

n=sizeof(a)/sizeof(int);

for(i=0;i<n;i++){
printf("%d",a[i]);
}
}


搜索更多相关主题的帖子: 结束 输入 
2007-08-27 07:01
栖柏
Rank: 2
等 级:论坛游民
威 望:3
帖 子:1103
专家分:17
注 册:2007-8-23
收藏
得分:0 
你回车后再加个字符
看能不能输入结束
如果不能,此时再回车

You have lots more to work on! Never give up!c language!
2007-08-27 07:58
栖柏
Rank: 2
等 级:论坛游民
威 望:3
帖 子:1103
专家分:17
注 册:2007-8-23
收藏
得分:0 
http://bbs.bc-cn.net/viewthread.php?tid=165603
看这个,可能对你有启发
主要得自己思考

You have lots more to work on! Never give up!c language!
2007-08-27 07:59
chen7806
Rank: 1
等 级:新手上路
威 望:2
帖 子:160
专家分:0
注 册:2007-8-5
收藏
得分:0 
以下是引用zzxwill在2007-8-27 7:01:13的发言:

#include<stdio.h>
//主要问题是:我想定义了足够大的a[100],然后任意输入小于100个数,可是
//输入不结束:
main()
{
int i,a[100],n;
i=0;

while(a[i]!='\n'){//请问是这里有问题导致输入不结束吗?应该怎样改正?
scanf("%d",&a[i]);
i++;
}

n=sizeof(a)/sizeof(int);

for(i=0;i<n;i++){
printf("%d",a[i]);
}
}


问题应该在这里:scanf("%c",&a[i]);%d是整数,不是字符。

2007-08-27 08:10
栖柏
Rank: 2
等 级:论坛游民
威 望:3
帖 子:1103
专家分:17
注 册:2007-8-23
收藏
得分:0 

说的的确!a[i]!='\n'这里是字符了
你不如改为for循环for(;i!=100;i++);


You have lots more to work on! Never give up!c language!
2007-08-27 08:15
八桂浪子
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2007-8-6
收藏
得分:0 
同意四楼的意见.

我是流氓我怕谁?
2007-08-27 09:30
zzxwill
Rank: 1
等 级:新手上路
帖 子:398
专家分:0
注 册:2007-8-15
收藏
得分:0 
回复:(chen7806)以下是引用zzxwill在2007-8-27 7:0...

呵呵,你说得对!但是我这样改了还是不行.???
#include<stdio.h>
//主要问题是:我想定义了足够大的a[100],然后任意输入小于100个数,可是
//输入不结束:
main()
{
int i,a[100],n;
i=0;

while(a[i]!=-1024){//请问是这里有问题导致输入不结束吗?应该怎样改正?
scanf("%d",&a[i]);
i++;
}

n=sizeof(a)/sizeof(int);

for(i=0;i<n;i++){
printf("%d",a[i]);
}
}


一分耕耘,一分收获。
2007-08-27 11:57
雨中飞燕
Rank: 3Rank: 3
等 级:禁止访问
威 望:8
帖 子:2200
专家分:0
注 册:2007-8-9
收藏
得分:0 

以上修改方法不好

2007-08-27 12:08
zzxwill
Rank: 1
等 级:新手上路
帖 子:398
专家分:0
注 册:2007-8-15
收藏
得分:0 

那请问飞燕,该怎么改呢?谢谢~~


一分耕耘,一分收获。
2007-08-27 12:25
雨中飞燕
Rank: 3Rank: 3
等 级:禁止访问
威 望:8
帖 子:2200
专家分:0
注 册:2007-8-9
收藏
得分:0 
while(scanf("%d",&a[i])==1)
{
i++;
}
输入非数字字符结束,或者是EOF(Ctrl+Z)



[此贴子已经被作者于2007-8-27 12:43:56编辑过]

2007-08-27 12:42
快速回复:输入不结束
数据加载中...
 
   



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

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