7.入力
サンプル7−1
#include <stdio.h>
int main()
{
float a;
printf("半径 a を入力してください\n a = ");
scanf("%f",&a);
printf("円の周囲 =%.3f\n",2*a*3.1415);
printf("円の面積
=%.3f\n",a*a*3.1415);
printf("球の体積
=%.3f\n",4/3*a*a*a*3.1415);
return(0);
}
scanf は printf
の全く逆の働きになっていると考えていい関数です。printf
で数値(または文字列)を出力(見えるようにする)のに対して、scanf
はデータの取り込みを行うと考えればいいです。注意しておくのは、6行目の値を読み込むときです。データを取り込む際に、&をつけて呼んでいます。一見つけなくても良さそうなのですが、データを受ける場合と渡す場合を明らかに区別するためにこのような操作が必要なのだと理解しておいて下さい。
次に、1文字だけ入れてそれを書き出すプログラムを書いて見ましょう。
サンプル7−2
#include <stdio.h>
int main()
{
int ch;/*文字列を使うのだけど、int であることに注意*/
printf("一文字だけ入力してください\n");
ch=getchar();/*get charactorの略*/
putchar(ch);/*put charactorの略*/
printf("\n");
return(0);
}
文字列を入力して出力する場合には、gets
と puts を使います。getsで取ってきて、puts
で出力というイメージです。
サンプル7−3
#include <stdio.h>
int main()
{
char n[80];/*1バイト文字で79字、2バイト文字だと39字まで入力可能*/
printf("文字列を入力してください\n");
gets(n);
puts(n);
return(0);
}