关于C语言的几个问题?

第一个问题就是charstr【10】={“ABCDE”}的长度是多少?charstr【】={“ABCDE”}的长度是多少?那么用strlen函数测得他们的长度又分别是多少... 第一个问题就是
char str【10】={“ABCDE”}的长度是多少?
char str【】={“ABCDE”}的长度是多少?
那么用strlen函数测得他们的长度又分别是多少呢?

第二个问题就是
考试中遇到 x=3,y=2,z=1
问 x/y/z的结果 和int(x/y/z)和float(x/y/z)的结果又各是什么呢?
考试中应该按哪种写(直接问x/y/z的结果)
展开
 我来答
zhangsonglin_c
高粉答主

2020-05-27 · 醉心答题,欢迎关注
知道大有可为答主
回答量:3.7万
采纳率:83%
帮助的人:6695万
展开全部
char str[10]={"ABCDE"},占用内存10个字节,前6个字节的值是"ABCDE\0",字符串不一定占用全部字符数组的内存,因此最后会加'\0'(0值)表示字符串的实际结尾。该字符串实际占据数组的前6个单元;
char str[]={“ABCDE”},会自动根据字符串长度确定占用内存的大小,为6个字节。
用strlen()函数去查看,结果都是5。
整数相除,余数舍去,只有整数部分。
同类型运算,从左至右顺次进行。
x/y=3/2=1,x/y/z=1/1=1,
取整之后,还是1,化成浮点数之后是1.000000.
如果想得到小数结果,有两种做法:
(1)在运算之前,先强制类型转换:(float x)/(float y)/(float z);

(2)运算的第一个数是浮点数:1.0*x/y/z;
运算时会自动选定第一个数的格式,进行计算。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式