演算子と型変換

今日はこれをやった。型変換するためのキャストと変数をうまく使い回すための練習。コンパイルが通らないため、いらいらすることが多くなる。
/**************プログラミング概要*******************/
/************int型の変数をdouble型の変数に代入*********************/
#include<stdio.h>

int main_dieiki(void)
{
int int_kata_suuji;
double double_kata_suuji;

int_kata_suuji=160;

printf("身長は%dセンチです\n",int_kata_suuji);

printf("double型の変数に代入します\n");

double_kata_suuji=int_kata_suuji; //int型の変数をdouble型の変数に代入した

printf("身長は%fセンチです\n",double_kata_suuji);

return 0;
}

#include<stdio.h>

int main_daljla(void)
{
  int takasa,teihen;
double menseki;

printf("三角形の高さを入力しなさい\n");
scanf("%d",&takasa);

printf("三角形の底辺を入力しなさい\n");
scanf("%d",&teihen);

menseki=(double)(takasa*teihen)/2; //cast演算子を用いて、int型演算を実数型演算に変換

printf("三角形の面積は%fです\n",menseki);

return 0;
}

#include<stdio.h>

int main_dkkjk(void)
{

int kazu=0;

printf("整数を入力してください\n");

scanf("%d",&kazu);

kazu=kazu*-1;

printf("正負を反転すると%dです\n",kazu);

return 0;
}


#include<stdio.h>

int main(void)
{
int kazu_1,kazu_2,kazu_3,kazu_4,kazu_5;
double karinoiremono;

karinoiremono=0-4;

printf("0-4=%d\n",karinoiremono);

karinoiremono=3.14*2;

printf("3.14*2=%.3lf\n",karinoiremono);

karinoiremono=5/3.0;

printf("5/3=%.3lf\n",karinoiremono);

karinoiremono=30%7;

printf("30%7=%lf\n",karinoiremono);

karinoiremono=(7+32)/5;

printf("(7+32)/5=%.1lf\n",karinoiremono);


return 0;
}

#include<stdio.h>

int main_finito(void)
{
int hennonagasa,menseki;

printf("正方形の辺の長さを整数で入力してください\n");

scanf("%d",&hennonagasa);

menseki=hennonagasa*hennonagasa;

printf("正方形の面積は%d\n",menseki);

return 0;
}

#include<stdio.h>

int main(void)
{
int kamoku_1,kamoku_2,kamoku_3,kamoku_4,kamoku_5;//代入されるから、初期化いらない
int goukei=0;   //参照する必要があるため、初期化がする必要
double heikin;//goukeiはint型のほうがいい。代入されるから、初期化いらない

printf("科目1の点数を入力してください\n");
scanf("%d",&kamoku_1);

printf("科目2の点数を入力してください\n");
scanf("%d",&kamoku_2);

printf("科目3の点数を入力してください\n");
scanf("%d",&kamoku_3);

printf("科目4の点数を入力してください\n");
scanf("%d",&kamoku_4);

printf("科目5の点数を入力してください\n");
scanf("%d",&kamoku_5);

goukei= kamoku_1+kamoku_2+kamoku_3+kamoku_4+kamoku_5;

printf("5科目の合計点は%d点です\n",goukei);

heikin=(double)goukei/5;
printf("5科目の平均点は%lf.2点です\n",heikin);

return 0;
}

/**************プログラミング概要*******************/
/************double型変数にint型変数を代入(無理がある)*********************/
#include<stdio.h>
int main_ndjk(void)
{
int int_kata_suuji;
double double_kata_suuji;

double_kata_suuji=160.5;

printf("身長は%fセンチです",double_kata_suuji);

printf("int型の変数に代入する\n");

int_kata_suuji=double_kata_suuji; //double型変数にint型変数を代入した

printf("身長は%dセンチです\n",int_kata_suuji);//バイト数が不足し、データが漏れる

return 0;
}

#include<stdio.h>

