用c语言编写联系人管理程序
这种编码有什么问题?我可以运行它,但一旦选择1号,就没有错误了。如果我的编码错误,请通知我。我还是个初学者,希望大家能在这方面帮助我。添加用c语言编写联系人管理程序,c,visual-studio-2012,system,structure,contact,C,Visual Studio 2012,System,Structure,Contact,这种编码有什么问题?我可以运行它,但一旦选择1号,就没有错误了。如果我的编码错误,请通知我。我还是个初学者,希望大家能在这方面帮助我。添加fflush(stdout)在这两个语句之间: struct contact { char name[20],email[20]; int hpnum; }add; int option; int main (void) { system("cls
fflush(stdout)代码>在这两个语句之间:
struct contact
{
char name[20],email[20];
int hpnum;
}add;
int option;
int main (void)
{
system("cls");
printf("==========Welcome to Jeffery's Contact System Management==========\n");
printf("\t\t\tContact System Main Menu\n");
printf("[1] Create a New Contact\n");
printf("[2] Modified Existing Contact\n");
printf("[3] Delete Existing Contact\n");
printf("[4] Search Existing Contact\n");
printf("[5] Exit\n");
printf("Please enter one of your option.\n");
scanf("%d",option);
switch(option)
{
//add new contact
case 1:
printf("Contact Name: ");
scanf("%s",&add.name);
printf("\nHandphone Number: ");
scanf("%d",&add.hpnum);
printf("\nE-mail: ");
scanf("%s",add.email);
break;
}
getch();
}
与未以\n
字符结尾的其他printf
语句相同
对于信息,s
转换说明符需要一个指向char
的指针,所以不要使用&
操作符,只需调用scanf(“%s”,add.name)
您忘记在选项变量之前添加和&
printf("Contact Name: ");
scanf("%s",&add.name);
应该是
scanf("%d",option);
scanf("%s",&add.name)
选项是一个int,因此这里需要scanf中的&
第二步:在add.name之前需要删除符号AND
应该是
scanf("%d",option);
scanf("%s",&add.name)
add.name是一个字符数组,我们不需要使用&
和%s
谢谢您的回答…现在我有另一个问题…我更改了代码…但是有一些问题…您能帮我检查一下吗?这是链接。。。错误是我留下了一个scanf的符号(“%d”,选项);它应该是scanf(“%d”&选项);另一个问题是字符串。。。它不应该是scanf(“%s”、&add.name);而不是scanf(“%s”,add.name);因为它是一个字符串,所以不能在扫描中使用符号和。。。