検索結果 1722 件

by box
1年前
フォーラム: C言語何でも質問掲示板
トピック: fscanfがうまく動きません
返信数: 5
閲覧数: 697

Re: fscanfがうまく動きません

そもそも
yg さんが書きました:

コード:

	for (int i = 0; i <= 19; i++)memo[i] = NULL;
memo[]を初期化しようとしているのなら、不要です。
どうせfscanf()の呼び出しで初期化の結果を上書きしますので。
それに、char型に、(void *)型のはずのNULLを放り込んでいるのは謎です。
「余分なのはできるだけそぎ落として」所定の目的を達成する、というのがいいんじゃないでしょうか。
by box
1年前
フォーラム: C言語何でも質問掲示板
トピック: すいません 急ぎで解答をお願いします。
返信数: 5
閲覧数: 674

Re: すいません 急ぎで解答をお願いします。

冷やかしなどはいりません じゃあ、冷やかしでないのを。 #include <stdio.h> #include <string.h> #define LEN (20) typedef struct { char name[LEN]; int price; } Coffee; void get_price(Coffee *coffee, int kind) { char name[LEN]; int weight, i; printf("豆の種類:"), scanf("%s", name); printf("分量(g):"), scanf("%d", &weight); for (i = 0;...
by box
1年前
フォーラム: C言語何でも質問掲示板
トピック: FOR文で不連続な範囲でLoopしたい
返信数: 13
閲覧数: 1254

Re: FOR文で不連続な範囲でLoopしたい

kaoruh さんが書きました: For(i=220;i<250,i++) {処理式}
を実行してから同じ処理式で、更に
For(i=0;i<50,i++){処理式}
と続けたいばあいにはどうすれば良いでしょうか?
回答のどの場合でも、処理時間はそう変わらんと思うので、素直に

コード:

    for (i = 220; i < 250; i++) {
        // 何かの処理
    }
    for (i = 0; i < 50; i++) {
        // 何かの処理
    }
と書くのがよいと思います。後でそのコードを見たときに「何をしているか」が一目瞭然なはず。
by box
1年前
フォーラム: C言語何でも質問掲示板
トピック: 2次元平面上の2点間を計算する関数について
返信数: 2
閲覧数: 508

Re: 2次元平面上の2点間を計算する関数について

// double型にnとかiとかjとかいう変数名を付けているのが何となく違和感があったので、 // 思い切ってそういう変数を使わないようにしてみた #include <stdio.h> #include <math.h> double distance(double *p1, double *p2); int main(void) { double p1[2], p2[2]; printf("点p1の入力\n"); scanf("%lf %lf", &p1[0], &p1[1]); printf("点p2の入力\n"); scanf("%lf %lf", &p2[0], &p2[1]); ...
by box
1年前
フォーラム: C言語何でも質問掲示板
トピック: C言語 関数にポインタを引数として渡すプログラムについて
返信数: 29
閲覧数: 2027

Re: C言語 関数にポインタを引数として渡すプログラムについて

purin52002 さんが書きました:
'A'-'a'の意味は分かったんですけど'B'-'b'の意味が分かりませんでしたorz
少なくとも、ASCIIコードにおいては、
'A' - 'a'
'B' - 'b'
'C' - 'c'
...
'Z' - 'z'
は、どれも同じはずです。
by box
1年前
フォーラム: C言語何でも質問掲示板
トピック: 円の面積と円周を求めるプログラムを作っています。
返信数: 2
閲覧数: 1289

Re: 円の面積と円周を求めるプログラムを作っています。

#include <stdio.h> #if 0 #define PI 3.14159; // 最後のカンマは不要 #endif #define PI 3.14159 float Circle_S(float r) { // この辺の余分な変数定義や初期化は不要で、単に面積の値を返せばよい // その方がプログラムが簡単になる // 同じ結果を得るんだったら、コード量が少ない方がよいと思う // float result1 = 0; // result1 = r*r*PI; // return result1; return (r < 0) ? -1 : PI * r * r; } floa...
by box
1年前
フォーラム: C言語何でも質問掲示板
トピック: 微分係数を求めるプログラムを作っています
返信数: 7
閲覧数: 1964