int main_lkjlkfj(void)
{
int d=2;
double pi=3.14;

printf("直径が%dセンチの円の\n",d);
printf("円周は%fセンチです\n",d*pi); //d*piの解は大きい型のdouble型に変換される

return 0;
}

/**************プログラミング概要*******************/
/*************int型同士の演算には注意が必要********************/
#include<stdio.h>

int main_wed(void)
{
int kazu1,kazu2;
double kotae;

kazu1=5;
kazu2=4;

kotae=kazu1/kazu2; //kazu1/kazu2の演算はint型同士の演算
                      //kotae=(double)kazu1/kazu2を使えば問題解決
printf("5/4は%.3fです\n",kotae); // kotaeにはInt型の演算結果が代入されている

return 0;
}

式と演算(operator,operand)

変数を用意して、四則演算子を使って、加減乗除させる。
それほど、難しくはなさそう。
/**************プログラミング概要*******************/
/*************定数で式と演算********************/
#include<stdio.h>

int main_pooeiik(void)
{
printf("1+2は%dです。\n",1+2);
printf("3×4は%dです。\n",3*4);

return 0;
}
/**************プログラミング概要*******************/
/****************式と演算*****************/
#include<stdio.h>

int main_addlk(void)
{
int suuchi1=2;
int suuchi2=3;
int goukei;
goukei=suuchi1+suuchi2;

printf("変数suuchi1の値は%dです。\n",suuchi1);
printf("変数suuchi2の値は%dです。\n",suuchi2);
printf("suuchi1+suuchi2の合計は%dです。\n",goukei);

suuchi1=suuchi1+1;  //ここが重要
printf("変数suuchi1の値に1を足すと%dです。\n",suuchi1);

return 0;
}

/**************プログラミング概要*******************/
/***************2変数で式の演算をする******************/
#include<stdio.h>

int main_nfjjsd(void)
{
int seisuu1,seisuu2;

printf("整数1を入力してください。\n");

scanf("%d",&seisuu1);

printf("整数2を入力してください。\n");
scanf("%d",&seisuu2);

//  ,seisuu1+seisuu2がミソ
printf("2つの整数の足し算の結果は%dです。\n",seisuu1+seisuu2);

return 0;
}

/**************プログラミング概要*******************/
/*****************定義して演算****************/
#include<stdio.h>

int main_klkfklj(void)
{
char kubun;
int tanka,suuryou; //2変数を宣言して、最後のprintf文で演算した

//goukei=tanka+suuryou;のやり方もある。

printf("区分を入力してください。\n");
scanf("%c",&kubun);

printf("単価を入力してください。\n");
scanf("%d",&tanka);


printf("数量を入力してください。\n");
scanf("%d",&suuryou);

printf("区分%cで合計は\\%dです。\n",kubun,tanka*suuryou);
return 0;
}
/**************プログラミング概要*******************/
/*********************************/
#include<stdio.h>

int main_ghhhh(void)
{
int kazu1=10;
int kazu2=5;

printf("kazu1とkazu2に色々な演算を行う。\n");
printf("kazu1+kazu2は%dです\n",kazu1+kazu2);
printf("kazu1-kazu2は%dです\n",kazu1-kazu2);
printf("kazu1*kazu2は%dです\n",kazu1*kazu2);
printf("kazu1/kazu2は%dです\n",kazu1/kazu2);
printf("kazu1%%kazu2は%dです\n",kazu1%kazu2);

return 0;
}


/**************プログラミング概要*******************/
/*************5つの変数で演算********************/
int main_irej(void)
{
int suuchi1,suuchi2;
int total1,total2;
int goukei;

printf("数値1を入力してください\n");
scanf("%d",&suuchi1);

printf("数値2を入力してください\n");
scanf("%d",&suuchi2);

goukei=suuchi1+suuchi2;  //goukeiに加算の演算結果を格納
printf("数値1と数値2の合計は%dです\n",goukei);

total1=goukei*suuchi2;  //goukeiに加算の演算結果を格納
printf("合計にを数値1で乗算した値は%dです\n",total1);

total2=goukei%suuchi2; //goukeiに加算の演算結果を格納
printf("合計を数値2で剰余した値は%dです\n",total2);

return 0;
}

