标题:为什么输入id后 程序就会卡死呢呢??
只看楼主
a15022606145
Rank: 1
等 级:新手上路
帖 子:75
专家分:0
注 册:2015-7-11
 问题点数:0 回复次数:1 
为什么输入id后 程序就会卡死呢呢??
程序代码:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

struct Account
{
    unsigned int id;
    char citizen_id[19];
    char name[32];
    char address[128];
    unsigned int balance; // 余额

    Account* next; 
};

int intput(Account * p)
{
    printf("ID:\n");
    scanf("%d\n",p->id);
    printf("身份证:\n");
    scanf("%s\n",p->citizen_id);
    if(sizeof(p->citizen_id)!=18)
        return 0;
    printf("name:\n");
    scanf("%s\n",p->name);
    printf("adress:\n");
    scanf("%s\n",p->address);
    printf("balance:\n");
    scanf("%d\n",p->balance);
    return 0;
}

int main()
{
    Account * a = (Account *)malloc(sizeof(Account));
    if(intput(a))
    {
        printf("输入成功\n!");
    }
    else
    {
        printf("输入失败\n!");
    }
    free(a);
    return 0;
}



这是一个函数 ,为结构体赋值
搜索更多相关主题的帖子: 输入 int char printf scanf 
2018-08-25 09:30
zhangchm2018
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:32
专家分:129
注 册:2018-8-18
得分:0 
int intput(struct Account * p)
{
    printf("ID:\n");
    scanf("%d",&p->id);
    printf("身份证:\n");
    scanf("%s",p->citizen_id);
    if(strlen(p->citizen_id)!=18)
        return 0;
    printf("name:\n");
    scanf("%s",p->name);
    printf("adress:\n");
    scanf("%s",p->address);
    printf("balance:\n");
    scanf("%d",&p->balance);
    return 0;
}

scanf() 再学习一下吧
2018-08-25 10:52



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-489418-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.486771 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved