#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX 10000
int count = 0 ;
typedef struct DF_Member
{
char bankNumber[ 20 ] ;
char userName[ 20 ] ;
int account;
} Member;
void createBankAccount( Member members[ ] )
{
Member newMember;
// scanf("%s", newMember.bankNumber);
strcpy ( newMember.
bankNumber , "1234" ) ; printf ( "%s\n " , newMember.
bankNumber ) ;
// scanf("%s", newMember.userName);
strcpy ( newMember.
userName , "user" ) ; printf ( "%s\n " , newMember.
userName ) ;
// scanf("%d", &newMember.account);
newMember.account = 10 ;
printf ( "%d\n " , newMember.
account ) ;
//copy member info
strcpy ( members
[ count
] .
bankNumber , newMember.
bankNumber ) ; strcpy ( members
[ count
] .
userName , newMember.
userName ) ; members[ count++ ] .account = newMember.account ;
printf ( "%s\n " , members
[ 0 ] .
bankNumber ) ; printf ( "%s\n " , members
[ 0 ] .
userName ) ; printf ( "%d\n " , members
[ 0 ] .
account ) ; // printf("success function\n");
}
void input( Member members[ ] )
{
char bankNumber[ 15 ] ;
int inputMoney = 0 ;
// scanf("%s", bankNumber);
// scanf("%d", &inputMoney);
inputMoney = 20 ;
for ( int i= 0 ; i< 15 ; i++ )
{
if ( strcmp ( bankNumber
, members
[ i
] .
bankNumber ) == 0 ) {
members[ i] .account += inputMoney;
printf ( "bankNumber, members[i].bankNumber : %d\n " , members
[ i
] .
account ) ; break ;
}
}
}
void output( Member members[ ] )
{
char bankNumber[ 15 ] ;
int outputMoney = 0 ;
// scanf("%s", bankNumber);
// scanf("%d", &outputMoney);
for ( int i= 0 ; i< 15 ; i++ )
{
if ( strcmp ( bankNumber
, members
[ i
] .
bankNumber ) == 0 ) {
members[ i] .account -= outputMoney;
break ;
}
}
}
void printAllMemberInfo( Member members[ ] )
{
for ( int i= 0 ; i< 15 ; i++ )
{
printf ( "Account id : %s\n " , members
[ i
] .
bankNumber ) ; printf ( "User name : %s\n " , members
[ i
] .
userName ) ; printf ( "Account : %d\n " , members
[ i
] .
account ) ; }
}
int main( void )
{
short choice = 1 ;
Member
* members
= ( Member
* ) malloc ( sizeof ( Member
) * 20 ) ; //Member members[20];
while ( choice != 5 )
{
printf ( "----------MENU-----------\n " ) ; printf ( "1. create an acoount\n " ) ; printf ( "4. print all memebers info\n " ) ; printf ( "5. terminate service\n " ) ; // scanf("%d", &choice);
choice = 1 ;
switch ( choice)
{
case 1 : createBankAccount( members) ; break ;
case 2 : input( members) ; break ;
case 3 : output( members) ; break ;
case 4 : printAllMemberInfo( members) ; break ;
case 5 : free ( members
) ; printf ( "service terminate\n " ) ; break ; default : break ;
}
choice = 2 ;
switch ( choice)
{
case 1 : createBankAccount( members) ; break ;
case 2 : input( members) ; break ;
case 3 : output( members) ; break ;
case 4 : printAllMemberInfo( members) ; break ;
case 5 : free ( members
) ; printf ( "service terminate\n " ) ; break ; default : break ;
}
choice = 3 ;
switch ( choice)
{
case 1 : createBankAccount( members) ; break ;
case 2 : input( members) ; break ;
case 3 : output( members) ; break ;
case 4 : printAllMemberInfo( members) ; break ;
case 5 : free ( members
) ; printf ( "service terminate\n " ) ; break ; default : break ;
}
choice = 4 ;
switch ( choice)
{
case 1 : createBankAccount( members) ; break ;
case 2 : input( members) ; break ;
case 3 : output( members) ; break ;
case 4 : printAllMemberInfo( members) ; break ;
case 5 : free ( members
) ; printf ( "service terminate\n " ) ; break ; default : break ;
}
choice = 5 ;
switch ( choice)
{
case 1 : createBankAccount( members) ; break ;
case 2 : input( members) ; break ;
case 3 : output( members) ; break ;
case 4 : printAllMemberInfo( members) ; break ;
case 5 : free ( members
) ; printf ( "service terminate\n " ) ; break ; default : break ;
}
break ;
}
return 0 ;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KI2luY2x1ZGUgPHN0cmluZy5oPgojZGVmaW5lIE1BWCAxMDAwMAoKaW50IGNvdW50ID0gMDsKCnR5cGVkZWYgc3RydWN0IERGX01lbWJlcgp7CiAgICBjaGFyIGJhbmtOdW1iZXJbMjBdOwogICAgY2hhciB1c2VyTmFtZVsyMF07CiAgICBpbnQgYWNjb3VudDsKfU1lbWJlcjsKCnZvaWQgY3JlYXRlQmFua0FjY291bnQoTWVtYmVyIG1lbWJlcnNbXSkKewogICAgTWVtYmVyIG5ld01lbWJlcjsKICAgIHByaW50ZigiW+qzhOyijCDqsJzshKRdXG4iKTsKCiAgICBwcmludGYoIkFjY291bnQgaWQgOiAiKTsKLy8gICAgc2NhbmYoIiVzIiwgbmV3TWVtYmVyLmJhbmtOdW1iZXIpOwogICAgc3RyY3B5KG5ld01lbWJlci5iYW5rTnVtYmVyLCAiMTIzNCIpOwogICAgcHJpbnRmKCIlc1xuIiwgbmV3TWVtYmVyLmJhbmtOdW1iZXIpOwoKICAgIHByaW50ZigiVXNlciBuYW1lIDogIik7Ci8vICAgIHNjYW5mKCIlcyIsIG5ld01lbWJlci51c2VyTmFtZSk7CiAgICBzdHJjcHkobmV3TWVtYmVyLnVzZXJOYW1lLCAidXNlciIpOwogICAgcHJpbnRmKCIlc1xuIiwgbmV3TWVtYmVyLnVzZXJOYW1lKTsKCiAgICBwcmludGYoImlucHV0IDogIik7Ci8vICAgIHNjYW5mKCIlZCIsICZuZXdNZW1iZXIuYWNjb3VudCk7CiAgICBuZXdNZW1iZXIuYWNjb3VudCA9IDEwOwogICAgcHJpbnRmKCIlZFxuIiwgbmV3TWVtYmVyLmFjY291bnQpOwoKICAgIC8vY29weSBtZW1iZXIgaW5mbwogICAgc3RyY3B5KG1lbWJlcnNbY291bnRdLmJhbmtOdW1iZXIsIG5ld01lbWJlci5iYW5rTnVtYmVyKTsKICAgIHN0cmNweShtZW1iZXJzW2NvdW50XS51c2VyTmFtZSwgbmV3TWVtYmVyLnVzZXJOYW1lKTsKICAgIG1lbWJlcnNbY291bnQrK10uYWNjb3VudCA9IG5ld01lbWJlci5hY2NvdW50OwoKICAgIHByaW50ZigiJXNcbiIsIG1lbWJlcnNbMF0uYmFua051bWJlcik7CiAgICBwcmludGYoIiVzXG4iLCBtZW1iZXJzWzBdLnVzZXJOYW1lKTsKICAgIHByaW50ZigiJWRcbiIsIG1lbWJlcnNbMF0uYWNjb3VudCk7Ci8vICAgIHByaW50Zigic3VjY2VzcyBmdW5jdGlvblxuIik7Cn0KCgp2b2lkIGlucHV0KE1lbWJlciBtZW1iZXJzW10pCnsKICAgIGNoYXIgYmFua051bWJlclsxNV07CiAgICBpbnQgaW5wdXRNb25leSA9IDA7CiAgICBwcmludGYoIkFjY291bnQgaWQgOiAiKTsKLy8gICAgc2NhbmYoIiVzIiwgYmFua051bWJlcik7CiAgICBzdHJjcHkoYmFua051bWJlciwgIjQzMjEiKTsKICAgIHByaW50ZigiaW5wdXQgOiAiKTsKLy8gICAgc2NhbmYoIiVkIiwgJmlucHV0TW9uZXkpOwogICAgaW5wdXRNb25leSA9IDIwOwoKICAgIGZvcihpbnQgaT0wOyBpPDE1OyBpKyspCiAgICB7CiAgICAgICAgaWYoc3RyY21wKGJhbmtOdW1iZXIsIG1lbWJlcnNbaV0uYmFua051bWJlcikgPT0gMCkKICAgICAgICB7CiAgICAgICAgICAgIG1lbWJlcnNbaV0uYWNjb3VudCArPSBpbnB1dE1vbmV5OwpwcmludGYoImJhbmtOdW1iZXIsIG1lbWJlcnNbaV0uYmFua051bWJlciA6ICVkXG4iLCBtZW1iZXJzW2ldLmFjY291bnQpOwogICAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICB9Cn0KCgp2b2lkIG91dHB1dChNZW1iZXIgbWVtYmVyc1tdKQp7CiAgICBjaGFyIGJhbmtOdW1iZXJbMTVdOwogICAgaW50IG91dHB1dE1vbmV5ID0gMDsKICAgIHByaW50ZigiQWNjb3VudCBpZCA6ICIpOwovLyAgICBzY2FuZigiJXMiLCBiYW5rTnVtYmVyKTsKICAgIHByaW50Zigib3V0cHV0IDogIik7Ci8vICAgIHNjYW5mKCIlZCIsICZvdXRwdXRNb25leSk7CiAgICBmb3IoaW50IGk9MDsgaTwxNTsgaSsrKQogICAgewogICAgICAgIGlmKHN0cmNtcChiYW5rTnVtYmVyLCBtZW1iZXJzW2ldLmJhbmtOdW1iZXIpID09IDApCiAgICAgICAgewogICAgICAgICAgICBtZW1iZXJzW2ldLmFjY291bnQgLT0gb3V0cHV0TW9uZXk7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgIH0KfQoKCgp2b2lkIHByaW50QWxsTWVtYmVySW5mbyhNZW1iZXIgbWVtYmVyc1tdKQp7CiAgICBmb3IoaW50IGk9MDsgaTwxNTsgaSsrKQogICAgewogICAgICAgIHByaW50ZigiQWNjb3VudCBpZCA6ICVzXG4iLCBtZW1iZXJzW2ldLmJhbmtOdW1iZXIpOwogICAgICAgIHByaW50ZigiVXNlciBuYW1lIDogJXNcbiIsIG1lbWJlcnNbaV0udXNlck5hbWUpOwogICAgICAgIHByaW50ZigiQWNjb3VudCA6ICVkXG4iLCBtZW1iZXJzW2ldLmFjY291bnQpOwogICAgICAgIHByaW50ZigiXG4iKTsKICAgIH0KfQoKCgppbnQgbWFpbih2b2lkKQp7CiAgICBzaG9ydCBjaG9pY2UgPSAxOwogICAgTWVtYmVyICogbWVtYmVycyA9IChNZW1iZXIgKiltYWxsb2Moc2l6ZW9mKE1lbWJlcikqMjApOwogICAgLy9NZW1iZXIgbWVtYmVyc1syMF07CiAgICB3aGlsZShjaG9pY2UgIT0gNSkKICAgIHsKICAgICAgICBwcmludGYoIi0tLS0tLS0tLS1NRU5VLS0tLS0tLS0tLS1cbiIpOwogICAgICAgIHByaW50ZigiMS4gY3JlYXRlIGFuIGFjb291bnRcbiIpOwogICAgICAgIHByaW50ZigiMi4gaW5wdXQgbW9uZXlcbiIpOwogICAgICAgIHByaW50ZigiMy4gb3V0cHV0IG1vbmV5XG4iKTsKICAgICAgICBwcmludGYoIjQuIHByaW50IGFsbCBtZW1lYmVycyBpbmZvXG4iKTsKICAgICAgICBwcmludGYoIjUuIHRlcm1pbmF0ZSBzZXJ2aWNlXG4iKTsKICAgICAgICBwcmludGYoIlxuY2hvaWNlIDogIik7Ci8vICAgICAgICBzY2FuZigiJWQiLCAmY2hvaWNlKTsKY2hvaWNlID0gMTsKICAgICAgICBzd2l0Y2goY2hvaWNlKQogICAgICAgIHsKICAgICAgICBjYXNlIDE6IGNyZWF0ZUJhbmtBY2NvdW50KG1lbWJlcnMpOyAgICBicmVhazsKICAgICAgICBjYXNlIDI6IGlucHV0KG1lbWJlcnMpOyAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlIDM6IG91dHB1dChtZW1iZXJzKTsgICAgICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlIDQ6IHByaW50QWxsTWVtYmVySW5mbyhtZW1iZXJzKTsgICBicmVhazsKICAgICAgICBjYXNlIDU6IGZyZWUobWVtYmVycyk7ICBwcmludGYoInNlcnZpY2UgdGVybWluYXRlXG4iKTsgICAgICAgIGJyZWFrOwogICAgICAgIGRlZmF1bHQ6IGJyZWFrOwogICAgICAgIH0KY2hvaWNlID0gMjsKICAgICAgICBzd2l0Y2goY2hvaWNlKQogICAgICAgIHsKICAgICAgICBjYXNlIDE6IGNyZWF0ZUJhbmtBY2NvdW50KG1lbWJlcnMpOyAgICBicmVhazsKICAgICAgICBjYXNlIDI6IGlucHV0KG1lbWJlcnMpOyAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlIDM6IG91dHB1dChtZW1iZXJzKTsgICAgICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlIDQ6IHByaW50QWxsTWVtYmVySW5mbyhtZW1iZXJzKTsgICBicmVhazsKICAgICAgICBjYXNlIDU6IGZyZWUobWVtYmVycyk7ICBwcmludGYoInNlcnZpY2UgdGVybWluYXRlXG4iKTsgICAgICAgIGJyZWFrOwogICAgICAgIGRlZmF1bHQ6IGJyZWFrOwogICAgICAgIH0KY2hvaWNlID0gMzsKICAgICAgICBzd2l0Y2goY2hvaWNlKQogICAgICAgIHsKICAgICAgICBjYXNlIDE6IGNyZWF0ZUJhbmtBY2NvdW50KG1lbWJlcnMpOyAgICBicmVhazsKICAgICAgICBjYXNlIDI6IGlucHV0KG1lbWJlcnMpOyAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlIDM6IG91dHB1dChtZW1iZXJzKTsgICAgICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlIDQ6IHByaW50QWxsTWVtYmVySW5mbyhtZW1iZXJzKTsgICBicmVhazsKICAgICAgICBjYXNlIDU6IGZyZWUobWVtYmVycyk7ICBwcmludGYoInNlcnZpY2UgdGVybWluYXRlXG4iKTsgICAgICAgIGJyZWFrOwogICAgICAgIGRlZmF1bHQ6IGJyZWFrOwogICAgICAgIH0KY2hvaWNlID0gNDsKICAgICAgICBzd2l0Y2goY2hvaWNlKQogICAgICAgIHsKICAgICAgICBjYXNlIDE6IGNyZWF0ZUJhbmtBY2NvdW50KG1lbWJlcnMpOyAgICBicmVhazsKICAgICAgICBjYXNlIDI6IGlucHV0KG1lbWJlcnMpOyAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlIDM6IG91dHB1dChtZW1iZXJzKTsgICAgICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlIDQ6IHByaW50QWxsTWVtYmVySW5mbyhtZW1iZXJzKTsgICBicmVhazsKICAgICAgICBjYXNlIDU6IGZyZWUobWVtYmVycyk7ICBwcmludGYoInNlcnZpY2UgdGVybWluYXRlXG4iKTsgICAgICAgIGJyZWFrOwogICAgICAgIGRlZmF1bHQ6IGJyZWFrOwogICAgICAgIH0KY2hvaWNlID0gNTsKICAgICAgICBzd2l0Y2goY2hvaWNlKQogICAgICAgIHsKICAgICAgICBjYXNlIDE6IGNyZWF0ZUJhbmtBY2NvdW50KG1lbWJlcnMpOyAgICBicmVhazsKICAgICAgICBjYXNlIDI6IGlucHV0KG1lbWJlcnMpOyAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlIDM6IG91dHB1dChtZW1iZXJzKTsgICAgICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlIDQ6IHByaW50QWxsTWVtYmVySW5mbyhtZW1iZXJzKTsgICBicmVhazsKICAgICAgICBjYXNlIDU6IGZyZWUobWVtYmVycyk7ICBwcmludGYoInNlcnZpY2UgdGVybWluYXRlXG4iKTsgICAgICAgIGJyZWFrOwogICAgICAgIGRlZmF1bHQ6IGJyZWFrOwogICAgICAgIH0KICAgIGJyZWFrOwogICAgfQogICAgcmV0dXJuIDA7Cn0KCg==