宿題なのですが・・・

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
てら

宿題なのですが・・・

#1

投稿記事 by てら » 15年前

いつもサイト見させていただいています。
学校の宿題なんですが、今日提出で、わからない問題を集めたので助けてください。
linuxでemacsで作ってktermでコンパイルするやつです。

★演習問題1
入力されたデーク数に応じた配列を確保し,入力されたデータをその配列に保存し,それらの和を求めよ.

(実行結果例)
データの数は?10
1番目のデータを人力してください:1
2番目のデータを入力してください:2
3番目のデータを入力してください:3
4番目のデータを入力してください:4
5番目のデータを入力してください:5
6番目のデータを人力してください:6
7番目のデータを入力してください:7
8番目のデータを入力してください:8
9番目のデータを入力してください:9
10番目のデータを入力してください:10
和=55

★演習問題2
2個のmxn行列の足し算の結果を求めるプログラムを作成せよ,
(時間に余裕があれば,2×2よりも大きい行列で動作を確認せよ.)

(実行結果例)
a:2
m;2

a[O][O]=1
a[0][1]=2
a[1][0]=3
a[1][1]=4
b[O][O]=4
b[0][1]=3
b[1][0]=2
b[1][1]=1

a= 1.00 2.00
  3.00 4.00

b= 4.00 3.00
  2.00 1.00

C= 5.00 5.00
  5.00 5.00

★演習問題3
"izumi","Kanto","Kudo","Sato","Sugawala","Matuda","Wada"の7個の文字列の長さを求めて表示しなさい。
(ただし,ポインタのボインタを用いること。)

(実行結果例)
6 : izumi
5 : kanto
4 : Kudo
4 : Sato
8 : Sugawara
6 : Matuda
4 : Wada


★演習問題4
文字型配列str1に,"ABCDEFGHIJKLMNOPQRSTUVWXYZ"という文字列が格納されている。
ポインタを2個用いて,文字型配列str2に,この文字列を逆順に格納しなさい。

★演習問題5
人力されたクラスの人数と科目の数に応じた配列を確保し,入力されたデータをその配列に保存し,科目ごとの和を求めよ。
例として,人数を3とし,科目数を3とした場合,それぞれの科日数に対する点数を読み込み,結果が正しく出力されるかを確認せよ。
(時間があれば,人数や科日数を適当に変えて,動作を確認せよ)


生徒番号 国語 数学 英語
1 85 74 63
2 78 65 70
3 89 92 88
4 32 48 66



(実行結果例)
クラスの人数は?4
科目の数は?3
1番目の学生
74
63
2番目
78
65
70
3番目の学生
89
92
88
4番目の学生
32
48
66
各科目の和は以下の通りです
222
213
269
146

たかぎ

Re:宿題なのですが・・・

#2

投稿記事 by たかぎ » 15年前

まずはお約束通り...
[flash 600,100]http://dixq.net/flash/kiyaku4.swf[/flash]

Mist

Re:宿題なのですが・・・

#3

投稿記事 by Mist » 15年前

で、何を助ければいいんですか?
丸投げするつもりなら2ちゃんの宿題スレのほうがよろしいかと。
自分で出来ないなら正直にいったほうがあなたの人生にとっては遥かに有意義だと思いますけどね。

てら

Re:宿題なのですが・・・

#4

投稿記事 by てら » 15年前

宿題スレにも書きました。

でもほんとに急いでいて、でも聞ける友達も今いなくて・・
今後はしっかり勉強して、聞ける友達も作ろうと思うのでどうか今回だけ、この宿題やっていただきたいです。

ほんとに困っています。自分ではできないのでお願いしたいです・・

自分勝手ですみません。

たかぎ

Re:宿題なのですが・・・

#5

投稿記事 by たかぎ » 15年前

せっかくなので私も考えてみることにします。
ただ、よくわからないところがあるので、補足願います。

> linuxでemacsで作ってktermでコンパイルするやつです。

ktermでどうやってコンパイルするのでしょうか?
kterm初心者なのでわかりません。ぜひご教示ください。

> 入力されたデーク数に応じた

「デーク数」とは何でしょうか?