Re: 微分係数を求めるプログラムを作っています

(1) 引数 x (double型)と n (int型)を与えて x^n の値を返すdouble型の関数 powerを定義。 (2) 引数 x (double型)と n (int型)を与えて x^n の微分係数((x^n)’の値,n x^(n -1)を計算してxの値を入れる)を返すdouble型の関数 diff を定義。ただし(1)の関数powerを呼び出して使うこと。 まず、「ただし(1)の関数powerを呼び出して使うこと。」とありますが、違う計算をするのになぜ呼び出すのですか?呼び出す意味はありますか? この疑問に対する答えは、別の回答者さんからの回答のとおりです。 (2)においてべき...
by box
1年前
フォーラム: C言語何でも質問掲示板
トピック: 微分係数を求めるプログラムを作っています
返信数: 7
閲覧数: 1964

Re: 微分係数を求めるプログラムを作っています

みけCAT さんが書きました: どうしてわざわざ質問にほとんど関係ない上に苦手な数学の話に寄ったのですか?
数学があまり得意でない方が数学に関する投稿をしてもいっこうに差し支えないのでは?
ここの掲示板には、ある分野があまり得意ではない方がその分野に関する投稿をしていけないという
ルールでもあるんですか?
by box
1年前
フォーラム: C言語何でも質問掲示板
トピック: エラー解消されません、、、
返信数: 7
閲覧数: 1665

Re: エラー解消されません、、、

tennga さんが書きました: 解消されましたが、結果がこうなりました
気温と周波数を入力してください。
17.0
40.0
波長はinfです。
う~ん、自分のところでは、(計算式が正しければ)正しいと思われる8.5425が出ますけどね。
by box
1年前
フォーラム: C言語何でも質問掲示板
トピック: エラー解消されません、、、
返信数: 7
閲覧数: 1665

Re: エラー解消されません、、、

printfとかscanfとかのプロトタイプ宣言が書いてあるはずの stdio.h をインクルードすれば、 くだんの警告は出なくなるかもしれません。 #include <stdio.h> double onnsoku(double t) { return 331.5 + 0.6 * t; } double hattyou(double c, double f) { return c / f; } int main(void) { double f, t; printf("気温と周波数を入力してください。\n"); scanf("%lf %lf", &t, &f); printf("波長は%fで...
by box
1年前
フォーラム: C言語何でも質問掲示板
トピック: c言語プログラムについて
返信数: 3
閲覧数: 946

Re: c言語プログラムについて

その操作を手で行なうとしたら、どういう手順を踏みますか?
by box
1年前
フォーラム: C言語何でも質問掲示板
トピック: 配列を引数とする関数について
返信数: 14
閲覧数: 1441

Re: 配列を引数とする関数について

別の回答にもあるとおり、ave関数における変数nの使い方が超絶おかしいので修正。 せっかく要素数(今回はn)を引数で受け取っているのに、それを変えちゃまずいでしょう。 要素数がたまたま5であるから、正しく動いているように見えるだけ。要素数が5以外だったらどうする? 今回の場合、ave関数は、渡ってきた配列の要素数が「いくつであっても」対応できるようにしておくべき。 #include <stdio.h> double ave(int a[], int n); int main(void) { int a[5] = {3, 1, 4, 2, 5}; double ans; ans = ave(a,...
by box
1年前
フォーラム: C言語何でも質問掲示板
トピック: 早急にお願いします。
返信数: 11
閲覧数: 1697

Re: 早急にお願いします。

梅衣堂ひよ さんが書きました: あとはこれをマイルからキロメートルへ、キロメートルからマイルへ変換する関数として実装するだけですよ。
キロメートルをマイルに変換したいだけなので、オーバースペック(不要な機能を実装)。
by box
1年前
フォーラム: C言語何でも質問掲示板
トピック: 早急にお願いします。
返信数: 11
閲覧数: 1697

