注册 登录
编程论坛 C++教室

请帮忙。。。关于数组的问题

nelsonjia 发布于 2010-02-26 17:44, 288 次点击
这样的程序有什么问题?
#include<iostream>
#define num 100
using namespace std;
int main()
{
    char a[num]={0};
    int i;
    for(i=0;a[i]!='\n';i++)
    {
          a[i]=getchar();
     }
    return  0;
}
赋值总是结束不了。。。请问应该怎样修改呢?
1 回复
#2
cnfarer2010-02-26 21:02
问题就出在这里:a[i]!='\n',可以在for前面加一句 a[num-1]='\n'; 或者直接将a[i]!='\n'改为i<num
不过按你的本意可能是输入回车就结束,可以将程序这样改:
程序代码:
#include<iostream>
#define num 100
using namespace std;
int main()
{
    char a[num]={0};
    int i;
    for(i=0;i<num;i++)
    {
          a[i]=getchar();
          if (a[i]=='\n')
          {
              break;
          }
     }
    return  0;
}
1