以下、プログラムは『解きながら学ぶc言語』のp112のプログラムを一部改変したものです。
配列に値を格納して、逆順に並び替えた上で、出力するプログラムです。
char型の配列にリテラルを格納する際は、&を記述しなくてもエラーが起きません。
しかし、なぜint型の配列に格納する際に、&を記述しないとエラーになるのですか?
#include <stdio.h> int main(void){ int ary[7]; int i; //配列に値を格納 for(i=0;i<7;i++){ printf("ary[%d]:",i); scanf("%d",&ary[i]);//質問箇所 } //配列を逆順に並べ替え for(i=0;i<3;i++){ int temp=ary[i]; ary[i]=ary[6-i]; ary[6-i]=temp; } //並べ替え後の配列を表示 for(i=0;i<7;i++){ printf("ary[%d]=%d\n",i,ary[i]); } }
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/08/21 06:36