- ベストアンサー
表示の仕方
どなたか教えていただきたいのですが。 c言語初心者です。 たとえば構造体での出力なんですが struct ordience a[]{{1,"nakano",32}, {2,"kanou",39}, {3,"satou",33}}; printf("%d %s %d\n",a.no[1],a.name[1],a.point[1]); 以上で二列目の配列を表示させたいのですがうまくいきません。 どなたか教えていただけませんか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
質問する際には、実行しているソースをそのまま貼り付けてください。 また、「何がどううまくいかない」のかも書いてください。 今回ならコンパイルで文法エラーが出ているはずです。 初期化が違います。 >struct ordience a[]{{1,"nakano",32}, struct ordience a[] = {{1,"nakano",32}, 構造体の2番目なので >a.no[1] ではなく a[1].no です。
その他の回答 (2)
- m-take0220
- ベストアンサー率60% (477/782)
回答No.2
配列になっているのは a なので、 printf("%d %s %d\n",a[1].no,a[1].name,a[1].point); じゃないですか?
質問者
補足
ありがとうございました。うまくとおりました。
- Tacosan
- ベストアンサー率23% (3656/15482)
回答No.1
なんで a.no[1] なの? a[1] とかが構造体なんじゃない?
質問者
お礼
たしかにそのとおりでした。 ありがとうございます。
お礼
ありがとうございます。 たいへんためになります。