免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 1845 | 回复: 16
打印 上一主题 下一主题

关于字符数组输出的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-01-14 08:58 |只看该作者 |倒序浏览
代码:
char s[1000];
int i;
for(i=0;i<1000;i++)
scanf("%c",&s);
for(i=0;i<1000;i++)
printf("%c",s);

如果我输入的是:1 2 3....1000
为什么打印出来的不是1 2 3 ....1000 这些数呢?

论坛徽章:
0
2 [报告]
发表于 2005-01-14 09:06 |只看该作者

关于字符数组输出的问题

是不是计算机自己的位数所决定的啊?
清高手指教!

论坛徽章:
0
3 [报告]
发表于 2005-01-14 09:16 |只看该作者

关于字符数组输出的问题

你真强,难道你真的要输入1000个数啊!!

论坛徽章:
0
4 [报告]
发表于 2005-01-14 09:24 |只看该作者

关于字符数组输出的问题

如果我要输出一个一千位的大数
用字符数组定义char s[1000],这样能输出吗?
为什么我们最多只定义char s[255]呢?
是不是计算机自身的位数决定的呢?
请高手指点!

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
5 [报告]
发表于 2005-01-14 09:37 |只看该作者

关于字符数组输出的问题

你输入一个10,按%c的格式,会当成'1'和'0'

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
6 [报告]
发表于 2005-01-14 09:42 |只看该作者

关于字符数组输出的问题

因为空格也算是字符哦,你当然也把它读进去啦。

论坛徽章:
0
7 [报告]
发表于 2005-01-14 09:44 |只看该作者

关于字符数组输出的问题

因为你在输入的时候是按照这样的形式输入的:1 2 3 4 5 ……,你用的格式化输入是scanf("%c",&s)的形式,它会把你数字中间的空格也当作你输入的字符了,所以会最多输出255个数字字符,其实是有1000个,只是中间有很多空格也当作字符输出了,还有就是像楼上所的你输入100,它会当三个字符记录

论坛徽章:
0
8 [报告]
发表于 2005-01-14 09:45 |只看该作者

关于字符数组输出的问题

int s[1000]

论坛徽章:
0
9 [报告]
发表于 2005-01-14 10:00 |只看该作者

关于字符数组输出的问题

如果我输入的是23684739457895795597685745852463465....
一共有1000位.
还是用char s[1000];来定义这个数组 
输出时能够把这1000位全部输出吗?

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
10 [报告]
发表于 2005-01-14 10:03 |只看该作者

关于字符数组输出的问题

原帖由 "your1982" 发表:
定义这个数组 
输出时能够把这1000位全部输出吗?


能。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP