vendredi 10 novembre 2017

C code - Split random list name from txt file into groups of 5 with different club name and write into new file

I have a list of 30 names from txt file. it also include nick name, club, and points. i want to randomly split the names into 6 groups of 5 per-group. Im very new with c programming, please help me.

#include <stdio.h>
#include <stdlib.h>

#define p printf
#define s scanf

FILE *tf;

struct listName
{
    char name[100];
    char nickname[50];
    char club[50];
    int point;
};

int main()
{
    struct listName ln[30];

    //open file to read
    tf = fopen("ListnamePlayer.txt","r");

    int i;
    //read data from file
    for(i=0;i<30;i++)
    {
        fscanf(tf,"%[^\n]\n",ln[i].name);
        fscanf(tf,"%[^\n]\n",ln[i].nickname);
        fscanf(tf,"%[^\n]\n",ln[i].club);
        fscanf(tf,"%i\n",&ln[i].point);
    }

    //print data from file
    p("\n\n");
    p("*****************************************************************************************\n");
    p("| No |                Name                           Nickname       Club      Points    |\n");
    p("*****************************************************************************************\n");
    int j=1;
    for(i=0;i<30;i++)
    {
            p("| %2i.| ",j++);
            p(" %-45s ",ln[i].name);
            p(" %-10s ",ln[i].nickname);
            p(" %-10s ",ln[i].club);
            p(" %-5i    |\n",ln[i].point);
            p("-----------------------------------------------------------------------------------------\n");
    }
    fclose(tf);
    return 0;
}

but i want it with different club and write it into a new file which looks like this

AHMAD NAIM BIN RUKMAN
Naim
Chelsea
1000
ANITH IZYAN BT ABDUL RAHMAN
Yan
Dortmund
1000
IMRAN HARITH BIN NOOR HASSAN
Meran
Juventus
1000
NURUL KHALIL SUFFI BIN AZIZ
Sufi
Arsenal
1000
MUHAMMAD NAQIUDDIN BIN JAAFAR
Naqiu
Bayern
1000

AIMAN HADI BIN BAHAMAM
Adi
Chelsea
1000
FARRAH MASTURAH LUBIS BINTI MD YUSOF
Farah
Dortmund
1000
NOOR RABIAH BINTI JAMINGON
Rab
West Ham
1000
MOHAMAD FAZRUL NAZMI BIN MOHAMED ISA
Faz
Juventus
1000
ZULKARNAIN BIN GHAZALI
Kanai
Arsenal
1000

AIMAN SYAZANA BINTI MUHIDDIN
Man
Chelsea
1000
HANIES AZYLEEA BINTI MOHD AZMAN
Hani
Dortmund
1000
MOHD KAMAL BIN SUHAIMI
Kamal
Bayern
1000
NABILAH AIMAN BINTI AHMAD RADZI
Aiman
West Ham
1000
MOHAMAD SYAFIQ BIN MOHAMMAD ZAKI
Fiq
Juventus
1000

HUDA BINTI SEHABUDIN
Huda
Dortmund
1000
IZZATI BALQIS BINTI A RAZAK
Qis
Juventus
1000
SHARIFAH NURNADHIRAH BINTI SYED ABDUL HAMID
Irah
Arsenal
1000
NIK AHMAD ZAIM BIN NIK MUHD KHUZAIDIN
Zaim
West Ham
1000
MOHD SHAFIQ IZZUDDIN BIN MOHD YUSOFF
Izudin
Bayern
1000

AMIR HAFIZI BIN MAZLAN
Amir
Chelsea
1000
MUHAMAD AMIR BIN AHMAD SAJURI
Amir
Bayern
1000
SYED NAZIRUL HARITH BIN SYED AB RAHMAN HILMI
Syed
Arsenal
1000
MUHAMMAD RASULUL HAKIM BIN MAT DAUD
Rasul
West Ham
1000
MOHAMMAD ANAS AMIR BIN ALWI
Rima Sana
Juventus
1000


AMIRA SYAHMINA BINTI SUHAIMI
Mina
Chelsea
1000
AZFAR HAKIM BIN KAMARIZAN
Akim
Dortmund
1000
MUHAMAD NAZREEN FAZRIQ BIN AZLAN
Naz
Bayern
1000
NUR ASHRAF ISKANDAR BIN OSMAN
Ashraf
West Ham
1000
SITI FARHANA BINTI MAT MAZALI
Anna
Arsenal
1000

This is my text file

AHMAD NAIM BIN RUKMAN
Naim
Chelsea
1000
AIMAN HADI BIN BAHAMAM
Adi
Chelsea
1000
AIMAN SYAZANA BINTI MUHIDDIN
Man
Chelsea
1000
AMIR HAFIZI BIN MAZLAN
Amir
Chelsea
1000
AMIRA SYAHMINA BINTI SUHAIMI
Mina
Chelsea
1000
ANITH IZYAN BT ABDUL RAHMAN
Yan
Dortmund
1000
AZFAR HAKIM BIN KAMARIZAN
Akim
Dortmund
1000
FARRAH MASTURAH LUBIS BINTI MD YUSOF
Farah
Dortmund
1000
HANIES AZYLEEA BINTI MOHD AZMAN
Hani
Dortmund
1000
HUDA BINTI SEHABUDIN
Huda
Dortmund
1000
IMRAN HARITH BIN NOOR HASSAN
Meran
Juventus
1000
IZZATI BALQIS BINTI A RAZAK
Qis
Juventus
1000
MOHAMAD FAZRUL NAZMI BIN MOHAMED ISA
Faz
Juventus
1000
MOHAMAD SYAFIQ BIN MOHAMMAD ZAKI
Fiq
Juventus
1000
MOHAMMAD ANAS AMIR BIN ALWI
Rima Sana
Juventus
1000
MOHD KAMAL BIN SUHAIMI
Kamal
Bayern
1000
MOHD SHAFIQ IZZUDDIN BIN MOHD YUSOFF
Izudin
Bayern
1000
MUHAMAD AMIR BIN AHMAD SAJURI
Amir
Bayern
1000
MUHAMAD NAZREEN FAZRIQ BIN AZLAN
Naz
Bayern
1000
MUHAMMAD NAQIUDDIN BIN JAAFAR
Naqiu
Bayern
1000
MUHAMMAD RASULUL HAKIM BIN MAT DAUD
Rasul
West Ham
1000
NABILAH AIMAN BINTI AHMAD RADZI
Aiman
West Ham
1000
NIK AHMAD ZAIM BIN NIK MUHD KHUZAIDIN
Zaim
West Ham
1000
NOOR RABIAH BINTI JAMINGON
Rab
West Ham
1000
NUR ASHRAF ISKANDAR BIN OSMAN
Ashraf
West Ham
1000
NURUL KHALIL SUFFI BIN AZIZ
Sufi
Arsenal
1000
SHARIFAH NURNADHIRAH BINTI SYED ABDUL HAMID
Irah
Arsenal
1000
SITI FARHANA BINTI MAT MAZALI
Anna
Arsenal
1000
SYED NAZIRUL HARITH BIN SYED AB RAHMAN HILMI
Syed
Arsenal
1000
ZULKARNAIN BIN GHAZALI
Kanai
Arsenal
1000




Aucun commentaire:

Enregistrer un commentaire