前提・実現したいこと
入力した値を変更して表示するプログラムを作っています。
具体手には、
x→z
y→x
z→y
に変更して表示します。
そのためにエラーを取り除きたいですが、できなくて困っています。
お力添えいただけると幸いです。
【追加】
すみません。説明不足でした。
rotateの内部で出力を行う必要があります。
発生している問題・エラーメッセージ
kadai5_2.c(29): warning C4047: '関数': 間接参照のレベルが 'int *' と 'int' で異なっています。 kadai5_2.c(29): warning C4024: 'swap': の型が 1 の仮引数および実引数と異なります。 kadai5_2.c(29): warning C4047: '関数': 間接参照のレベルが 'int *' と 'int' で異なっています。 kadai5_2.c(29): warning C4024: 'swap': の型が 2 の仮引数および実引数と異なります。 kadai5_2.c(30): warning C4047: '関数': 間接参照のレベルが 'int *' と 'int' で異なっています。 kadai5_2.c(30): warning C4024: 'swap': の型が 1 の仮引数および実引数と異なります。 kadai5_2.c(30): warning C4047: '関数': 間接参照のレベルが 'int *' と 'int' で異なっています。 kadai5_2.c(30): warning C4024: 'swap': の型が 2 の仮引数および実引数と異なります。 kadai5_2.c(31): warning C4047: '関数': 間接参照のレベルが 'int *' と 'int' で異なっています。 kadai5_2.c(31): warning C4024: 'swap': の型が 1 の仮引数および実引数と異なります。 kadai5_2.c(31): warning C4047: '関数': 間接参照のレベルが 'int *' と 'int' で異なっています。 kadai5_2.c(31): warning C4024: 'swap': の型が 2 の仮引数および実引数と異なります。
該当のソースコード
C言語
1#include <stdio.h> 2 3void swap(int *nx,int *ny); 4void rotate(int *x,int *y,int *z); 5 6int main(void) 7{ 8 int x,y,z; 9 10 printf("3つの整数を入力してください(1マスずつ開けて入力):"); 11 scanf("&d %d %d",&x, &y, &z); 12 13 rotate(&x,&y,&z); 14 15 return 0; 16} 17 18void swap(int *nx,int *ny) 19{ 20 int temp = *nx; 21 22 *nx = *ny; 23 *ny = temp; 24 25} 26 27void rotate(int *x,int *y,int *z) 28{ 29 swap(*x,*z); 30 swap(*y,*x); 31 swap(*z,*y); 32 33 printf("出力:%d %d %d",*x, *y, *z); 34 35 36}
試したこと
何をしたらいいのか分からなかったので、試してません。
すみません。
補足情報(FW/ツールのバージョンなど)
サクラエディタ、コマンドプロンプトfor VS 2019を使用しています。
[不要なコメントとなったので削除しました]
回答2件
あなたの回答
tips
プレビュー