我的代码出了什么问题。我想添加10次数据并查看详细信息,但我不能这样做。有人可以帮我这个吗?
#include <iostream.h>
#include <conio.h>
#include<string.h>
void load_menu(void);
void analysis(void);
void details(void);
int main(int argc, char** argv)
{
load_menu();
return 0;
}
void load_menu(void)
{
int choice;
while (1)
{
cout<<"*******************************************************************************\n";
cout<<"* Welcome to SYSTEM analyze *\n";
cout<<"*******************************************************************************\n\n";
cout<<" Welcome to SYSTEM analyze \n\n";
cout<<"1.Voter Analysis 1\n2.Voter Details 2\n3.Exit 3\n\n";
cout<<"*******************************************************************************\n";
cout<<"Please enter your Choose : ";cin>>choice;
switch(choice)
{
case 1 :
analysis();
break;
case 2: details();
break;
case 3: cout<<"Going out !\n";
exit(1) ;
break;
default: cout<<"\n\n\n\n\n\n\n";
cout<<"*******************************************************************************\n";
cout<<"* PLEASE INSERT AGAIN !! *\n";
cout<<"*******************************************************************************\n\n";
cout<<"\n\n\n\n";
break;
}
}
}
void analysis(void)
{
char voterid[10];
char votername[30];
char voteraddr[30];
char phone[15];
int age;
char status[20];
{
cout<<"get voterid";
cin>>voterid;
cout<<"voter's name";
cin>>votername;
cout<<"voter's address";
cin>>voteraddr;
cout<<"phone number";
cin>>phone;
cout<<"voter's age";
cin>>age;
if(age>18)
strcpy(status,"eligible");
else
strcpy(status,"not eligible");
for(int i=0;i<10;i++);
}
}
void details(void)
{
char voterid[10];
char votername[30];
char voteraddr[30];
char phone[15];
int age;
char status[20];
{
cout<<"voter's information\n";
cout<<"--------------------\n";
cout<<"voter id:"<<voterid<<"\n";
cout<<"voter name:"<<votername<<"\n";
cout<<"voter addr:"<<voteraddr<<"\n";
cout<<"phone no:"<<phone<<"\n";
cout<<"voter's age:"<<age<<"\n";
cout<<"status:"<<status<<"\n";
cout<<"-----------------\n";
}
}
答案 0 :(得分:0)
此代码中存在许多错误:
analysis
和函数details
的本地函数。因此,您在analysis
函数中存储的数据中的数据无法在details
中访问。所以,将这些变量变为全局变量。analysis
中,您已将for
声明放在错误的位置。 for
循环不是迭代的。这就是为什么你不能多次插入数据的原因。details
中,没有for
循环来从数组中获取数据。voterid
是一个数组。因此,使用索引将值放入其中 - 例如:voterid[i]
其中i
是索引。iostream
代替iostream.h
。