• ベストアンサー

条件演算子

このプログラムをIF文じゃなくて条件演算子を使って書き換えることはできますか? #include <stdio.h> int main(void) { int vx; printf("整数入力しなさい:"); scanf("%d,&vx"); if(vx) puts("その数は非0");   else puts("その数は0"); return(0); }

質問者が選んだベストアンサー

  • ベストアンサー
  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

#include <stdio.h> int main(void) { int vx; printf("整数入力しなさい:"); scanf("%d",&vx); printf("vx:%d\n",vx); puts(vx ? "その数は非0":"その数は0"); return(0); }

hirohiro8888
質問者

お礼

ありがとうございます。

その他の回答 (1)

  • rentahero
  • ベストアンサー率53% (182/342)
回答No.2

> if(vx) > puts("その数は非0"); >   else > puts("その数は0"); こうかな? vx ? puts("その数は非0") : puts("その数は0"); 左辺値利用してないから、多分問題意図とは違うけどね。 左辺値の利用の場合はこう書ける int main(void ) { int vx; char *p; ... p = vx ? "その数は非0" : "その数は0"; puts(p); } charポインタ変数pに左辺値を代入してみました。