怎么样编写c++简易电话簿

来源:百度知道 编辑:UC知道 时间:2024/06/01 09:40:08
#include<iostream.h>
void main()
{ char c;
int d,b,k,t,f;
char a[9][9]={"tom","123456","popo","213","aq","23","er","4535"};
while(1){
for(d=0;d<10;d++)
{ cin>>c;
if(c==*a[d])
break;

}
cout<<a[d+1]<<endl;
}

大家帮忙看看我这程序怎么错了,为什么只能输出前两个名字的电话号码。

}
这个问题不是变量太多,关键是,我运行了以后,输入前两个名字的确出来了相应的电话号码。但是再继续输后面的就出不来了,用while(1)是懒得再重新编译,而用a【】只是用这个二维数组的行地址。

#include<iostream.h>
void main()
{ char c;
int d,b,k,t,f; //多定义了那么多变量啊 去掉t,f吧;另加 “int k=0;”
char a[9][9]={"tom","123456","popo","213","aq","23","er","4535"};
while(1){ //这个while是个死循环啊,改为 “while(k<10)”下面再给个“k++;”语句吧!当输入9个的时候,就跳出while循环语句了!
for(d=0;d<10;d++)
//多加个for语句吧“for(b=0;b<10;b++)”;你定义的是2维数组,所以要用2个for语句;
{ cin>>c;
if(c==*a[d])//改为if(c==*a[b][d])
break;

}
for(b=0;b<10;b++) //输出你刚才输入的东西得这样啊!
for(d=0;d<10;d++)
cout<<a[b][d]<<endl;
}