动态数组能编译成功但运行不了
今天看了小甲鱼的“啪啪啪”动态数组
讲的是小甲鱼被打脸的故事
-------------------------------进入正题---------------------------------------
我试了一下动态数组,代码和小甲鱼的一模一样,只是格式有点变化
我能编译成功
但是运行不了
#include <stdio.h>
int main()
{
int n,i;
printf("请输入字符的个数:");
scanf("%d",&n);
char a;
printf("请开始输入字符:");
getchar();
for (i = 0;1 < n;i++)
{
scanf("%c",&a);
}
a = '\0';
printf("你输入的字符串是:%s\n",a);
return 0;
}
运行之后是这个界面:
请输入字符的个数:3
请开始输入字符:ABC
然后就没有任何反应
{:10_266:}
所以是怎么回事呢?
getchar();
for (i = 0;1 < n;i++) //条件是无限循环? howzyao 发表于 2020-5-24 06:12
getchar();
for (i = 0;1 < n;i++) //条件是无限循环?
不对啊
如果想要这个for循环是无限循环的话
就得要让n无限增加
但是n已经被赋值为字符个数了
所以不是无线循环
那怎么办呢{:10_266:} 有点无语
代码敲错了
字母 i 写成了数字 1
能不能先调试一下下 冰清玉洁丸 发表于 2020-5-24 08:22
不对啊
如果想要这个for循环是无限循环的话
就得要让n无限增加
你这个for(i=0;1<n;i++)改成for(i=0;i<n;i++)就好了,你的条件是1<n,只要n>1就是一个死循环。是不是手误敲错了。。。 小猪鼠 发表于 2020-5-24 16:49
你这个for(i=0;1
我敲错了……
谢谢指出
页:
[1]