C primer plus-Chapter 11.2

/*设计并测试一个函数,从输入中获取n个字符,在n个字符后停止,或在读到第一个空白、制表符、或换行符是停止,哪个先遇到哪个停止。不能只使用scanf().*/
# include <stdio.h>
char *input(char *arr,int n)//I thought char or void is the same;
{
    char a=getchar();
    while(a==' '||a=='\n'||a=='\t')//for many errors here...because of "||" or "&&";
        getchar();//get all the "blank" before a word;
    int i=0;
    while(a!=' '&&a!='\n'&&a!='\t'&&i<10)
    {
        *arr++=a;
        i++;
        a=getchar();//pay attention to this guy!
    }
    *arr='\0';
    return arr;
}
int main()
{
    char arr[10];
    input(arr,10);
    puts(arr);
    return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值