第九回 分岐:if文
コマンド
- いままでのでてきたコマンド
必修
cd, pwd, ls, grep, cat, head, tail
そのほか
history, wc, w3m,
- 今回は地味なもの.
- mkdirコマンド: フォルダをつくる.
mkdir フォルダ名
例 tmp1という名前のフォルダをつくる。
mkdir tmp1
-
- mvコマンド:ファイルの名前を変える
mv 元のファイル名 変えたいファイル名
echo "test"
testと表示するコマンド
echo "test" > test.txt
リダイレクトでtext.txtファイルを作成。
mv test.txt test.c
今作った,test.txt をtest.cに変更.
-
- mvコマンドは移動もできる.
mv 元のファイル名 移動したいフォルダ名
mv test1.txt tmp1
例)
mkdir tmp1
tmp1というフォルダをつくる.
C言語
条件分岐をやります.
条件分岐は,大雑把にいうと,
「~のとき(条件)」に「...」を実行する
というものです.
- 基本的には,以下のように書きます.if文といいます.
if(条件){ 条件をみたしたときの実行内容 }
- elseを後ろにつけると条件をみたさない場合も書けます.If Else文といいます。
if(条件){ 条件をみたしたときのの実行内容 }else{ 条件をみたさないときの実行内容 }
条件は,
i<j: iがjより小さい場合 i>j: iがjより大きい場合 i<=j: iがjより小さい場合(iとjが等しいを含む) i>=j: iがjより大きい場合(iとjが等しいを含む) i==j: iとjが等しい場合(「i=j」でないので注意!.) i!=j: iとjが等しくない場合
ほかは、おいおいやる.
&& かつ (and) || または (or) ! 否定
例えば,
if(i>=2 && j>=3) ならば,iが2以上かつjが3以上
if(i>=2 || j>=3) ならば,iが2以上またはjが3以上
if(i>=2 && j>=3 && k<3) ならば,iが2以上かつjかつ3以上かつkが3以上
if(!(i<=2)) 「iが2より小さく」ない、ときに実行
if(!(i<=2 && j>=3)) 「iが2より小さくかつjが3より大きい」ではない、ときに実行
- 例 iが負の値だったら警告をだすをたす.
i=2だと、、、
//はコメントなので「//」ではじまる行は無視されることに注意
int main(){ int i; i=2; printf("start\n"); if(i<0){ printf("Negative!\n"); } printf("end\n"); }
実行結果
start
end
i=-3だと、、、
int main(){ int i; i=2; //i=-3; printf("start\n"); if(i<0){ printf("Negaive!\n"); } printf("end\n"); }
実行結果
start
Negative!
end
- 例 値が10のときだけ1000をたす.
i=-3 だと,
int main(){ int i; //i=2; i=-3; printf("start\n"); if(i==10){ sum=i+1000 } printf("%d\n",sum); }
i=2 だと,
//はコメントなので「//」ではじまる行は無視されることに注意
int main(){ int i; i=2; //i=10; printf("start\n"); if(i==10){ sum=i+1000 } printf("%d\n",sum); }
出力
ik
i=10だと,
int main(){ int i; //i=2; i=10; printf("start\n"); if(i==10){ sum=i+1000 } printf("%d\n",sum); }
ポイント 「==」は等しいの意味。代入の=と区別する.
-
- 実数だと?
x=10.3のときに100を足す.
|
x=10だと,
int main(){ double x; double sum; //i=2; x=10; printf("%lf\n",x); if(x==10.3){ sum=x+100; } printf("%lf\n",sum); }
x=10.3のときに100を足す.
|