全知全能を目指す人のありがたい雑記

何かしら意味のあるありがた~い話か、意味のない雑念だらけの日記を書く予定です。

C言語

入力された値のべき乗を求めるプログラム

脳死で書いたので、もっと早い方法がありそうに思う。(int)sqrt(num*1.0)も正しく平方根が求められているのか、少し自信がない。 sqrt関数の戻り値が桁落ちして切り捨てされたら正しい値が返ってこないので。コード #include <stdio.h> #include <math.h> int main(void) { in</math.h></stdio.h>…

九九の表の一部を表すプログラム

COLとROWの行列を開始地点としてSIZExSIZEの九九の表を表示する #include <stdio.h> #define COL 4 #define ROW 2 #define SIZE 3 int main(void){ for(int row = ROW; row < ROW+SIZE; row++){ for(int column = COL; column < COL+SIZE; column++){ printf("%d ",co</stdio.h>…

支払い金額を設定し、支払いを終えるのに何枚の硬貨が必要かを算出するプログラム

#include <stdio.h> int main(void){ int price; scanf("%d",&price); int coins[6] = {500,100,50,10,5,1}; for(int i = 0; i < 6; i++){ printf("%d円が%d枚",coins[i],price/coins[i]); price = price % coins[i]; if(i != 5)printf("、"); } } 入力 3333 出力 500</stdio.h>…

文字列1から文字列2を検索するプログラム+解説

strstrっていう関数がある #include <string.h> char *strstr(const char *s1, const char *s2); これを学習目的で自作する人が居たので、類似のソースを見つけて解説してみた printfで出力の途中経過を混ぜてます ソース #include <stdio.h> char *myStrstr(const char *s1, co</stdio.h></string.h>…

電球がONである数を数えるプログラム

問題1からnまでの数字が振られたn個の電球がある。これらの電球に対して、次の操作を順に行う。・1の倍数の電球のON/OFFを切り替える。 ・2の倍数の電球のON/OFFを切り替える。 ・mの倍数の電球のON/OFFを切り替える。このとき、最終的にONになってい…

2次元配列を使ったプログラム

#include <stdio.h> int main(void){ //NOTE:本当は、inputを可変長の配列にすると使い勝手がいい int input[2][5] = {}; for(int row = 0; row < 5; ++row){ scanf("%d%d",&input[0][row],&input[1][row]); } int rowSize = sizeof(input[0]) / sizeof(input[0][0]);</stdio.h>…

身長と標準体重の対応表を表示するプログラム

printfとscanfもっとうまく書ける気がする。。 #include <stdio.h> int main(void){ int from,to,each; printf("何cmから:"); scanf("%d",&from); printf("%d\n",from); printf("何cmまで:"); scanf("%d",&to); printf("%d\n",to); printf("何cmごと:"); scanf("%d</stdio.h>…

半角文字列を入力し、英字のみの文字列と数字のみの文字列に分解して出力するプログラム

最近Cばっか記事に書いてるなぁC言語はどうしても他の言語と比べてコード量が多く読みづらくなっちゃうから あんまり好きじゃないんだ80文字指定って言われたので配列にしたけど、 サイズ無制限にしたいってなったときは 文字列をcharのポインタを使いたいよ…

C言語でうるう年計算・月の末日計算・曜日計算を一通り書いた

学生の課題あるあるのプログラム。各関数は全部落ちてるソースをパクっただけ。fudebaco.com edu.clipper.co.jp C言語入門:うるう年判定プログラム:Geekなぺーじ #include <stdio.h> int main(void){ int year; //yyyyで入力する!例「1970」 scanf("%d", &year); in</stdio.h>…