(誰に聞いているのか)
基本的には他の回答者の方々が答えたような操作をします。補足を加えて説明します。
まず、「二桁の数 字 」と言ったら文字列です。int型は単なる数値なので桁数はないです。
問題を考えるときに、「入力された数値は必ず二桁で表せるような値になっている」ということを暗黙に仮定してしまっていませんか。int型はもっと広い範囲の値を表せます。数値を入力するためのコードで、値の範囲を検査して妥当なものだけ受け付けているとは限りませんよね。入力された値が妥当かどうかを検査しましょう。
そこで、ご質問の要件を「入力されたint型の数値が二桁の数字で 表せるときは 文字列に変換する」と解釈することにしました。こんなコードでしょう。
# include = '\0';i++);
printf("%d\n", i);
ABCDEF キーボードから入力した文字列
6
for文の意味が少しわかりにくいかも知れませんが、 配列要素の中にEOSが出現するまで変数iをひたすら増加させているだけです。 変数iが増えればそれでよく、繰り返す文が必要ないので、繰り返す文は省略しているのです。 ただ、文字列の文字数を数えるために毎回for文を書くのは面倒です。 そのため、文字列の文字数を数える strlen関数 が用意されています。 なお、strlen関数を使うには、string. h を #include する必要があります。
変数 = strlen(文字配列);
次のプログラムは、先ほどのプログラムをstrlen関数で書き直した例です。
i = strlen(str);
実行結果は先ほどと同じになります。 文字列の比較 文字配列の内容が同じかを比較する場合、次のようなプログラムを考えると思います。
str1 == str2;
しかし、 文字配列同士の比較では==演算子を使うことは出来ません 。 具体的な理由は次章で明らかになりますが、ここで簡単に説明をしておくと、 この例では配列が全く同じ(同じメモリを使う)配列なのかを比較しているのであり、 配列の中身が同じかどうかを比較しているわけではないためです。 文字配列の中身を比較するにはfor文で全要素を比較する必要があります。 次のプログラムは、入力された文字列が DRAGONQUEST であるかどうかを比較する例です。
int len, i;
char str1[256], str2[] = "DRAGONQUEST";
scanf("%s", str1);
len = strlen(str2);
for (i = 0;i < len + 1;i++) {
if (str1[i]! = str2[i]) break;}
if (i == len + 1) {
printf("同じ\n");} else {
printf("違う\n");}
DRAGONQUEST キーボードから入力した文字列
同じ
違う
DRAGONQUEST3 キーボードから入力した文字列
文字列の比較ではEOSまでが同じでなければならないため、 比較元の文字数よりも1文字大きく比較しています。 ただ、文字列を比較するために毎回for文を書くのは面倒です。 そのため、文字列を比較する strcmp関数 が用意されています。 なお、strcmp関数を使うには、string. )お方ならば、 彼女の為というよりは、 他に主さんのような被害者を出さない為にも、 彼女のしてきた行動を、どれだけ迷惑で自己中なのかを、冷静かつ淡々と言ってあげて欲しいです。 自分では気が付いてないと思うので…。 そして、貴女の為ではなく、私と同じようにな被害者を出さない為だ! !とガツンとトドメをさして欲しいですね。 その主さんの言葉を聞いて反省すれば彼女も人間的に成長出来るでしょうが、 逆ギレなんてされたり、主さんが悪者にされたりなんて事もあるかもしれないので、 共通の友人なんかがいたら、予防線を張っておくのも良いかも。
トピ内ID: 5912492217
いと
2012年6月17日 06:01 よくまあ3時間も! 私なら余程の事情でない限り、30分も待てません。 人を待たせて平気な人間は信用しませんし、友人として持ちたくありません。 あなたは忍耐強い方ですねえ。絶交するのが遅すぎたような。
トピ内ID: 2224162752
ゆうこ
2012年6月17日 06:08 トピ主さんは、そのご友人に「待たされるのは不愉快だ」と 毅然とした態度で伝えてきましたか? 人を待たせる人. 或いは「私は不愉快だから帰る」 と宣言して、帰る選択肢もあったはずですが おそらくトピ主さんは抗議もせず帰ることもせず 表面上はニコニコ笑って許してきたのではないですか? だとしたら、ご友人はそういう態度を「許されている」 と感じてきたのでしょう。 ご友人の態度は褒められたものではありませんが トピ主さんもまた、いい顔をしようとしすぎてきたわけで だとしたら、絶交するに至った非の一部はトピ主さんにあるし その友人とは切れても同じような人間関係を繰り返すだけですよ。 実は私は、する方もされる方も身に覚えがあるのですが どちらも後味が悪いしなにより人間関係として不健康ですので 今ではなるべく我慢はしない、そしてNOを言うようにしています。 怖いんですよね。率直な言動を取るの。 分かります。でも、言わないと健全な人間関係は育たない。 私だったら、今からでも一対一で話し合います。 同じ結果に至るとしても、です。
トピ内ID: 0537584096
yukiyuki
2012年6月17日 06:19 もう絶交を決めちゃったならそれでもいいと思いますが。 彼女がルーズなことについて苦言を呈したことがありますか? 無いなら、本当に絶交する前に正直に話したら良いと思います。何度も言っていてその態度なら、もうさようならで良いと思いますよ。 私も同じ目にあったら帰りますね。でもその前に「待たされる身になれ!」と言ってみます。実際言ったことあります。 友人は反省してくれたので、その後も友情は続きました。
トピ内ID: 8193448713
くりいむぱん
2012年6月17日 06:36 今までの金返せ! 待たされてイライラすることってありませんか?仕事はもちろん、友人との待ち合わせや病院の待合室。あるいはレストランや電車の遅延対応など、思いもしない理由で待たされ、イライラする場面はあるものです。でもそのイライラ、知らないうちにあなたも誰かに感じさせているかもしれません。イライラは自分が気づかないうちに相手に与え、無意識に嫌われる原因となっているものです。そこで今回は、広告代理店勤務時代に3, 000人以上のVIPと交流し、彼らの待たせ方を研究している「気配り」のプロフェッショナル・後田良輔さんに「イライラさせない正しい待たせ方」について話を伺いました。
プロフィール
後田良輔氏/ビジネス書作家・コラムニスト
1972年生まれ。大手3大広告代理店に勤務し、「誰でも使える気配り術」を駆使する気配りのプロフェッショナル。これまで応対したVIPは、東証一部上場社長、世界企業のCEO、政治家、医者、弁護士、大学教授、大物俳優・女優、ミリオンセラー作家、世界No. 1クリエイターなど総勢3000名を超える。この特別丁寧に接しなければならない顧客との交流で磨かれたスキルと「東京・名古屋・大阪」の現場勤務で身につけたリアルな経験を組み合わせた、独自の「誰でも使える気配り術」に定評がある。
著書に、『気配りの正解』(ダイヤモンド社)『<落ちこぼれでも3秒で社内エースに変わる!>ぶっちぎり理論38』(ダイヤモンド社)、『逆境を活かす! 絶好正解。
トピ内ID: 3992281508
あや
2012年6月17日 07:09 まず3時間も待ちません。適当に見限って帰ります。 それから30分も黙って待ってません。 10分過ぎたくらいでメールして、 相手があまりに遅くなるようなら予定をキャンセルします。 絶交でもいいし、 会うことの無いメールだけの友達でもいいと思います。
トピ内ID: 4078750901
うさぎ
2012年6月17日 08:25 5分10分の遅刻ならともかく 何時間も待たせるなんてありえません。 それだけ待たされたらその日のご飯は相手もちですよ。 いままでお疲れ様でした。 これからは誘われても、お断りですね。 どうしてもというなら家まで迎えに来いってものです。
トピ内ID: 3881439888
せいら
2012年6月17日 09:03 私ならもうとっくに友達やめてます。今まで我慢してたなんてトピ主さんて気が長いなあって感じです。 彼女は誰に対してもそんなに遅刻魔なんでしょうか? トピ主さんだけに対してなら本当に絶交でいいです。ただ黙って帰って来たのはちょっとダメでしたね。ちゃんと「もう退屈だし待ち疲れたから帰る」と不満を言ってくるべきでした。こういう人って自分の事は棚に上げて「黙って帰るなんてひどい!」と被害者ぶってる可能性大ですよ。 彼女が共通の友達に「セロリってひどいんだよ!」と愚痴る前にこちらから先に共通の友達に経緯を説明してさも彼女を気にかけてるフリをして「いくら疲れても黙って帰るなんてひどかったかな?」と、相談に見せかけた根回しをしておく事をオススメします。 後もしまた彼女と付き合いが続くのでしたら「今度から10分以上遅れて来たらその時のご飯をおごる」という約束をさせたらいいですよ。そしたら遅刻はほぼなくなるはずです。今まで「ごめん」で許してきたからごめんで済まされたんですよ。
トピ内ID: 6490362873
あなたも書いてみませんか? 他人への誹謗中傷は禁止しているので安心
不愉快・いかがわしい表現掲載されません
匿名で楽しめるので、特定されません
[詳しいルールを確認する] アクセス数ランキング
その他も見る
その他も見るC言語 数値 文字列 変換 Nullなし
C言語 数値 文字列 変換 0
アドバイス:
atoi() の定義例は教科書にも掲載されているが,
そちらのコードは 高度過ぎる(わかりづらい) ので,パクりは禁止. 必ず, わかりやすいソースコードを書くこと . 特にループについては,
適切な方法( for と while )を使い分けること:
for :繰り返し回数が分かっている場合に だけ 使う. (教科書では変則的な使い方をしているが,それをマネしてはいけない.) while :繰り返し回数が分からない場合に使う. 今回の課題には,
while ループの方が適している. 入力された数字列の桁数は,検査するまで不明なので. 余裕のある人は,次のような関数も定義してみては? :
atof() のクローン double myAtof(char *s)
16進数の数字列を整数へ変換する関数 int atoh(char *s)
レポート提出
提出方法:
電子メール
宛先:
件名: c-0719
提出期限: 07月24日(月)17:00
提出内容( 本文 ):
学年学科,出席番号,氏名
各問のソースコード,実行結果(と考察)
(疑問)
注意事項 :
以下の点についても厳しくチェックする:
ソースコードの正しさ(コンパイル時の警告がないこと)
ソースコードの美しさ(インデント,処理手順のわかり易さ,など)
考察の文章の的確さ(論理,文法,誤字脱字,3C,など)
今回の課題では,まず,
1桁の 数字 と 数値 について,
ちがいを理解しないことには,
手出しできない. 例:
'3' は 数字 (文字)である. 数字 '3' の値は 3 ではなく,
ASCIIコード 番号の 51 である. つまり, '3' == 51 だ. しかし,だからといって,ソースコードに 51 とか書かないこと. 意味が分かるように '3' と書くべきだ. 3 は 数値 である. 数値 3 の値は 3 である.(そのまんま.) 数字 '3' を数値 3 へ変換するには,
'3' - '0' を計算すればよい. 数値 3 を数字 '3' へ変換するには,
'0' + 3 を計算すればよい. 文字列を数値に変換する(チェックなし) – C言語入門講座. で,さらに,複数桁の場合には...
'123' なんて,ありえない. 文字(1文字)には「'」だが,
文字列には「"」を使う. "123" は 数字列 (文字列)である. 数字列 "123" の値は 123 ではなく,
この文字列が記録されているメモリ領域の先頭アドレスである.
相手を待たせることを気にしない人々 - つぶらいん
待たせる人の心理・対処法 ~人を待たせる心理を解明してみた~ | Addninth Blog
このトピを見た人は、こんなトピも見ています
こんなトピも 読まれています
レス 73
(トピ主 3 )
セロリ
2012年6月17日 00:13 ひと 21歳女です。 私の友人は、遅刻30分はあたりまえ、最高3時間待たされたこともありますが いつも、ごめんね~ で終わり。 先日、いつも待たされるから待ち合わせ時間ちょうどに支度をはじめて家をでるようにしてみました。そしたら家をでるタイミングで ごめん遅れる!のメール。自宅で待ちぼうけ。時間どおりに行ってたらどんだけ待たせるんだ!待つこと一時間以上。 ディナー食べてるときも彼氏からの電話、、長い!!目の前に人がいたら5分以内ではすませろ!!15分は待ったぞ! 食事のあと、突然 買い物つきあって~ と言い出し 私とは趣味があきらかに違う服屋さんに行き、友人は 試着しまくります。 その間、私は待つ待つ・・・ 1時間以上たち 私もキレました。 さよなら、元友人。。 なにも言わず 家に帰りました。 絶交するつもりです。 みなさんだったらどうしますか? 相手を待たせることを気にしない人々 - つぶらいん. トピ内ID: 9393031692 3
面白い
3
びっくり
2
涙ぽろり
23
エール
なるほど
レス
レス数 73
レスする
レス一覧
トピ主のみ
(3)
このトピックはレスの投稿受け付けを終了しました
あを。
2012年6月17日 01:35 絶交確定。 私、時間にルーズな人がいちばん嫌いなんで。 時間にルーズな人って、すべてにおいてルーズだから。悪いけど。 三時間またされた時点で理由をきき、納得いかない理由の時点でとっくに絶交してます。
トピ内ID: 0606910165
閉じる×
山葵
2012年6月17日 01:36 親しき仲にも「礼儀あり」は大切なことです。 親の躾教育が全く無かったのでしょう。 私ならトピ主さんと同じ行動をとります。 あなたの行動は正しいです。
トピ内ID: 2618943509
ぷる
2012年6月17日 01:40 時間にルーズな人が私も嫌いなので、トピ主さんよく堪えてきたなぁと思います。 でも放置して帰宅はちょっとだけ大人げなかったかなぁ? 遊び約束の前に「次は遅刻は許さないよ?遅刻したらもう友達やめるよ」とか、試着中に待たされるんだったら「もう付き合いきれないから帰る」と一言言えば良かったと思います。 貴女が今まで我慢して何も言わなかったのなら、彼女にとって「ごめんと言えば簡単に許してくれる人」と思わせて甘えてたのかもしれないですね。 まぁ、そこまでしたんなら、しばらく放置でいいと思います。
トピ内ID: 6079374863
🐶
なっちん
2012年6月17日 01:49 少々はなんとか目をつぶっても、あまりにひどいのはダメでしょう。お別れで良いと思います。 けどもし友達が謝ってきたら話を聞いてあげるのはしてあげてね。
トピ内ID: 6443582447
🐧
ようこ
2012年6月17日 01:52 私は遅刻(電車のダイヤの乱れといった、当事者に落ち度がないものを除く)かドタキャンを三回されたら、もう付き合いません。仏の顔も三度という言葉だってありますし(苦笑)。 トピ主様にも都合があるでしょうに、一方的にないがしろにするルーズな人でなしとは、疎遠または絶縁で正解!