ポインタについて・・・その2

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

ポインタについて・・・その2

#1

投稿記事 by 困ったさん » 18年前

先程はありがとうございました。
今度は「倍精度実数型変数aと倍精度実数型ポインタ変数pを定義し、以下の動作を
行なうプログラムを作成しなさい。
①キーボードから実数aの値を読み込み、aに格納する
②aの値とaのアドレスを画面表示する
③aのアドレスをpに代入しておき、pを通じてキーボードから実数を読み込む
④pの指し示す先の要素の値とpの値を画面表示する」というものです。

今現在では

#include<stdio.h>

int main(void){

double a,*p=&a;

printf("実数aを入力 ->");

scanf("%lf",&a);

printf("a=%f &a=%p\n",a,&a);

return 0;

}

というところどまりで③と④の意味がよくわからなくて困っています。
この後どうすればいいのでしょうか?

keichan

Re:ポインタについて・・・その2

#2

投稿記事 by keichan » 18年前

scanf("%lf",p);
printf("*p=%f p=%p\n", *p, p);

をreturn 0;の直前に入れてみてください

困ったさん

Re:ポインタについて・・・その2

#3

投稿記事 by 困ったさん » 18年前

scanfのpの前に&は必要ですか?

keichan

Re:ポインタについて・・・その2

#4

投稿記事 by keichan » 18年前

いえ、必要ありません。

困ったさん

Re:ポインタについて・・・その2

#5

投稿記事 by 困ったさん » 18年前

つまりこういうプログラムで大丈夫でしょうか?

#include<stdio.h>

int main(void){
double a;
double *p;
p=&a;
printf("実数aの値を入力 ->");
scanf("%lf",&a);
printf("a=%f &a=%p\n",a,&a);
printf("実数を入力 ->");
scanf("%lf",p);
printf("*p=%f p=%p\n",*p,p);
return 0;
}

keichan

Re:ポインタについて・・・その2

#6

投稿記事 by keichan » 18年前

それでいいと思いますが、何か期待しているのとは違う値が
出力されたのですか?

困ったさん

Re:ポインタについて・・・その2

#7

投稿記事 by 困ったさん » 18年前

いえ、pとaは同じ実数を入力した場合同じ値が出ればいいんですよね?

keichan

Re:ポインタについて・・・その2

#8

投稿記事 by keichan » 18年前

その通りです。

困ったさん

Re:ポインタについて・・・その2

#9

投稿記事 by 困ったさん » 18年前

はい。そうなりました。みなさんありがとうございましたm(__)m

閉鎖

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