Re: 早急にお願いします。

purin52002 さんが書きました: 2、マイルを引数(double型がいいかな?)、kmを返り値(これもdouble型がいいかな?)の関数を作ります。
キロメートルをマイルに変換したいので、仕様誤り。
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: 急ぎです…。
返信数: 2
閲覧数: 913

Re: 急ぎです…。

全部見たわけではありませんが…
あみあみ さんが書きました:要素数100程度の2つのint型配列a,b
って書いてあるのに、どうして
あみあみ さんが書きました:

コード:

	double a[100], b[100]
こうなっちゃうんですか?
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: 二つの整数を入力してその間の全整数の和を出力
返信数: 6
閲覧数: 1049

Re: 二つの整数を入力してその間の全整数の和を出力

こちらの環境で下のようなコードを実行したら、ちゃんと答えが出ます。 #include <stdio.h> int main(void) { int no, no1, no2; int max, min; int sum = 0; do { printf("正の整数を二つ入力してください。\n"); printf("整数1:"); scanf("%d", &no1); printf("整数2:"); scanf("%d", &no2); } while(no1 < 0 || no2 < 0); if (no1 > no2) { max = no1; min = no2; } else { max...
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: 二つの整数を入力してその間の全整数の和を出力
返信数: 6
閲覧数: 1049

Re: 二つの整数を入力してその間の全整数の和を出力

うまく起動できない、というのは、どういった状況を指していますか?
コンパイルはできるけど、実行結果が思ったとおりにならないということですか?
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: C++言語のキューの問題のことです
返信数: 3
閲覧数: 686

Re: C++言語のキューの問題のことです

コードをザッと見たところ、データ構造がキューではなくてスタックになっているようです。
関数名もpush()とかpop()とか、いかにもスタックを扱うかのような名前が付いてますね。
だからどうすれば?というのは、キューとか待ち行列とかでまずはググってみてはどうでしょう。
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: c++で変数の数字を上書きせずに並べる
返信数: 5
閲覧数: 641

Re: c++で変数の数字を上書きせずに並べる

ほんの一例です。

コード:

#include <iostream>
using namespace std;

int main(void)
{
    int a;

    for (a = 1; a <= 10; a++) {
        cout << a;
    }
    cout << '\n';
    return 0;
}
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: たまに曜日が表示されないときがあります。
返信数: 8
閲覧数: 1754

Re: たまに曜日が表示されないときがあります。

hのiの値がいくつになっているか、printf()か何かで確認してみましょう。
0~6以外の値になっているような気がします。
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: ファイルが作れない
返信数: 8
閲覧数: 1337

Re: ファイルが作れない

boru さんが書きました:DXライブラリでfopen関数でファイルを作ろうとしてもエラーが出ます。
エラー LNK2019 未解決の外部シンボル _WinMain@16 が関数 "int __cdecl invoke_main(void)" (?invoke_main@@YAHXZ) で参照されました。
このエラーが出ているということは、たぶん、プロジェクトの設定でWindowsアプリケーションを作成するようになっているのに、
WinMain関数がないよ、と怒られているのだと思います。
直すには、たぶん、プロジェクトの設定でコンソール・アプリケーションを作成するようにすればよいと思います。
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: 構造体(structure)のプログラムについて。
返信数: 27
閲覧数: 1358

Re: 構造体(structure)のプログラムについて。

割り算用の関数が意図どおりに動いているのであれば、それには手を触れずに
「新たに」足し算用の関数(名前の例:Add)と引き算用の関数(名前の例:Sub)を用意するのがよいと思います。
1つの関数で足し算も引き算も割り算も実行する、というのは避ける方がよいと思います。

なお、構造体に、商とあまりの他、和と差のためのメンバーを追加する必要があると思います。
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: cmdの結果を追加しました。  結果を適正に表示するにはどのようにコードを修正すればよいでしょうか?
返信数: 3
閲覧数: 841

Re: cmdの結果を追加しました。  結果を適正に表示するにはどのようにコードを修正すればよいでしょうか?

