先頭を構造体に格納して、入れ替えするんですね?
最後のstart=head.nextは同じ意味ではないですか?
head.next=startでは出来ませんでした。
検索結果 48 件
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: ポインタ リスト交換
- 返信数: 28
- 閲覧数: 11232
Re: ポインタ リスト交換
どのような働きをするんでしょうか?
すみません。
すみません。
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: ポインタ リスト交換
- 返信数: 28
- 閲覧数: 11232
Re: ポインタ リスト交換
コアダンプは直しました。自分のミスです。
head.nextの意味教えて下さい。
head.nextの意味教えて下さい。
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: ポインタ リスト交換
- 返信数: 28
- 閲覧数: 11232
Re: ポインタ リスト交換
あと、次の値を入力するとコアダンプがでます。Linuxです。
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: ポインタ リスト交換
- 返信数: 28
- 閲覧数: 11232
Re: ポインタ リスト交換
head.nextって何してる処理ですか?
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: ポインタ リスト交換
- 返信数: 28
- 閲覧数: 11232
Re: ポインタ リスト交換
とりあえず、/**/の部分を二つ考えました。1,2どちらもうまくできません。 ご指摘よろしくお願いします「。 1、 while(d1 > 0 && d2 > 0) { p1 = NULL; p2 = NULL; /*選択する要素を探索する*/ for(p=start;p!=NULL;p=p->next) { if(p->data == d1) { p1 = p; } else if(p->data == d2) { p2 = p; } if(p1 != NULL && p2 != NULL) { q = p1->next; p1->next = p2->next; p2->next = q; ...
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: ポインタ リスト交換
- 返信数: 28
- 閲覧数: 11232
Re: ポインタ リスト交換
while(d1 > 0 && d2 > 0) { p1 = NULL; p2 = NULL; /*選択する要素を探索する*/ for(p=start;p!=NULL;p=p->next) { if(p->data == d1) { p1 = p; } else if(p->data == d2) { p2 = p; } if(p1 != NULL && p2 != NULL) { q = p1->next; p1->next = p2->next; p2->next = q; } } while(d1 > 0 && d2 > 0) { p1 = NULL; p2...
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: ポインタ リスト交換
- 返信数: 28
- 閲覧数: 11232
Re: ポインタ リスト交換
for(p = start; p != NULL; && d1! = p->data; p = p->next)
for(p = start; p != NULL; && d2! = p->data; p = p->next)
この条件が使えません。
for(p = start; p != NULL; && d2! = p->data; p = p->next)
この条件が使えません。
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: ポインタ リスト交換
- 返信数: 28
- 閲覧数: 11232
Re: ポインタ リスト交換
int型であるd1,d2の入れ替えがわかりません。
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: ポインタ リスト交換
- 返信数: 28
- 閲覧数: 11232
Re: ポインタ リスト交換
d1->next=d2;
d2->start=d1;
これって使えますか?
d2->start=d1;
これって使えますか?
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: ポインタ リスト交換
- 返信数: 28
- 閲覧数: 11232
Re: ポインタ リスト交換
12345678910
リストの中から、2つ選択して入れ替えるということです。
リストの中から、2つ選択して入れ替えるということです。
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: ポインタ リスト交換
- 返信数: 28
- 閲覧数: 11232
Re: ポインタ リスト交換
12345678910
たとえば、d1を2.d2を9だったら、
19345678210
となるようにしたいです。
たとえば、d1を2.d2を9だったら、
19345678210
となるようにしたいです。
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: ポインタ リスト交換
- 返信数: 28
- 閲覧数: 11232
ポインタ リスト交換
こんばんわ。いつもお世話になっています。 リストの中から、二つを入力して、要素を入れ替えるプログラムがわかりません。 startからNULLまで(d1、d2)どうやって見るのか。 なお、/**/の部分に追加するようにしたいです。よろしくお願いします。 #include<stdio.h> #include<stdlib.h> /*構造体の宣言*/ struct node { int data; struct node *next; }; void print_list(struct node *start); int main(void) { /*変数宣言*/ struct node *star...
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: ポインタによる出力
- 返信数: 13
- 閲覧数: 6545
Re: ポインタによる出力
すみません。一様、図に書いてやっていたのですがfor文がうかばなかったのです。
随時、理解していきます。また、参考にさせていただきます。
随時、理解していきます。また、参考にさせていただきます。
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: ポインタによる出力
- 返信数: 13
- 閲覧数: 6545
Re: ポインタによる出力
指摘ありがとうございます。一様やってみましたが,インプットナンバーがループしてしまうときがあります。 #include<stdio.h> #include<stdlib.h> /*構造体の宣言*/ struct node { int data; struct node *next; }; int main(void) { /*変数宣言*/ struct node *start, *p, *end, *num, *q; int d; /*リストを初期化する*/ start = end = NULL; /*データを入力する*/ printf("Input Number : "); scanf("%...
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: ポインタによる出力
- 返信数: 13
- 閲覧数: 6545
Re: ポインタによる出力
while(d > 0) { /* 新規ノードを作成する */ p = malloc(sizeof(struct node)); p->data = d; p->next = NULL; if (start == NULL) { /* リストが空なら先頭の位置を更新する */ start = num = p; } else { /* 新規ノードをリストの末尾に接続する */ num->next = p; /* リストの末尾の位置を更新する */ num = p; } if(start->data<=p->data) { start->next = p; p ->next = NULL; } ...
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: ポインタによる出力
- 返信数: 13
- 閲覧数: 6545
ポインタによる出力
#include<stdio.h> #include<stdlib.h> /*構造体の宣言*/ struct node { int data; struct node *next; }; int main(void) { /*変数宣言*/ struct node *start, *p, *end, *num; int d; /*リストを初期化する*/ start = end = NULL; /*データを入力する*/ printf("Input Number : "); scanf("%d",&d); /*リストを作成する*/ while(d > 0) { /* /* 新規ノードを作成する *...
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: ポインタを利用したプログラム
- 返信数: 5
- 閲覧数: 3090
Re: ポインタを利用したプログラム
リストの末尾を保存した状態で、新しいnodeを更新していくわけですね。
ありがとうございます。
ありがとうございます。
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: ポインタを利用したプログラム
- 返信数: 5
- 閲覧数: 3090
ポインタを利用したプログラム
#include<stdio.h> #include<stdlib.h> /*構造体の宣言*/ struct node { int data; struct node *next; }; int main(void) { /*変数宣言*/ struct node *start, *p; int d; /*リストを初期化する*/ start = NULL; /*データを入力する*/ printf("Input Number : "); scanf("%d",&d); /*リストを作成する*/ while(d > 0) { /* p=start; start = malloc(sizeof(st...
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: 正座判定 エラー
- 返信数: 1
- 閲覧数: 1183
正座判定 エラー
誕生日を入力して、正座判定をする際のエラー条件ってなんですか?
ifで考えるときの。
ifで考えるときの。
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: シーザー暗号
- 返信数: 3
- 閲覧数: 2070
Re: シーザー暗号
単純なミスでした。ありがとうございます。できれば2進数のも見てください。
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: シーザー暗号
- 返信数: 3
- 閲覧数: 2070
シーザー暗号
文字コード順に5文字ずらすプログラムがわかりません。 #include<stdio.h> #define NUM 50 int main(void) { char str[NUM]; int i; printf("シーザー暗号かどうか判断します。\n"); printf("文字列(アルファベット)を入力してください。\n"); scanf("%d",str); i=0; /*入力されたアルファベットをずらす処理*/ while(str[i]!='\0') { str[i]=str[i]+5; printf("%s",str[i]); i++; } printf("\n"); return 0;...
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: 文字コード for文
- 返信数: 4
- 閲覧数: 1742
Re: 文字コード for文
手間をかけて逆に難しいことをしていたんですね。
ありがとうございます。
ありがとうございます。
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: 2進数を求めるプログラム
- 返信数: 2
- 閲覧数: 1454
2進数を求めるプログラム
0以上256未満の10進小数を入力する。配列は8桁を整数、8桁を小数。小数点以下9は切り捨て。範囲外ならエラー。 正しくありません。指摘よろしくお願いします。 #include <stdio.h> #define NUM 16 int main(void) { int nisin[NUM]; double jusin,tmp; int i; printf("10進小数を入力してください。\n"); scanf("%lf",&jusin); /*2の補数を求める処理*/ if(0>jusin || 256<=jusin) { printf("エラー\n"); } else { tmp=(int)...
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: 文字コード for文
- 返信数: 4
- 閲覧数: 1742
文字コード for文
入力された文字が同じでなかった場合、文字コード順で先に来る方を出力するプログラム。 プログラムを作りましたが、正しくありません。指摘をお願いします。 #include <stdio.h> #define NUM 50 int main(void) { char str1[NUM]; char str2[NUM]; int i,j,count=0; printf("2つの文字列を入力してください。\n"); printf("1つ目を入力してください。\n"); scanf("%s",str1); printf("2つ目を入力してください。\n"); scanf("%s",str2); /*入力さ...
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: コアダンプ
- 返信数: 7
- 閲覧数: 3026
Re: コアダンプ
引数で指定された情報を出力する。入力を1だったら、番号:1 氏名:taro.s 得点:100 のようにします。
1.2.4.5.8も同様に。意外だったら-1を返し、見つかりません。とする。
よろしくお願いします。
1.2.4.5.8も同様に。意外だったら-1を返し、見つかりません。とする。
よろしくお願いします。
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: コアダンプ
- 返信数: 7
- 閲覧数: 3026
コアダンプ
#include<stdio.h> #define NUM 5 typedef struct Student { int no; /*番号*/ char name[10]; /*氏名*/ int score; /*得点*/ }Student; /*int search(student date[],int no);*/ int main(void) { Student student[NUM] = { { 1,"taro.s",100 }, { 2,"jiro.y",80 }, { 4,"saburo.h",65 }, { 5,"shiro.k",20 }, { 8,"goro.s",93 ...
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: プログラム指摘
- 返信数: 3
- 閲覧数: 2157
プログラム指摘
#include <stdio.h> #define NUM 5 #define KAMOKU 3 int main(void) { int ten[NUM][KAMOKU]={{3,98,30},{49,0,27},{12,69,9},{100,79,59},{20,48,19}}; int i,j; int num; double wa,ave; printf("┌──────┬──────┬──────┬──────┬──────┐\n"); printf("│ 番号 │科目A │科目B │科目C │ 合計 │\n"); /*配列に格納した値を出力する処理*/ /*人数と科目を出力する...
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: プログラム指摘
- 返信数: 5
- 閲覧数: 2489
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: プログラム指摘
- 返信数: 5
- 閲覧数: 2489
プログラム指摘
#include <stdio.h> #define NUM 8 int main(void) { int seisuu; int i,j; int nisinnsuu[NUM]; printf("10進数(0〜255)を入力してください\n"); scanf("%d",&seisuu); printf("2進数に変換\n"); /*2進数に変換する処理*/ if(seisuu<256) { for(i=1;i<=NUM;i++) { nisinnsuu[i]=seisuu%2; seisuu=seisuu/2; } for(j=NUM;j>=1;j--) { printf("%d",nis...
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: プログラム指摘
- 返信数: 1
- 閲覧数: 1182
プログラム指摘
#include<stdio.h> #define NUM 5 int main(void) { int i; int max=0,min=0; int tmp1=0,tmp2=0; int ave=0,sum=0; int month[NUM]; printf("%d人の得点を入力してください。\n",NUM); for(i=0;i<5;i++) { scanf("%d",&month[i]); sum=sum+month[i]; if(i == 0) { max=month[i]; min=month[i]; tmp1=1; tmp2=1; } else if(max < month[i...
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: 構造体
- 返信数: 1
- 閲覧数: 1550
構造体
引数で指定した番号と一致する学生情報を探してあれば配列番号を返して、なければー1を返す。 探し、出力するプログラムがわかりません。指摘お願いします。 実行例 検索する番号は? 5 番号:5 氏名:shiro.k 得点:20 /*int search(student date[],int no);*/の使い方もいまいちわかりません。 #include<stdio.h> #define NUM 5 typedef struct Student { int no; /*番号*/ char name[10]; /*氏名*/ int score; /*得点*/ }Student; /*int searc...
- 8年前
- フォーラム: C言語何でも質問掲示板
- トピック: 構造体 引数
- 返信数: 2
- 閲覧数: 2300
構造体 引数
引数で指定された2つの日付の経過日数を返す。 次のように宣言される関数を作成。 struct date datediff(struct date val1, struct date val2); =struct date { int year; int month; int day; }; int uru(int year) { if (((year % 4) == 0 && (year % 100) != 0) || ((year % 400) == 0)) return 1; return 0; } int sum(date *val) { int d[] = { 0,31,28,31,3...
- 9年前
- フォーラム: C言語何でも質問掲示板
- トピック: お願いします
- 返信数: 1
- 閲覧数: 1855
お願いします
引数で指定した番号と一致する学生情報を探してあれば配列番号を返して、なければー1を返す。 探し、出力するプログラムがわかりません。 実行例 検索する番号は?5 番号:5 氏名:shiro.k 得点:20 /*int search(student date[],int no);*/の使い方もいまいちわかりません。 #include<stdio.h> #define NUM 5 typedef struct Student { int no; /*番号*/ char name[10]; /*氏名*/ int score; /*得点*/ }Student; /*int search(student ...
- 9年前
- フォーラム: C言語何でも質問掲示板
- トピック: お願いします
- 返信数: 7
- 閲覧数: 3776
お願いします
引数としての分数の積を求める関数。商を求める関数。 [code] #include<stdio.h> typedef struct fraction { int num; /*分子*/ int den; /*分[/album]母*/ }fraction; struct fraction multiply(struct fraction val1,struct fraction val2); struct fraction divide(struct fraction val1,struct fraction val2); int main(void) { fraction fraction; ...
- 9年前
- フォーラム: C言語何でも質問掲示板
- トピック: よろしくお願いします
- 返信数: 10
- 閲覧数: 4176
Re: よろしくお願いします
エラー C4996 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
このエラーなんですかね?
このエラーなんですかね?
- 9年前
- フォーラム: C言語何でも質問掲示板
- トピック: よろしくお願いします
- 返信数: 10
- 閲覧数: 4176
Re: よろしくお願いします
#include<stdio.h> typedef struct fraction { int num; /*分子*/ int den; /*分母*/ }fraction; void show(fraction c); int main(void) { struct fraction fraction1; printf("分子を入力してください。\n"); scanf("%d",&fraction1.num); printf("分母を入力してください。\n"); scanf("%d",&fraction1.den); show(fraction1); return 0; } void show...
- 9年前
- フォーラム: C言語何でも質問掲示板
- トピック: よろしくお願いします
- 返信数: 10
- 閲覧数: 4176
Re: よろしくお願いします
皆さんありがとうございます。
ヒントを参考に頑張ってみます。
ヒントを参考に頑張ってみます。
- 9年前
- フォーラム: C言語何でも質問掲示板
- トピック: よろしくお願いします
- 返信数: 10
- 閲覧数: 4176
Re: よろしくお願いします
構造体において関数を呼び出す定義ってなんですか?
- 9年前
- フォーラム: C言語何でも質問掲示板
- トピック: よろしくお願いします
- 返信数: 10
- 閲覧数: 4176
よろしくお願いします
プログラムについて質問です。入力した分数を構造体に格納して返す関数。引数として分数を受けとり標準出力へ出力する関数。 この二つはどうしたらよいでしょうか? #include<stdio.h> struct fraction { int num; /*分子*/ int den; /*分母*/ }; int main(void) { struct fraction fraction1; printf("分子を入力してください。\n"); scanf("%d",&fraction1.num); printf("分母を入力してください。\n"); scanf("%d",&fraction1.den);...
- 9年前
- フォーラム: C言語何でも質問掲示板
- トピック: プログラム教えてください!!
- 返信数: 5
- 閲覧数: 3593
Re: プログラム教えてください!!
最初から分からないです。
特に、構造体から入力、出力。
1から自動採番が分からないです。
よろしくお願い致します。
特に、構造体から入力、出力。
1から自動採番が分からないです。
よろしくお願い致します。
- 9年前
- フォーラム: C言語何でも質問掲示板
- トピック: プログラム教えてください!!
- 返信数: 5
- 閲覧数: 3593
プログラム教えてください!!
プログラムの作り方を教えてください。
標準入力から5人分の科目A.科目B.科目Cを入力して、配列に格納し、それぞれの番号、科目A、科目B、科目Cな学生別合計点を表形式で出力する。
番号は入力順 に1から自動採番する。
よろしくお願い致します。
struct strudent
{
int no
int score1
int score2
int score3
}
構造体に格納します。
標準入力から5人分の科目A.科目B.科目Cを入力して、配列に格納し、それぞれの番号、科目A、科目B、科目Cな学生別合計点を表形式で出力する。
番号は入力順 に1から自動採番する。
よろしくお願い致します。
struct strudent
{
int no
int score1
int score2
int score3
}
構造体に格納します。