検索結果 1718 件

by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: c言語和暦から西暦
返信数: 4
閲覧数: 1487

Re: c言語和暦から西暦

文字列をintがたの整数にして返す関数はできているのですが 元号をローマ字表記したときの先頭文字からその元号が始まったり(あるいは終わったり)する西暦の取得は? 標準入力から和暦で H29(平成29年の場合)などと入力すると、それが西暦何年かを計算して表示するプログラムを作成しなさい。 入力は1文字目がアルファベットで H, S, T, M がそれぞれ平成、昭和、大正、明治を表しており、数字との間にスペースなどの区切りは無いため、ひと続きの文字列として読み込む。 文字列から数値への変換には問題1で作成した関数 myatoi をそのままコピーして使用し、main関数のみを新たに作成すること。 ...
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: 龍神録プログラミングの館で勉強中にバグが出てきました。
返信数: 9
閲覧数: 1051

Re: 龍神録プログラミングの館で勉強中にバグが出てきました。

ポインタ さんが書きました: どのようにプログラムを変えれば正しいグラフィックになりますか?
まずは、今のプログラムを提示することでしょう。質問者さんがどういうコードを書いたのか、
回答しようとする側には今のところ全くわかっていません。その状態で、「どのように変えれば」と
言われましても、何とも答えようがありません。
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: -1,2,-3,4…という数列
返信数: 27
閲覧数: 3059

Re: -1,2,-3,4…という数列

みなさんがんばってコードを書かれていますが、読みやすさや修正しやすさといった点においてどうなんでしょうか。

コード:

#include <stdio.h>

#define N (100)

int main(void)
{
    int i;

    for (i = 1; i <= N; i++) {
        printf("%d\t", i * ((i % 2 == 1) ? -1 : 1));
    }
    putchar('\n');
    return 0;
}
あたりで十分な気がします。
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: 分からないです!至急アドバイスお願いします!
返信数: 7
閲覧数: 1088

Re: 分からないです!至急アドバイスお願いします!

metaphor さんが書きました:

コード:

			break;                //再帰終了
			x0 = x1;         //前回の計算値に置き換えて再帰処理
再帰っていう表現を使っていいものかどうか、疑問ありです。
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: -1,2,-3,4…という数列
返信数: 27
閲覧数: 3059

Re: -1,2,-3,4…という数列

こんにちは さんが書きました:-1,2,-3,4,-5…
何項めまで出力したいのですか?
さておき、ロジックとしては、
1から上限の数値までループする。
ループの中で、
・その数が奇数ならば-1倍した値を出力する
・その数が偶数ならば、そのまま出力する
てな感じでいいと思います。
どなたかの回答みたいにハードコーディングするのではなくて。
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: スロットマシーン 作成
返信数: 67
閲覧数: 6826

Re: スロットマシーン 作成

ゆうtyt さんが書きました:

コード:

		a=rand()%9;
		b=rand()%9;
		c=rand()%9;
a, b, cには0~8の数値が入るので、
ゆうtyt さんが書きました:

コード:

[4][1][2]
[5][9][3]
[6][8][4][/quote]

こんな結果(1が出たり9が出たりする)になることは絶対にありません。
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: スタック操作について
返信数: 9
閲覧数: 1060

Re: スタック操作について

main関数の話の前に、素朴な疑問があります。
のの さんが書きました:

コード:

void init_stack(){
  sp=-1;
}
スタックポインターの初期値が-1のときに
のの さんが書きました:

コード:

int push(int x){
  if(sp<stack_size-1){
    stack[sp++] = x;
pushを行なうと、おかしなことにならないでしょうか。stack[-1]に値を代入しようとしているように見えて仕方がありません。
てか、この手の問題においてはスタックポインターの初期値はゼロ一択であるように思っています。
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: TANAKA
返信数: 3
閲覧数: 432

Re: TANAKA

ファイルから文章を読み込んで、その文章の空白の数と、改行の数を数えたいのですが、初期値0のままでうまくいきません。 どこが間違っているのでしょうか? インデント(字下げ)がグチャグチャで見づらいです。 int main(){ stdio.hなど、必要なヘッダーをインクルードしていません。 if(file == NULL) printf("開けません"); ファイルが存在しないなどのエラーが発生しても強引に先へ進んでいるのはまずいです。 while(scanf(file,"%c", &c) == 1){ 本当にscanf()の呼び出しでいいですか?
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: 16進数の下位2桁を取り出す処理について
返信数: 41
閲覧数: 3299

Re: 16進数の下位2桁を取り出す処理について

sadora3 さんが書きました: 言語:C
C言語において
sadora3 さんが書きました:

コード:

void DispSimo(short* temp);
void DispSimo(long* temp);
このように同じ名前で違う型の引数を持つ関数は複数定義できないはずです。
どこかで何かが間違っているような気がします。
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: オペランドと一致する演算子”=”がない
返信数: 3
閲覧数: 1814

Re: オペランドと一致する演算子”=”がない

mattun さんが書きました: 「オペランドと一致する演算子”=”はありません」とエラーが
せめて、どのソースコードの何行目でエラーが出ているかくらいは教えていただきたいところです。
エラーメッセージに書いてあるはずです。
まぁ、自分が回答できるかどうかはともかく。
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: C言語わかりません
返信数: 4
閲覧数: 888

Re: C言語わかりません

すべてのテストケースで以下の条件を満たします。 1 ≦ n ≦ 100 この条件があるにもかかわらず } while (n == 0 || n>100); としているのは、問題の趣旨に反しています。このために不正解になっているかどうかはわかりませんけど。 素直に、こんな風に書くのがよいのではないでしょうか。 #include <stdio.h> int main(void) { int n, i; do { scanf("%d", &n); } while (!(1 <= n && n <= 100)); for (i = 1; i <= 9; i++) { printf("%d%s", n...
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: 関数の引数にポインタを使うときの初歩的な質問
返信数: 15
閲覧数: 1497

Re: 関数の引数にポインタを使うときの初歩的な質問

ケトン さんが書きました:

コード:

void swap (int *pX,int *pY);
引数には*pX,*pYの二つ(変数の値!)があって,
ここを即値とお考えでしたらちょっと違うと思います。
int *型の値ですから、中身は変数のアドレス値です。一方、
ケトン さんが書きました: 関数を呼び出すときに

コード:

swap (&num1,&num2);
呼び出す側では、変数のアドレスという値を渡しています。
何もおかしくないと思います。
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: 足し算の項の入れ替え
返信数: 6
閲覧数: 787

Re: 足し算の項の入れ替え

とりあえず同じ名称のことは意識せずにやってみた。
Rubyだと2行でできた。\(^O^)/

コード:

a = ["a", "b", "c"]
puts a.permutation(a.size).collect { |a| a.join("+") }
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: おそらく初歩の初歩だと思われますが、、、、
返信数: 4
閲覧数: 682

Re: おそらく初歩の初歩だと思われますが、、、、

こんな感じですかね。合ってるかどうかは知らないけど。 #include <stdio.h> #include <string.h> char *mystr2cpy(char *a, char *b) { // staticがないと、関数内部のautomaticなローカル変数のアドレスを返そうと // することとなる。ところが、cは本関数を抜けた瞬間に雲散霧消してしまう。 // main関数で正しく受け取れない。 static char c[256]; // aとbを連結した結果を格納できる十分な大きさであること strcpy(c, strcat(a, b)); return c; } int ...
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: externについて
返信数: 8
閲覧数: 1032

Re: externについて

akasann さんが書きました: おまけとして、AOJの問題にも取り組んでいるのですが、前のDight Numberについては解決しました。次の問題として最小公倍数の問題に取り組んでいます。次のコードに 50000000 と 30000000 を標準入力すると -14 という値が出てきます。何か別のやり方があるのでしょうか?・・・
50000000 と 30000000 をかけ算している時点で、int型で扱える数値の範囲を超えているような気がする。
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: おそらく初歩の初歩だと思われますが、、、、
返信数: 4
閲覧数: 682

Re: おそらく初歩の初歩だと思われますが、、、、

C言語彷徨い人 さんが書きました:

コード:

char mystr2cpy (*char a, *char b)
引数の書き方と戻り値の型が違う。
char *mystr2cpy (char *a, char *b)ではないですか?
C言語彷徨い人 さんが書きました:

コード:

  char c;
変数cはchar型1バイトしかないので、
C言語彷徨い人 さんが書きました:

コード:

  strcpy(c, a); 
こういう書き方はできないはず。
C言語彷徨い人 さんが書きました:

コード:

  return 0;
もともとのコードではchar型を返すことになっているのに0を返すのは不自然。
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: 課題で*を使って△を表示.....
返信数: 6
閲覧数: 932

Re: 課題で*を使って△を表示.....

ネバー さんが書きました:課題で△を真ん中に表示する
真ん中ってどこですか。
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: 解凍・圧縮ソフト【雑談】
返信数: 7
閲覧数: 803

Re: 解凍・圧縮ソフト【雑談】

ターボ さんが書きました: Windows7まではLhaplusを使っていたのですが、10にしたら使えなくなってしまって、
自分のところでは、Windows7から10にアップグレードした環境で全く問題なく使えています。
使えなくなった、というのは、何かエラーメッセージが出るのですか?
単に「使えなくなった」だけですと、状況が正確に把握できません。
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: 配列内の数字のシャッフル
返信数: 12
閲覧数: 1222

Re: 配列内の数字のシャッフル

みけCAT さんが書きました:入れ替え対象としてたまたま同じ数を選んでしまうと、「2つの数を選んで入れ替え」たことにならないのでは?
2つの数がたまたま同じであっても、いっこうにかまわないのでは?自分の解釈はそういうことです。
まあ、出題者の意図が正確にはわかりませんので、自分のような部外者があ~だこ~だ言うようなことではないのかもしれません。
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: 配列内の数字のシャッフル
返信数: 12
閲覧数: 1222

Re: 配列内の数字のシャッフル

manana さんが書きました: ./a.out
5 7 1 0 4 6 2 8 10 13 11 9 3
12が抜けてる。
manana さんが書きました: ./a.out
10 4 6 3 9 13 1 7 0 5 11 2 12
8が抜けてる。
manana さんが書きました: ./a.out
4 8 6 10 12 9 7 11 13 1 3 0 2
5が抜けてる。

というわけで、皆さんからのご指摘のとおり、配列の定義範囲外の領域にアクセスした結果、
おかしなことが起きたのでありましょう。
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: nanの原因
返信数: 8
閲覧数: 788

Re: nanの原因

c言語で積分するプログラムを作りましたが、sum1 [j][k]+=f1 [j][k],sum2 [j][k]+=f2 [j][k]を行った後にprintfでsum1とsum2を表示するとnanと出てきます。 とりあえず、そのグチャグチャな字下げを何とかしましょう。 printf("%f %f %d %f %d %f %f \n",p[i][j],fy[i][j],k,sum1[i][j][k],ef [j],kensa[i][j][k],sum2[i][j][k]); ここで、変数kensaの定義がないというコンパイルエラーが出ます。実行できません。 nanという結果が出てしまう(つまり、...
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: %*dについて
返信数: 6
閲覧数: 737

Re: %*dについて

あんどーなつ さんが書きました: Visual Studioでできるかはしらないです(GCC拡張仕様の可能性あり)
printfにもともと備わっている機能です。
できない処理系があったら知りたいくらいです。
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: if文の条件について
返信数: 3
閲覧数: 651

Re: if文の条件について

みけCAT さんが書きました: 従って、この条件は、a7が0と等しいとみなされる(0やヌルポインタなど)ときは真、そうでない時は偽となります。
逆のような気がするんですけどね。
0に類する場合はfalse
それ以外は全部true
じゃないんでしょうか。
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: 常微分方程式をルンゲクッタの式で解くプログラムについて
返信数: 1
閲覧数: 396

Re: 常微分方程式をルンゲクッタの式で解くプログラムについて

そもそも、ルンゲクッタ法のアルゴリズム(プログラミング言語に依存しない、問題を解く手順)は
理解されているのでしょうか?
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: 分割した文字列を自己参照構造体に入れて要素数をカウント
返信数: 6
閲覧数: 997

Re: 分割した文字列を自己参照構造体に入れて要素数をカウント

素人マン さんが書きました: コードは上記のように入力したのですかエラーが出てしまいます。
何だかツッコミどころ満載のコードですね。
さておき、「何をしたときに」「何という」エラーが出るかを具体的に書いてください。話はそこから始まります。
単に「エラーが出る」と書かれても、何も説明したことになりません。
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: 構造体にfscanf
返信数: 3
閲覧数: 640

Re: 構造体にfscanf

int score[12]; int abs[12]; int exam[12]; 本当に配列でいいんですか?だとすると、 while (fscanf(fp, "%[^,],%d,%d,%d ", std[i].name, std[i].score, std[i].abs, std[i].exam) == 4) { ここで、score, abs, exam の何番目の要素に入れるかがわかりません。コンパイルエラーが出るのではないでしょうか。 printf(error:fileopen\n"); " が足りないので、コンパイルエラーが出ます。 くだんの実行結果(今は想定外でしょうけど)がちゃん...
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: rewind()の使い方について
返信数: 3
閲覧数: 1489

Re: rewind()の使い方について

rewind()の使い方がいまいちわかりません。参考書によるとrewind(stdin)と書かれているのですが、ファイルの先頭に戻るとはどういうことでしょうか?・・・ 推測ですけど、その昔、磁気テープ(古っ!)を使ってデータの読み書きをしていた時代がありました。 汎用コンピューターでは今も現役なのかな。 さておき、rewindというのは「磁気テープを巻き戻して」先頭に戻るところから来ているようです。 カセットデッキ(これも古っ)にセットしたカセットテープを、巻き戻しボタンで先頭に戻すことをイメージしてみるとよいかもしれません。 rewind(stdin)は、標準入力から読んだ内容をいったんチ...
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: C言語、構造体について
返信数: 6
閲覧数: 1208

Re: C言語、構造体について

インスタンスという用語をそのソースで使うのがふさわしいのかどうか、
いささか疑問に思います。
単に「変数を定義する」くらいでいいような気がしなくもありません。
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: 合計が一定になる乱数生成
返信数: 5
閲覧数: 1009

Re: 合計が一定になる乱数生成

STR さんが書きました: 乱数の合計が一定値になるようにしたいのですがどのように生成すればいいでしょうか。
むずかしいような気がします。
例えば、10個の合計が0という一定値になるようにしたい、とします。
このとき、「たまたま」最初の6個が全部+1だったとすると、後どうがんばっても
10個の合計を0にはできないですね。

そもそも、合計を一定値にしたい、という時点で乱数ではなくなっているような気もします。
by box
2年前
フォーラム: C言語何でも質問掲示板
トピック: 配列 文字列 重複 削除
返信数: 6
閲覧数: 1407

Re: 配列 文字列 重複 削除

みけCAT さんが書きました: また、sizeof(char)は1と定義されているので、要素の型とも関係ないのに掛ける意味は無いでしょう。
自分は、大いに意味があると思います。間違いなく1個1バイトの領域を必要な個数だけ動的確保している、ということを示す、という点において。

コード:

    size = 256;
    p = (char *) malloc(sizeof(char) * size);
こういう書き方をごく普通にしてました。以前Cでシステムを開発してたとき。
ま、宗教論争になりそうなのであまり深入りするのはやめときましょう。

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