Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用c语言编写联系人管理程序_C_Visual Studio 2012_System_Structure_Contact - Fatal编程技术网

用c语言编写联系人管理程序

用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

这种编码有什么问题?我可以运行它,但一旦选择1号,就没有错误了。如果我的编码错误,请通知我。我还是个初学者,希望大家能在这方面帮助我。

添加
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);因为它是一个字符串,所以不能在扫描中使用符号和。。。