> 1番目のデータを人力してください:1

1番目だけは、「入力」ではなく「人力」なんでしょうか?

たかぎ

Re:宿題なのですが・・・

#6

投稿記事 by たかぎ » 15年前

> 宿題スレにも書きました。

マルチポストは禁止です。
利用規約を熟読してから出直した方が、結局は近道です。

てら

Re:宿題なのですが・・・

#7

投稿記事 by てら » 15年前

たかぎさん、ありがとうございます。
誤字ばかりですみません。
> linuxでemacsで作ってktermでコンパイルするやつです。

ktermでどうやってコンパイルするのでしょうか?
kterm初心者なのでわかりません。ぜひご教示ください。

私もよくわからないのですが、ktermを開いて、gcc -o 実行形式ファイル名
を打って、./a.out<return>と入力するとコンパイルされて作成された実行可能形式プログラムが実行されるっていうこと?です。すみませんよくわからないですよね。


> 入力されたデーク数に応じた

「デーク数」とは何でしょうか?

データ数の間違いです。

> 1番目のデータを人力してください:1

1番目だけは、「入力」ではなく「人力」なんでしょうか?

いいえ、入力です。


ほんと誤字が多くてすみません。。

たかぎ

Re:宿題なのですが・・・

#8

投稿記事 by たかぎ » 15年前

とりあえず、演習問題1だけ...
#include <stdio.h> 
#include <stdlib.h>
#include <errno.h>
#include <inttypes.h>
#include <stdbool.h>

bool get_value(FILE *stream, intmax_t *value)
{
    char s[100];
    if (fgets(s, 100, stream) == NULL)
        return false;

    errno = 0;
    char *endptr;
    intmax_t t = strtoimax(s, &endptr, 0);
    if (errno != 0 || *endptr != '\n')
        return false;
    
    if (value == NULL)
        return false;
    *value = t;
    return true;        
}

int main(void)
{
    setvbuf(stdout, NULL, _IONBF, 0);

    fputs("データの数は?", stdout);
    intmax_t n;
    if (!get_value(stdin, &n))
        return EXIT_FAILURE;

    intmax_t data[n];
    intmax_t sum = INTMAX_C(0);
    for (intmax_t i = 0; i < n; i++)
    {
        printf("%jd番目のデータを入力してください:", i + 1);
        if (!get_value(stdin, &data))
            return EXIT_FAILURE;
        sum += data;
    }

    printf("和=%jd\n", sum);
}

コメントはないので勝手に解析してください。

Mist

Re:宿題なのですが・・・

#9

投稿記事 by Mist » 15年前

> たかぎさん

宿題スレで答え貰ってるからもういいんじゃないですか。
あと、こっちでは書かれてないけどC++だそうですよ。

たかぎ

Re:宿題なのですが・・・

#10

投稿記事 by たかぎ » 15年前

> 宿題スレで答え貰ってるからもういいんじゃないですか。

リンクも貼られていませんし、解決にもなっていませんからね。

> あと、こっちでは書かれてないけどC++だそうですよ。

別の質問ではないですか?
gccコマンドでC++はコンパイルできませんから。

Mist

Re:宿題なのですが・・・

#11

投稿記事 by Mist » 15年前

> 別の質問ではないですか?

添付ファイルがこのスレと同じものでしたので間違いないでしょう。
「人力」とか書いていましたし。

> gccコマンドでC++はコンパイルできませんから。

本人も書いているとおり「わかってない」んでしょうね。

たかぎ

Re:宿題なのですが・・・

#12

投稿記事 by たかぎ » 15年前

> 本人も書いているとおり「わかってない」んでしょうね。

ということは、宿題スレで得られた回答は役に立たない可能性も十分ありますね。

Dixq (管理人)

Re:宿題なのですが・・・

#13

投稿記事 by Dixq (管理人) » 15年前

まず、わかるところからやってみませんか?

1,キーボードから入力された数値を表示するだけのプログラムを書きましょう

を書いてあったら出来ますか?
どのあたりで躓いているかがわかれば回答が的確になると思います。

閉鎖

“C言語何でも質問掲示板” へ戻る