・数値を文字列化する関数StoAを作成する。
書式:char *StoA(short nVal);
引数:short nVal; 文字列化する数値
戻り値:数字文字列のポインタ
処理:nValで与えられたshort型の数値を文字列に変換し、そのポインタを返す。
呼び出し側の書式は以下の通り。
void main(void)
{
char *pc;
pc = StoA(123);
printf("%s\n", pc);
pc = StoA(-1234);
printf("%s\n", pc);
}
です。明日までの専門学校の課題なのでどうか、どなたか助けて下さい。
No.1ベストアンサー
- 回答日時:
じゃあ、助けてあげよう。
でも、面倒だからていねいな解説は無しね :-)#include <stdio.h>
char* StoA(short nVal)
{
static char buf[16];
char* p = &buf[0];
char* q;
int i = nVal;
int is_minus = 0;
if (i < 0) {
is_minus = 1;
i *= -1;
}
do {
short a = i % 10;
*p++ = a + '0';
i /= 10;
} while (i > 10);
if (i != 0) {
*p++ = i + '0';
}
if (is_minus) {
*p++ = '-';
}
*p-- = '\0';
q = &buf[0];
while (p > q) {
char c;
c = *p;
*p = *q;
*q = c;
--p;
++q;
}
return buf;
}
int main(void)
{
char *pc;
pc = StoA(123);
printf("%s\n", pc);
pc = StoA(-1234);
printf("%s\n", pc);
pc = StoA(-32768);
printf("%s\n", pc);
pc = StoA(32767);
printf("%s\n", pc);
return 0;
}
1の位から数字を取ってゆき(10で割った余りね)、最後にひっくり返す。
# でも、いまどき void main() って教える専門学校って、どんなもんだか…
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C言語初心者 ポインタについて、お助けください、、 2 2023/03/15 23:50
- C言語・C++・C# 宣言する関数の形が決まっている状態で、 str1とstr2の文字列をこの順に引っ付けてstrに保存し 2 2022/05/30 18:21
- C言語・C++・C# c言語配列の結合についてです。 なぜうまくいかないのでしょうか。 #include <stdio.h 4 2022/05/30 22:42
- Visual Basic(VBA) VBAで、特定の文字より後を削除して残った数値を文字列に変換と特定の文字より前も削除したい 3 2022/04/15 19:21
- C言語・C++・C# C言語のエラーについて 2 2022/07/11 13:56
- C言語・C++・C# C言語初心者 構造体 課題について 2 2023/03/10 19:48
- C言語・C++・C# c言語 プログラムのエラー 1 2023/02/11 20:31
- C言語・C++・C# プログラミングの授業の課題です 1 2023/01/17 22:15
- JavaScript カラーミーショップのsectionループ内で、[引数][戻り値]ありの関数的な処理を行いたいです。 1 2022/05/07 19:39
- C言語・C++・C# C言語プログラム変更 2 2022/12/21 15:03
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
3つに分かれたヘッダー・フッ...
-
数値→文字列変換関数
-
数Bの漸化式の特性方程式について
-
コラ画像を作るには、pcとiPad...
-
pcゲーインストールしてるんで...
-
ALIEN WAREノートパソコンでニ...
-
100pcsとは
-
エクセルでSUMIF関数を使って管...
-
henkanndekinai
-
開発者向けオプションの 4x MAS...
-
ハイゼットのラジオのあわせ方
-
PCSX2を遊んでます。時々重くな...
-
war thunderがスペック足りてる...
-
今さらですが幻想水滸伝(1)...
-
エミュのPCSX2で遊んでいるんで...
-
東方花映塚が起動しなくなって...
-
ゴーストリコンブレイクポイン...
-
スト6 Steam版。何かもっさり...
-
モニターにノーシグナルと出ます
-
PC版ApexLegendsプレイ中にカク...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
3つに分かれたヘッダー・フッ...
-
100pcsとは
-
今のpcってWindows7入れること...
-
discordつないで、MH、apexを2...
-
表示されません
-
液晶モニタVISEO MDT152X
-
三郷市の戸ヶ崎にバスで行きたい。
-
ALIEN WAREノートパソコンでニ...
-
CD,MD,DVD,DATの標本化周波数に...
-
予告編を見たあの映画のタイト...
-
ディラック方程式の平面波解の...
-
スペック(仕様)に関する各項...
-
LaVie L LL770/CDのバッテリー...
-
昨日深夜テレビショッピングで...
-
why would I everという曲探し...
-
DOCOMO携帯で面白いゲームを教...
-
ラズベリーパイ Windows
-
エクセルでSUMIF関数を使って管...
-
この後どうすればいいですか? ...
-
DVDソフトの寿命
おすすめ情報