c语言tolower()函数的使用问题,求解惑!

charstr1[][15]={"Zero","One","Two","Three","Four","Five","Six","Seven","Eight","nine"... char str1[][15] = {"Zero","One","Two","Three","Four","Five","Six","Seven","Eight","nine"};
for(int i = 0; i < 10 ; i++)

str1[i][0] = tolower(str1[i][0]);

for(int j = 0 ; j < 10 ; j++)
printf(" %s ",str1[j]);

return 0;

为什么这段程序输出的内容会变成
zzro ooe tto ttree ffur ffve.....
在把str1[j] 数组中的字符串首个大写字母转换成小写字母后,会把str1[j]中 各个字符串的第二个字母覆盖掉?谁给我讲讲是什么原因
展开
 我来答
金色潜鸟
推荐于2017-09-01 · TA获得超过3.2万个赞
知道大有可为答主
回答量:1.3万
采纳率:89%
帮助的人:5771万
展开全部
程序没有问题。
如果是 c 程序,应把 int i,j; 声明放到语句以前。c++ 可以这样放。
c 程序如下:
#include <stdio.h>
main()
{
char str1[][15] = {"Zero","One","Two","Three","Four","Five","Six","Seven","Eight","nine"};
int i,j;
for(i = 0; i < 10 ; i++)
str1[i][0] = tolower(str1[i][0]);
for(j = 0 ; j < 10 ; j++)
printf(" %s ",str1[j]);
return 0;
}
输出:
zero one two three four five six seven eight nine
darkelemental
2015-04-16 · TA获得超过242个赞
知道小有建树答主
回答量:202
采纳率:0%
帮助的人:102万
展开全部

不是这些代码里面的问题,检查其他地方出了什么问题

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式