【c】无限制输入字符
2023-12-22 23:42:11
我们做题有时候会碰上这种的输入,一直输入字符,
下面附上两种解决办法
方法1:
char s[10000];
?? ?int i=0;
?? ?int arr[1000]={0};
?? ?while(scanf("%c",&s[i])!=EOF)
?? ?{
?? ??? ?i++;
?? ?}这样你就可以一直输入,换行符,空格也是可以被读取的
我们这样输入,不算结尾的ctrl+z,有20个字符(两个空格)
i值也是20
假如我们想看各个元素的值,我们可以利用for循环打印出来,或者进行调试看
空格,换行符也被打印了出来,虽然打印到s[19],但是s[20]也可以打印,就是EOF(也就是-1)
下面附上第二种方法
方法2:
while ((ch[i] = getchar()) != EOF)//不断输入字符,换行符\n也能被读取,不想输入时候按ctrl+z
{
?? ?i++;
}同理和上面的一样,这次我们来调试看看数组中结果
注意【21】【22】,21是输入最后一个回车,22则是按得ctrl+z
并且能·看到i的值也是22,代表22个字符(不算最后的-1)
文章来源:https://blog.csdn.net/2301_80108815/article/details/135162245
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!