getchar()

getchar()の使い方が分かり難い。一文字の入力のみ受け取るのはscanfと同じようだが、別の変数を用意しておいて、それに代入してやる? ffluch(stdin)何のことやら。

/**************プログラミング概要*******************/
/****************getcharを使って英数字を一つ入力させる*****************/
#include<stdio.h>
int main(void)
{
char eisuuji;//char型の宣言

printf("文字を入力してください(英数字)\n");
eisuuji=getchar();//プロンプト画面から入力させる
printf("%cが入力されました\n",eisuuji);//結果

fflush(stdin);/********fflush(stdin)でcharを空にしてgetcharのバグを解消***********/
eisuuji=getchar();//プロンプト画面から入力させる
printf("%cが入力されました\n",eisuuji);//結果

fflush(stdin);/*******************/
eisuuji=getchar();//プロンプト画面から入力させる
printf("%cが入力されました\n",eisuuji);//結果

return 0;
}

変数宣言と入出力(printf,scanf)

int型や、double型、char型を宣言して、scanf関数で入力させ、printfで出力させるプログラムを組む練習をした。
難しいのは、int→"%d"、double→"%f"、char→"%c"といったように変数の型に合わせて、変換使用を合致させなければいけない点。あと、scanfの引数には&(アンパーサンド)を付けて、printfでは、必要がないこと。単純そうだが、これがうまく対応せず、コンパイルエラーの連発だった。

include<stdio.h>
int main_lesson1(void)
{
   int age;

   printf("あなたは何歳ですか?\n");
   scanf("%d",&age);

   printf("あなたは%d歳です。\n",age);

  return 0;
}

/**************プログラミング練習*******************/

#include<stdio.h>
int main_lesson2(void)
{
 double ennshuuritu;

 printf("円周率の値はいくつですか?\n");
 scanf("%lf",&ennshuuritu);

 printf("円周率の値は%lfです。\n",ennshuuritu);

 return 0;
}

/**************プログラミング練習*******************/

#include<stdio.h>
int main_lesson3(void)
{
 char alpha;

 printf("アルファベットの最初の文字はなんですか?\n");
 scanf("%c",&alpha);

 printf("アルファベットの最初の文字%cです。\n",alpha);

 return 0;
}

/**************プログラミング練習*******************/

#include<stdio.h>
int main_lesson4(void)
{
  double sinchou,taijyuu;

 printf("身長を入力してください。\n");
 scanf("%lf",&sinchou);

 printf("体重を入力してください。\n");
 scanf("%lf",&taijyuu);

 printf("身長は%lfセンチです。\n",sinchou);
 printf("体重は%lfキログラムです。\n",taijyuu);

return 0;
}
/**************プログラミング概要*******************/
#include<stdio.h>

int main_finitto(void)
{
 int InumA,InumB; //int型の2変数を宣言
 double Dnum; //double型の変数宣言

 printf("int型の値を入力してください\n");
 scanf("%d",&InumA);

 printf("num型の値を入力してください\n");
 scanf("%lf",&Dnum);

 printf("int型の値を入力してください\n");
 scanf("%d",&InumB);

 printf("入力された数値は%dと%lfと%dです\n",InumA,Dnum,InumB); //結果

 return 0;
}

Cの型

Cには型がある。今日、勉強した。
int,double,charなどに変数を代入し、格納するために必要だそうだ。
たとえば、int型に整数を格納出来、それ以外の数を代入しようとするとコンパイルエラーとなる。

Hello.c world!!

これは、世界で有名なプログラミングで文字列をコンソールに表示するため、プログラミングです。
#include<stdio.h>
int main(void)
{
     printf("Hello.c world!!");
return 0;
}

Nikkei225

28000-28550 up in the early session, down lately.