11~19のかけ算をしたいのか1~19のかけ算をしたいのか、質問文からは判読不能。とりあえず1~19と解釈した。 単にかけ算の結果を表示するだけなので、配列を使う必要なし。 かけ算のときに+1するのがめんどくさいので、ループは素直に1~19で回す。 #include <stdio.h> int main(void) { int i, j; for (i = 1; i <= 19; i++) { for (j = 1; j <= 19; j++) { printf("%4d", i * j); } putchar('\n'); } putchar('\n'); return 0; }
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: 1行で計算すると正しくなくて、2行に分けると正しい結果が得られる
返信数: 2
閲覧数: 703

Re: 1行で計算すると正しくなくて、2行に分けると正しい結果が得られる

result=284480*F/L; // 1行で計算すると result= 743 となって正しくない 右辺の計算の途中で、int型で表わせる数値の範囲を超えているように思います。 result=284480; // 1行目 result=result*F/L; // 2行目 → 2行に分けると正しい結果 (9482) が得られる こっちは、1行目で__int64型の変数に値を代入「した後で」続きの計算をしていますね。このように、__int64とintが混在しているとき、 2行目の右辺の型は最も大きい__int64型となるので、何も問題がない、ということでありましょう。 1行で片づけるには...
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: 幾つのベクトルの大きさを小さい順に並び替えるプログラムの作り方に関してです。
返信数: 7
閲覧数: 597

Re: 幾つのベクトルの大きさを小さい順に並び替えるプログラムの作り方に関してです。

Cで作るならこんな感じ? #include <stdio.h> #include <math.h> #define N 4 typedef struct vector { int x; int y; double r; double d; } vector; void InputData(vector *data) { data[0].x = 0; data[0].y = 3; data[1].x = 7; data[1].y = 7; data[2].x = 1; data[2].y = 5; data[3].x = 2; data[3].y = 1; } /*ベクトルの大きさを求める関数で...
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: rand関数の不可解なエラーについて
返信数: 4
閲覧数: 618

Re: rand関数の不可解なエラーについて

kohei さんが書きました: 関数がない変数定義注釈~enumより上にrand関数を設定したのですが
何を言いたいのかよくわかりません。
kohei さんが書きました: 私では理解できないエラーが発生いたしました。
どんなエラーですか?エラーメッセージがあれば貼ってください。
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: 逆順表示の関数の作成方法
返信数: 9
閲覧数: 947

Re: 逆順表示の関数の作成方法

ほんの一例です。 #include <stdio.h> #include <string.h> void gyaku(char s[]); int main(void) { char str[20]; scanf("%19s", str); gyaku(str); return 0; } void gyaku(char s[]) { int len = strlen(s), i; for (i = len - 1; i >= 0; i--) { putchar(s[i]); } putchar('\n'); } ちなみに、別の言語だったら1行で。逆順にしたい文字列の字数に制限なしで、楽勝。 p...
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: 特になにもないです
返信数: 7
閲覧数: 819

Re: 特になにもないです

質問は「特になにもないです」ですか?
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: 関数の作成の仕方が分かりません
返信数: 4
閲覧数: 501

Re: 関数の作成の仕方が分かりません

こんな感じ?ベストとは限らないけど。 #include <stdio.h> #include <string.h> void yoko(char s[]); void kuuhaku(char s[], int n); void tate(char s[]); int main(void) { char name[50]; printf("名前は?(全角入力) "); scanf("%s", name); printf("\n"); yoko(name); printf("\n"); kuuhaku(name, 3); printf("\n"); tate(name); printf("\n"...
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: 数字を入力をしないとprintfの文が表示されない
返信数: 3
閲覧数: 557

Re: 数字を入力をしないとprintfの文が表示されない

maxwell さんが書きました: 順番としては、printfで行う処理の番号を表示し、scanfで入力を受け付けています。
どなたか原因と改善策をご教授ください。
当該のコードを見せてください。そこで使っている変数の定義部分を含めて。

詳細検索ページへ移動する