以下の問題でorder関数の使い方がわからないので教えてください。途中まで作成したものも貼っておきます。
よろしくおねがいします。
100 までのランダムな整数 x, y を定義する。int 型のポインタを 2 つ受け取る order 関数をつくり,int 型変数(x)が(y)よ りも大きい場合は,値を入れ替える。
#include<stdio.h>
#include<time.h>
#include<stdlib.h>
void swap(int *x, int *y);
int main(void)
{
int x,y;
int *p;
srand((unsigned)time(NULL));
x= (int)(rand()/(RAND_MAX +1.0)*100);
y=(int)(rand()/(RAND_MAX +1.0)*100);
p=&x;
printf("x:address %p, value = %d\n",&x,x);
printf("y:address %p, value = %d\n",&y,y);
if (x<y)
{ swap(&x,&y);}
printf("x:address %p, value = %d\n",&x,x);
printf("y:address %p, value = %d\n",&y,y);
return 0;
}
void swap(int *x, int *y)
{
int c;
c = *x; *x =*y; *y = c;
return ;
}
閉じる
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
>order関数の使い方がわからないので
swapをorderにしたら
if (x<y)
が要らなくなるだけだと思いますが・・・
因みにそんな物作ってもソースが分かりにくくなる
だけだと思う。
No.1
- 回答日時:
order関数とありますが、ソースコードを見る限りswap関数ではないですか?
あとp=&x;の部分ですが、printf関数に直接アドレスと値を渡しているように見えるので要らないかと思われます。
(途中までとのことなのでこの後何かに使われるのかもしれませんが。)
xがyより大きい場合ならif文の不等号が逆です。
if (x<y)
↓
if(x>y)
swap関数にはそれぞれxとyの変数のアドレスを渡して、中身を入れ替えることをやっています。
ですので呼び出し元の変数も同様に入れ替わっています。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C言語について 2 2021/12/15 17:16
- C言語・C++・C# c言語の問題です 3 2023/01/10 16:15
- C言語・C++・C# 次のプログラムでは、配列yの中に数値0,1,2がいくつあるか数えて実行例のように出力するプログラムの 1 2021/11/15 20:21
- C言語・C++・C# C言語 ループ中からの関数の呼び出し方のコーディング 2 2021/11/02 09:33
- C言語・C++・C# 論理演算子を判定するプログラム c言語で 3 2021/12/08 17:38
- C言語・C++・C# カードシャッフルのブログラムを使ってc言語でブラックジャックをしたい 2 2022/04/12 15:13
- C言語・C++・C# これの答えは5になるとおもいます。 1 2021/11/08 10:47
- C言語・C++・C# C言語の問題です。 1 2021/10/21 15:05
- C言語・C++・C# c言語 文字化けします 2 2021/12/08 16:35
- C言語・C++・C# c言語の問題です 課題1 (二分探索木とセット) 大きさ size の配列 array を考える。す 2 2023/01/10 21:08
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教える店舗&オフィスのセキュリティ対策術
中・小規模の店舗やオフィスのセキュリティセキュリティ対策について、プロにどう対策すべきか 何を注意すべきかを教えていただきました!
-
C言語 バッファについて。
C言語・C++・C#
-
C言語関数違いについて。
C言語・C++・C#
-
C言語って古いですか?
C言語・C++・C#
-
-
4
C言語の関数と配列に関する質問
C言語・C++・C#
-
5
C言語について。
C言語・C++・C#
-
6
double型が正常に認識されていない恐れ
C言語・C++・C#
-
7
変数名を引数として渡す、アドレスを引数として渡す方法
C言語・C++・C#
-
8
C言語について
C言語・C++・C#
-
9
VisualStudio2022でC言語プログラムで全角文字を使用すると不明なエラーが表示される
C言語・C++・C#
-
10
これなにがちがうんですか??
C言語・C++・C#
-
11
ストリーム 意味について。
C言語・C++・C#
-
12
C言語 バッファについて。
C言語・C++・C#
-
13
C言語 バッファについて。
C言語・C++・C#
-
14
C言語について。
C言語・C++・C#
-
15
バッファリングについて。
C言語・C++・C#
-
16
C言語 解答について。
C言語・C++・C#
-
17
gcc13.2のバグ?
C言語・C++・C#
-
18
コマンドプロンプトについて。
C言語・C++・C#
-
19
ストリームについて。
C言語・C++・C#
-
20
C言語について。
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「指定されたキャストは有効で...
-
C言語での引数の省略方法
-
へんな現象
-
#define _CRT_SECURE_NO_WARNIN...
-
【C++】関数ポインタの使い方
-
複数桁10進数の*桁目だけを抽出...
-
if と配列の組み合わせ
-
(int *)の意味
-
アスタリスクで正方形
-
プログラミングペーパーテスト ...
-
C言語でDxlibを使って3x3の奇数...
-
C言語 巡回セールスマン問題 2-...
-
C言語 エラーの原因がわからな...
-
実数の整数部,小数部の取得
-
数字列を3桁ごとにカンマで区切...
-
課題なんですが・・・
-
C 言語の Gauss Jordan 法について
-
ラップ関数とはどんなものですか?
-
C言語 配列と関数の練習問題
-
教えてください(丸罰ゲーム)
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C言語での引数の省略方法
-
#define _CRT_SECURE_NO_WARNIN...
-
「指定されたキャストは有効で...
-
C言語 配列と関数の練習問題
-
複数桁10進数の*桁目だけを抽出...
-
(int *)の意味
-
if と配列の組み合わせ
-
ラップ関数とはどんなものですか?
-
卒業研究でよく分からないとこ...
-
【C++】関数ポインタの使い方
-
c言語
-
足して100になるような乱数のア...
-
C言語初心者です、、、お助けく...
-
数字列を3桁ごとにカンマで区切...
-
C言語 エラーの原因がわからな...
-
実数の整数部,小数部の取得
-
課題でつまってます・・・
-
商と剰余を同時に求める(C言語)
-
C言語の配列をC++のvectorに高...
-
std::set<int> で、ある値が何...
おすすめ情報
ありがとうございます
記載したソースコードはswap関数を使っているんですが、order関数を使って同じ結果を得たいのですがどうすればいいのでしょうか。
わかりづらい質問ですみません。