忍者ブログ
[PR]
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。


2026/06/18 04:38 |
文字列の分割【C言語】
昨日、入力した文字列「#ffaa00」を10進数の数字「255,170,0」に変換するプログラムをとりあえず打ってみたけど…
入力させるところの、
scanf("%c%c%c%c%c%c%c",&c[0],&c[1],&c[2],&c[3],&c[4],&c[5],&c[6]);
これって、1文字ずつの入力ではなくて、例えば
scanf("%s",&str);
のように文字列入力にしておいて、あとからffaa00をff,aa,00に分割できないものか・・・

ポインタ使えばできるかな o(^O^*=*^O^)o

・・・ポ・イ・ン・タ・・・

今まで、避けてきたけどちょっと復習してみます・・・

*** 「かめかめPHP」運営中 ***

こちらも応援していただけるとうれしいです
↓↓↓ ヽ(^◇^*)/ ↓↓↓
ブログランキング・にほんブログ村へ 人気ブログランキング

PR

2009/02/24 06:00 | Comments(0) | TrackBack() | プログラム
16進数の文字を数値に変換【C言語】
strtolなるものを教えていただいたので、これを使って、パソコン甲子園2008予選問題 第4問を解くための準備をしたい。自分の力では一気にプログラムを書けないので、まずは…

16進数によるカラーコードを入力させ、RGBの各色を10進数で表示させる
例:入力→#ffff00  出力→255,255,0

*** 「かめかめPHP」運営中 ***

こちらも応援していただけるとうれしいです
↓↓↓ ヽ(^◇^*)/ ↓↓↓
ブログランキング・にほんブログ村へ 人気ブログランキング


ここからソース
#include‹stdio.h›
#include‹stdlib.h›

int main(){
	char c[10][2];
	char *end[10];
	int n[10],i,red,green,blue;

	scanf("%c%c%c%c%c%c%c",&c[0],&c[1],&c[2],&c[3],&c[4],&c[5],&c[6]);

	for(i=1;i<=6;i++){
		n[i]=strtol(c[i],&end[i],16);
	}
	
	red=16*n[1]+n[2];
	green=16*n[3]+n[4];
	blue=16*n[5]+n[6];

	printf("%d,%d,%d\n",red,green,blue);

	return 0;
}

それでは実行結果
#ffaa00
255,170,0

2009/02/23 04:35 | Comments(0) | TrackBack() | プログラム
16進数の文字を数値に変換【C言語】
少し、力技っぽくなりましたがC言語の文字処理関数を駆使して、16進数の文字を10進数の数字変換することが出来ました。ヽ( ´ー`)ノ

しかし、もっとスッキリといかないものでしょうかね…

*** 「かめかめPHP」運営中 ***

こちらも応援していただけるとうれしいです
↓↓↓ ヽ(^◇^*)/ ↓↓↓
ブログランキング・にほんブログ村へ 人気ブログランキング


ここからソース
#include‹stdio.h›
#include‹ctype.h›

int main(){
	char s;
	int n;

	s=getchar();

	if(isxdigit(s)){ /* 16進数の判定 */
		if(isalpha(s)){ /* アルファベットの判定 */
			if(islower(s)){ /* 小文字の判定 */
				n=s;
				n=n-87;
			}
			else{
				n=s;
				n=n-55;
			}
		}
		else{
			n=s;
			n=n-48;
		}
		printf("16進数の文字%cは10進数の数字%dです\n",s,n);
	}
	else{
		printf("16進数ではありません\n");
	}

	return 0;
}


2009/02/17 05:57 | Comments(2) | TrackBack() | プログラム
16進数の文字を数値に変換【C言語】
以前の記事『パソコン甲子園2008』で「16進数の文字を数値に変換するにはどうしたらよいのだろう」と書きましたが、C言語の「文字処理関数」を使えば何とかなりそうだということに気が付きました。

そのなかで、
isxdigit(文字):は文字が16進数の文字なら真
という関数もあり、いけそうな気がしました。

早速、やってみよう。

本日の反省、C言語の入門書は読破したつもりだったけど、奥が深いな~
( ̄~ ̄;)

*** 「かめかめPHP」運営中 ***


2009/02/15 22:51 | Comments(0) | TrackBack() | プログラム
アクセスカウンタ作りました
以前、アクセスカウンタを作成したのですが、テキストカウンタ、グラフカウンタ、画像カウンタの3つのファイルを別々に作成していました。今回3つのファイルを1つにまとめて、設定により、モードの切り替えができるように変更しました。
*** 「かめかめPHP」運営中 ***


2009/02/13 05:21 | Comments(0) | TrackBack() | php

<<前のページ | HOME | 次のページ>>
忍者ブログ[PR]