标题:《c primer plus》里面第 11 章的课后练习题第 2 题,自己编的感觉没错啊, ...
取消只看楼主
pokerLee
Rank: 2
等 级:论坛游民
帖 子:41
专家分:29
注 册:2012-11-4
结帖率:93.33%
已结贴  问题点数:20 回复次数:2 
《c primer plus》里面第 11 章的课后练习题第 2 题,自己编的感觉没错啊,为什么没有效果!!
《c primer plus》里面第11章字符串与字符串函数的课后练习题第2题,要求n个字符后遇到第一个空格、制表符、换行符后停止读取输入。参考答案用的是for()里嵌套if(),自己练习用while()。看好几遍了感觉没有错误,为什么输入空格、制表符、换行符后不能停止?求指点!!!!
程序代码:
#include<stdio.h>
#include<ctype.h>
void input(char *,int);
int main(void)
{
    char a[81];
    int n;
    puts("Enter the number of you want:");
    scanf("%d",&n);
    getchar();
    input(a,n);
    puts(a);
    return 0;
}
void input(char *str,int n)
{
    int i=0;
    puts("Enter str:");
    while(isspace(*(str+i))==NULL||i<n)
    {
        *(str+i)=getchar();
        i++;
    }
    *(str+i)='\0';
}
运行结果

搜索更多相关主题的帖子: 参考答案 练习题 换行符 制表符 字符串 
2014-10-16 20:30
pokerLee
Rank: 2
等 级:论坛游民
帖 子:41
专家分:29
注 册:2012-11-4
得分:0 
回复 2 楼 erty1001
改成与运算符了~~&&~~~~也不行啊~~求指点~~
2014-10-16 20:52
pokerLee
Rank: 2
等 级:论坛游民
帖 子:41
专家分:29
注 册:2012-11-4
得分:0 
回复 4 楼 TonyDeng
?什么意思?没明白,参考答案用的是for()循环,可以运行~~求指点~~
2014-10-17 21:31



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




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

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