codepad
[
create a new paste
]
login
|
about
Language:
C
C++
D
Haskell
Lua
OCaml
PHP
Perl
Plain Text
Python
Ruby
Scheme
Tcl
#include <stdio.h> #include <malloc.h> #include <string.h> struct student{ int number;//学生番号 char name[10];//苗字 struct student *next; }; int main(){ int in_number; char in_name[10]; struct student *pointer_root; pointer_root = (struct student *)malloc( sizeof(struct student) ); printf("今からデータを自動的に登録して、リスト構造を作成します。\n"); struct student *pointer_student; pointer_student = pointer_root; printf(" %d 番目の学生の学籍番号と氏名を登録します。\n", 1); pointer_student->number = 175; strcpy(pointer_student->name, "tanaka"); printf(" %d 番目の学生の学籍番号と氏名を登録します。\n", 2); pointer_student->next = (struct student *)malloc( sizeof(struct student) ); pointer_student = pointer_student->next; pointer_student->number = 176; strcpy(pointer_student->name, "yamada"); printf(" %d 番目の学生の学籍番号と氏名を登録します。\n", 3); pointer_student->next = (struct student *)malloc( sizeof(struct student) ); pointer_student = pointer_student->next; pointer_student->number = 177; strcpy(pointer_student->name, "nakamura"); printf(" %d 番目の学生の学籍番号と氏名を登録します。\n", 4); pointer_student->next = (struct student *)malloc( sizeof(struct student) ); pointer_student = pointer_student->next; pointer_student->number = 178; strcpy(pointer_student->name, "aoki"); printf(" %d 番目の学生の学籍番号と氏名を登録します。\n", 5); pointer_student->next = (struct student *)malloc( sizeof(struct student) ); pointer_student = pointer_student->next; pointer_student->number = 179; strcpy(pointer_student->name, "katoh"); pointer_student->next = NULL; printf("\n"); printf("名簿に登録された学生のリストを表示します。\n"); pointer_student = pointer_root; while(1){ printf( "%d %s \n", pointer_student->number , pointer_student->name ); pointer_student = pointer_student->next; if( pointer_student == NULL ){ break; } } printf("\n"); printf("リスト構造の最初に 新しい学生を追加します。\n"); printf("追加する学生番号と氏名を入力してください。"); scanf("%d %s", &in_number , in_name); pointer_student = pointer_root; while(1){ if(pointer_student->next == NULL ){break;} pointer_student = pointer_student->next; } pointer_student->next = (struct student *)malloc( sizeof(struct student) ); pointer_student = pointer_student->next; pointer_student->number = in_number; strcpy(pointer_student->name, in_name); pointer_student->next = NULL; printf("\n"); printf("学生が追加登録されたので、名簿に登録された学生のリストを表示します。\n"); pointer_student = pointer_root; while(1){ printf( "%d %s \n", pointer_student->number , pointer_student->name ); pointer_student = pointer_student->next; if( pointer_student == NULL ){ break; } } return 0; }
Private
[
?
]
Run code
Submit