
至急お願いします。プログラミングの問題です。
最初に正の整数nの入力を受け付け、次に分数の分子と分母を意味する整数のn組の入力を受け付けて、全部の分数の和の「式と結果」を出力するプログラムex14-3.cを完成させよ。少なくとも入出力例3と全く同じ入出力を再現すること。入力値は正の整数のみを考えれば良い。表示される分数は約分されなくて良い。分母が1の時でも分数表現のままで良い。ただしex14-3.cの作成にあたっては以下の条件を満たすこと。
・main関数の中は、追記しかできず(削除できない)追記箇所は//の左側のみとする。printf文は追記できない。
・main関数の外にも追記してよく、こちらはprintf文も追記できるが、グローバル変数、実数、は用いらないこと。
入出力例3
n:
3(ここは入力例)
x1:
1(ここは入力例)
y2:
2(ここは入力例)
x2:
3(ここは入力例)
y2:
4(ここは入力例)
x3:
5(ここは入力例)
y3:
6(ここは入力例)
1/2+3/4+5/6=100/48
ex14-3.c
#include <stdio.h>
int main(void)
{
int i,n;
//
printf(“n:\n”);
scanf(“%d”,&n);
//
for(i=0;i<n;i++)
{
printf(“x%d:\n”,i+1);
//
printf(“y%d:\n”,i+1);
//
}
sum(n,z);
//
return 0;
}
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
2次元配列嫌い(理解できてない)のと、n の上限が指定されていないので、仕方なく。
プログラムが終わる時の free() はしない派。
#include <stdio.h>
#include <stdlib.h>
struct bunsu
{
int bunshi;
int bunbo;
};
struct bunsu add(struct bunsu a, struct bunsu b)
{
struct bunsu result;
result.bunbo = a.bunbo * b.bunbo;
result.bunshi = a.bunshi * b.bunbo + a.bunbo * b.bunshi;
return result;
}
void sum(int n, struct bunsu *z)
{
struct bunsu wk = {0, 1};
for (int i = 0; i < n; i++)
{
printf("%d/%d", z[i].bunshi, z[i].bunbo);
if (i != n - 1) printf("+");
wk = add(wk, z[i]);
}
printf("=%d/%d\n", wk.bunshi, wk.bunbo);
}
int main(void)
{
int i,n;
struct bunsu *z;
//
printf("n:\n");
scanf("%d",&n);
z = malloc(sizeof(struct bunsu) * n);
for(i=0;i<n;i++)
{
printf("x%d:\n",i+1);
scanf("%d", &z[i].bunshi);
printf("y%d:\n",i+1);
scanf("%d", &z[i].bunbo);
}
sum(n,z);
//
return 0;
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Eclipseコンソール表示を、リセ...
-
java初心者です。入力されたの...
-
UWSCで変数をキー入力
-
C言語でのカレンダー作成
-
*をユーザーが入力した数字の数...
-
コマンドプロンプトからのEOFの...
-
C言語
-
プログラミング初心者です。 Py...
-
漢字のソートについて
-
C言語 While文(ループ)内の...
-
C言語 逆ピラミッドの作り方
-
最早開始時間と最遅完了時刻を...
-
【C++】関数ポインタの使い方
-
既定のコンストラクタがありま...
-
Aの値からBの値を除するとは??
-
「Aに対するBの割合」と「Aに対...
-
信頼区間の1.96や1.65ってどこ...
-
a^2の√=a が成り立たない場合
-
VB6.0での小数点の扱いについて
-
配列をnビットシフトする
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
数字以外が入力されたらエラー...
-
正負を反転させて出力するプロ...
-
プログラミング初心者です。 Py...
-
*をユーザーが入力した数字の数...
-
java初心者です。入力されたの...
-
コマンドプロンプトからのEOFの...
-
4桁の数字以外を入力したらエラ...
-
Eclipseコンソール表示を、リセ...
-
Excel VBAで、Application.Inpu...
-
"scanf"でエンターで改行させな...
-
cout関数を使っているのですが...
-
プログラミングの問題です 「金...
-
scanf関数について
-
Userformの入力順序をタブオー...
-
C言語でgetchar();が上手く使え...
-
プログラムの実行時に'<'でリダ...
-
C言語初心者です。ファイルの読...
-
scanf が無視されます
-
実行結果の順番がおかしいんで...
-
C言語scanf_sで何故か2回入力に...
おすすめ情報