Professional Documents
Culture Documents
Exercise of Struct and Union
Exercise of Struct and Union
Exercise of Struct and Union
1. Code:
#include <stdio.h>
struct dob{
int date;
char month[800];
int year;
};
struct address{
char streetname[500];
char number[500];
char city[500];
char province[500];
};
struct student{
char studentnumber[3000];
char studentname[3000];
struct address studentaddress[length];
struct dob studentdateofbirth[length];
};
int main(){
int i = 0;
struct student students[length];
struct address studentshome[length];
struct dob studentsbirthday[length];
for(i = 0; i < length; i++){
printf("Input student number for element #%d: ", i+1);
scanf("%[^\n]", &students[i].studentnumber);
fflush(stdin);
printf("Input student name for element #%d: ", i+1);
scanf("%[^\n]", &students[i].studentname);
fflush(stdin);
printf("Input student\'s home\'s street name for address in element #%d: ",
i+1);
scanf("%[^\n]", &studentshome[i].streetname);
fflush(stdin);
printf("Input student\'s home\'s number for address in element #%d: ",
i+1);
scanf("%[^\n]", &studentshome[i].number);
fflush(stdin);
printf("Input student\'s hometown for address in element #%d: ", i+1);
scanf("%[^\n]", &studentshome[i].city);
fflush(stdin);
printf("Input student\'s domain province for address in element #%d: ",
i+1);
scanf("%[^\n]", &studentshome[i].province);
fflush(stdin);
printf("Input student\'s date of birth for element #%d: ", i+1);
scanf("%d", &studentsbirthday[i].date);
fflush(stdin);
printf("Input student\'s month of birth for element #%d: ", i+1);
scanf("%[^\n]", &studentsbirthday[i].month);
fflush(stdin);
printf("Input student\'s year of birth for element #%d: ", i+1);
scanf("%[^\n]", &studentsbirthday[i].year);
fflush(stdin);
}
for(i = 0; i < length; i++){
printf("\n");
printf("Data %d: ", i+1);
printf("\n");
printf("Student number: %s ", students[i].studentnumber);
printf("\n");
printf("Student name: %s ", students[i].studentname);
printf("\n");
printf("Student\'s home\'s street name: %s ",
studentshome[i].streetname);
printf("\n");
printf("Student\'s home\'s number: %s ", studentshome[i].number);
printf("\n");
printf("Student\'s hometown: %s ", studentshome[i].city);
printf("\n");
printf("Student\'s domain province: %s ",
studentshome[i].province);
printf("\n");
printf("Student\'s date of birth: %s ", studentsbirthday[i].date);
printf("\n");
printf("Student\'s month of birth: %s ", studentsbirthday[i].month);
printf("\n");
printf("Student\'s year of birth: %s ", studentsbirthday[i].year);
printf("\n");
}
return 0;
}
2. (Same Code)
3. Code:
#include <stdio.h>
struct automobile {
int year;
char model[8];
int engine_power;
float weight;
};
int main(void){
int i, length = 5;
struct automobile cars[length];
for(i = 0; i < length; i++){
printf("Insert Car year: ");
scanf("%d", &cars[i].year);
fflush(stdin);
printf("Insert Car Model: ");
scanf("%[^\n]", &cars[i].model);
fflush(stdin);
printf("Insert Car Engine Power: ");
scanf("%d", &cars[i].engine_power);
fflush(stdin);
printf("Insert Car Weight: ");
scanf("%f", &cars[i].weight);
fflush(stdin);
printf("\n");
}
return 1;
}
4. Code:
#include <stdio.h>
struct ipkmhs{
char nim[11];
char name[30];
float gpa;
};
int main(void){
int length = 5, i, j;
struct ipkmhs ipk[length];
for(i = 0; i < length; i++){
printf("Input NIM of Student no. %d: ", i + 1);
scanf("%[^\n]", &ipk[i].nim);
fflush(stdin);
printf("Input Name of Student no. %d: ", i + 1);
scanf("%[^\n]", &ipk[i].name);
fflush(stdin);
printf("Input GPA of Student no. %d: ", i + 1);
scanf("%f", &ipk[i].gpa);
fflush(stdin);
}
5. Code:
#include <stdio.h>
struct studentscore{
char nim[11];
char name[30];
char subjectCode[5];
int sks;
char grade[20];
};
int main(){
studentscore score;
printf("Insert your NIM!\nNIM: ");
scanf("%[^\n]", &score.nim);
fflush(stdin);
printf("Insert your name!\nName: ");
scanf("%[^\n]", &score.name);
fflush(stdin);
printf("Insert subject code!\nSubject code: ");
scanf("%[^\n]", &score.subjectCode);
fflush(stdin);
printf("Insert SKS!\nSKS: ");
scanf("%d", &score.sks);
fflush(stdin);
printf("Insert your grade!\nGrade: ");
scanf("%s", &score.grade);
fflush(stdin);
/*Data*/
printf("\nStudent\'s NIM: %s\n", score.nim);
printf("Student\'s Name: %s\n", score.name);
printf("Subject code: %s\n", score.subjectCode);
printf("SKS: %d\n", score.sks);
printf("Student\'s Grade: %s\n", score.grade);
return 0;
}
6. Code:
#include <stdio.h>
#include <string.h>
int weightgrade;
struct studentscore{
char nim[11];
char name[30];
char subjectCode[5];
int sks;
char grade[20];
}score;
int main(){
printf("Insert your NIM!\nNIM: ");
scanf("%[^\n]", &score.nim);
fflush(stdin);
printf("Insert your name!\nName: ");
scanf("%[^\n]", &score.name);
fflush(stdin);
printf("Insert subject code!\nSubject code: ");
scanf("%[^\n]", &score.subjectCode);
fflush(stdin);
printf("Insert SKS!\nSKS: ");
scanf("%d", &score.sks);
fflush(stdin);
printf("Insert your grade!\nGrade: ");
scanf("%[^\n]", &score.grade);
fflush(stdin);
getWeightGrade(score.grade);
/*Data*/
printf("\nStudent\'s NIM: %s\n", score.nim);
printf("Student\'s Name: %s\n", score.name);
printf("Subject code: %s\n", score.subjectCode);
printf("SKS: %d\n", score.sks);
printf("Student\'s Grade: %s\n", score.grade);
7. Code:
#include <stdio.h>
#include <conio.h>
union convert{
unsigned int dw;
unsigned char b[4];
}converteddw;
int main(){
converteddw.dw = 0x12345678;
printf("%x\n", converteddw.b[0]);
printf("%x\n", converteddw.b[1]);
printf("%x\n", converteddw.b[2]);
printf("%x\n", converteddw.b[3]);
return 0;
}