首页 > 解决方案 > 为什么我不能读取用户的输入

问题描述

这是问题

编写一个 C 程序来考虑 3 个银行账户 A、B 和 C(考虑人名、帐号和余额)。从用户那里获取所有必需的详细信息。将 2000 卢比从帐户 B 转移到 C,将 1000 卢比从 A 转移到 B。确保更改正确反映在所有银行对象中。最后,显示银行余额最高的客户名称。

这是我的代码

#include<stdio.h>
#include<string.h>

struct det
{
    char name;
    int acc;
    float bal;
};

struct det de[3];

void add(char from,char to,float *amo)
{
    int j;
    for(j=0;j<3;j++)
    {
        if(de[j].name==from)
        {
            de[j].bal=de[j].bal-*amo;
        }
        if(de[j].name==to)
        {
            de[j].bal=de[j].bal+*amo;
        }
    }
}

int main()
{
    int i,k;
    de[0].name='A';
    de[1].name='B';
    de[2].name='C';
    for(i=0;i<3;i++)
    {
        scanf("%d %f",&de[i].acc,&de[i].bal);
    }
    char from,to;
    float val;
    int tot,m;
    printf("How many times you want to transfer\n");
    scanf("%d",&tot);
    for(m=0;m<tot;m++)
    {
        printf("From\n");
        //gets(from);
        scanf("%c",&from);
        printf("To\n");
        scanf("%c",&to);
        //gets(to);
        printf("Amount\n");
        scanf("%f",&val);
        add(from,to,&val);
    }
    for(k=0;k<3;k++)
    {
        printf("%c %.2f",de[k].name,de[k].bal);
    }
}

我的代码的每一部分都运行良好,但它不接受输入并将其存储在变量中。我的代码有什么问题?

标签: cstruct

解决方案


推荐阅读