
A 回答 (5件)
- 最新から表示
- 回答順に表示
No.5
- 回答日時:
スコープに関しては
https://programming.pc-note.net/c/scope.html
の『ブロック内で同名の変数宣言』辺りを参照したうえで、main()内のa[]とnがどうなっているのか考えましょう。
等差数列については#2さんが回答しているので。
No.4
- 回答日時:
訂正。
ループ中に毎回nが0に…というのはないか。>scanfで入力した値を配列にどのように入れれば良いのでしょうか?
scanf()をコールする度に、第2引数に渡すアドレスが変わればいい。
scanf("%d", &a[n]);
辺りが妥当でしょう。
スコープに注意しないと駄目なのは変わりませんが。
あと、環境によってはint型1000個のローカル変数は駄目な場合があるので注意しましょう。
No.3
- 回答日時:
そもそも…
int a[1000];
に対して、
scanf("%d", &a);
では配列に数値を取り込めませんが、そこらへんはどうなんですかね?
あと、scanf()に渡しているa[]と、arithmetic _seq()に渡しているa[]は別ものかと思われます。
配列の中身が不定値で、関数には0個として渡しているんじゃないかな?
main()のn=0は保持したまま、do〜whileループては別に用意したnを、毎回0にしてから+1して、ループ抜ける際に1にした内容と入力して値を捨ててますし。
arithmetic _seq()は昇順ソートして最小値とその次の値の差を返しているだけ…ですね。
nが0だった場合は、バッファオーバーランの可能性を残してます。
# 今回はmain()内の未処初期化配列a[]が十分ねサイズがあるのでバッファオーバーランはしませんが。
No.2
- 回答日時:
こんなんで。
ソートは手抜きですので自分の使ってください。#include <stdio.h>
#include <stdlib.h>
int cmp(const void *p1, const void *p2)
{
return *(int *) p1 - *(int *) p2;
}
int arithmetic_seq(int a[], int n)
{
int i, diff;
qsort(a, n, sizeof a[0], cmp);
if (n < 2)
return 0;
for (i = 2, diff = a[1] - a[0]; i < n; i++)
if (a[i] - a[i - 1] != diff)
return 0;
return 1;
}
int main()
{
int i;
int arr[] = { 10, 8, 2, 4, 6, 0 };
if (arithmetic_seq(arr, sizeof arr / sizeof arr[0]))
fputs("等差です:", stdout);
else
fputs("等差ではありません:", stdout);
for (i = 0; i < sizeof arr / sizeof arr[0]; printf("%d ", arr[i++]));
return 0;
}
No.1
- 回答日時:
で、どこまでできているんです?
渡された配列を昇順に並び替えて、べつの配列に格納することはてきますか?
# というか、元の配列の内容書き換えてもいいのか不明ですが。
配列内の要素数でループを回しつつ内容の参照をすることはできますか?
ループ中に一つ前(またへ一つ後)の要素を参照する方法はわかりますか?
関数のコール元に結果を返す方法はわかりますか?# 今回の場合、int型でとう返すんですかね?等差数列なら0、非等差数列なら非0…とか???
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C言語の課題が出たのですが自力でやっても分かりませんでした。 要素数がnであるint型の配列v2の並 3 2022/11/19 17:41
- C言語・C++・C# 至急教えてください! プログラミングの問題です! お願いします! 出力2と全く同じ出力をするように、 2 2022/06/22 23:10
- C言語・C++・C# このプログラミングの問題を教えて欲しいです。 キーボードから整数kを入力し、kが配列aの中に何個存在 2 2022/12/19 22:50
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
- C言語・C++・C# c言語の問題です 課題1 (二分探索木とセット) 大きさ size の配列 array を考える。す 2 2023/01/10 21:08
- Java javaでのプログラム(配列)について質問です. 2 2022/10/14 22:27
- C言語・C++・C# 10人分の生徒の英語の点数{32,34,41,38,40,26,14,46,42,50} と数学の点 2 2022/05/26 21:31
- C言語・C++・C# c言語 プログラムのエラー 1 2023/02/11 20:31
- C言語・C++・C# 至急教えてください!プログラミングの問題です。 割られる整数と割る整数を受け取って、商と余りを出力す 3 2022/07/05 10:23
- C言語・C++・C# このプログラミングの問題を教えてほしいです。 キーボードからデータ数nとn個のデータを入力し、平均値 3 2022/12/19 22:51
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
関数から配列を返すには?
-
MFC - ダイアログボックスのPic...
-
配列の要素数に変数を入れたい...
-
C#で構造体の配列を持った構造...
-
define で 配列
-
C言語において、 配列要素をひ...
-
c言語
-
C言語 ファイルの指定された行...
-
callocで二次元配列を作成する...
-
C言語の2次元配列 容量が大き...
-
構造体のextern方法
-
c言語プログラミング 等差数列...
-
C#で配列が空かを判定するには?
-
c言語の自分で数字を入力してサ...
-
C言語において論理演算プログラ...
-
構造体の配列 char *' 型は 'ch...
-
C++:構造体:newで入れ子:del...
-
ポインタを使って構造体の配列...
-
配列の不正アクセスについて
-
Visual C++でのデバッグ
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
関数から配列を返すには?
-
配列の要素数に変数を入れたい...
-
c言語プログラミング 等差数列...
-
define で 配列
-
構造体のextern方法
-
C言語において、 配列要素をひ...
-
c言語
-
C#で構造体の配列を持った構造...
-
C言語 ファイルの指定された行...
-
C言語の2次元配列 容量が大き...
-
VB.NETにおける構造体の初期化
-
コンボボックスでデフォルト値...
-
C#で配列が空かを判定するには?
-
Cのエラー
-
MFC - ダイアログボックスのPic...
-
C言語についてです 5人のテスト...
-
C言語の配列のコピーについて
-
この変数名はわかりにくいですか?
-
2番目の最大値を求める
-
C++:構造体:newで入れ子:del...
おすすめ情報
ここまではやってみたんですが、等差数列になる数値を入力しても等差数列ではないと判定されてしまいます。
ここまではやってみたんですが、等差数列になる数値を入力しても等差数列ではないと判定されてしまいます。
ここまではやってみたんですが、等差数列になる数値を入力しても等差数列ではないと判定されてしまいます。
続きの写真です
今日初めてやるところで何をどうしたらいいのか見当もつきません。scanfで入力した値を配列にどのように入れれば良いのでしょうか?
ご回答、ご指摘ありがとうございます。
そのやり方でやってみようと思います。