标题:一个简单的程序问题,求纠错
取消只看楼主
soulmate1023
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:256
专家分:831
注 册:2014-9-23
结帖率:91.67%
已结贴  问题点数:20 回复次数:3 
一个简单的程序问题,求纠错
就是用连续用空格间隔输入多个字符串,然后再输出
eg:
input
abfjdjdnj kkgnwfne snffneinefw
output:
abfjdjdnj
kkgnwfne
snffneinefw

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
    char a[100][100];
    int i=0;
    int n,j;
    printf("input\n");
    while((scanf("%s",a[i]))!=EOF)
    i++;
    n=i-1;
    for(j=1;j<=n;j++)
    {
      printf("%s\n",a[j]);
      }
  system("pause");
      return 0;
      }

[ 本帖最后由 soulmate1023 于 2014-10-7 21:01 编辑 ]
搜索更多相关主题的帖子: system include return 字符串 
2014-10-07 21:00
soulmate1023
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:256
专家分:831
注 册:2014-9-23
得分:0 
回复 3 楼 hackrol
1.我把定义int i=0改成ing i=1了;这是我太粗心了;
2.但是scanf不是遇到空格就会认为字符串结束吗?那我这样输入:abcd efgh igkl 这样每输入一个字符串就加一个空格,就应该有3个字符串了呀,然后再回车输入ctrl+z手动输入EOF,再回车,就应该可以输出了呀?但程序没反应。
3.还有你说不能用%s输出,可是如果我用for循环输出三个字符串就可以呀,例如:
for(j=0;j<3;j++)
   {
      printf("%s\n",a[j]);
    }
大神们,求解呀?
2014-10-08 21:16
soulmate1023
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:256
专家分:831
注 册:2014-9-23
得分:0 
回复 5 楼 icanbestrong
没有没有,我用ctrl+z输入的EOF
2014-10-08 21:17
soulmate1023
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:256
专家分:831
注 册:2014-9-23
得分:0 
回复 9 楼 右倾一世
你说的也挺有道理的,我想想看,谢谢
2014-10-09 21:20



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-436936-1-1.html




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

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