プログラマー軍団がC/C++の宿題を解決します 34代目
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
NGNG史上最強のプログラマー軍団の見解は?
――【注意点】――――――――――――――――――――――
・使用する言語(C/C++)や環境(CUI/GUIなど)は必ず書きましょう。
・問題文は、ちゃんと解いてもらう方にわかりやすいように全文を書きましょう。
・計算問題は必ず数式自体をあげ、どのような計算をするのか詳しく説明してください。
・エラーは、その行とエラーの詳細を書きましょう。
エラーメッセージが出た場合はそのままコピーしてください。
・後になって問題につけたしをするのはやめましょう。
解いてもらっている方に失礼になってしまいます。
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
【アップローダー==ラウンジ】(質問が長い時はココ使うと便利 回答者もコードが長ければここに)
http://do.sakura.ne.jp/%7Ejunkroom/cgi-bin/megabbs/lounge/index.html
【歴代スレは>>2-10】
0446デフォルトの名無しさん
NGNG3点がわかっているのだから解は一意に決まるんじゃないの?
手計算で連立方程式も簡単にとけるでしょ。
それとも連立方程式をプログラムで解かないといけないの?
0447デフォルトの名無しさん
NGNG0448デフォルトの名無しさん
NGNG三点の値は自由に変えられるようにしたいです。
<<447
はい。またアドバイスがいただけたらと…
0449デフォルトの名無しさん
NGNG0450デフォルトの名無しさん
NGNGだから、三点の座標を(x1,y1),(x2,y2),(x3,y3)として連立方程式を解けばいいじゃないか。
君、この程度の数式もとけないの?
0451デフォルトの名無しさん
NGNGhttp://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=6778&forum=3&start=8&10
0452デフォルトの名無しさん
NGNG0453デフォルトの名無しさん
NGNGオリジナルのBASICプログラムは無駄なコードだらけなので整理した。
/*
Fractional Derivate
*/
#include <windows.h>
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>
#define KMAX 100
#define XMAX 300
#define MAXBUF 256
#define PI 3.14159265358979323846
double ga()
{
double r = 0.0;
int i;
for(i = 0; i < 10; i++){
r += ((double)rand() / RAND_MAX) - 0.5;
}
return r;
}
0454デフォルトの名無しさん
NGNG{
double ek = PI * 2.0 * 0.7 / XMAX;
double a = 2.5 - 1.0;
double fmax = 0.0;
double fmin = 0.0;
double f[XMAX];
int x, k;
srand((unsigned)time(NULL));
for(x = 0; x < XMAX; x++){
f[x] = 0.0;
for(k = 0; k < KMAX; k++){
double rk = k + 1.0;
double kx = ek * rk * x;
f[x] += pow((ek * rk), -a) * (ga() * cos(kx) - ga() * sin(kx));
}
if(fmax < f[x])
fmax = f[x];
if(fmin > f[x])
fmin = f[x];
}
0455デフォルトの名無しさん
NGNGint x0 = 100;
int y0 = 200;
double w = 200.0 / (fmax - fmin);
HWND hWnd = NULL;
HDC hDC = GetDC(hWnd);
RECT r = {100, 100, 400, 300};
HBRUSH hbr = (HBRUSH)GetStockObject(GRAY_BRUSH);
HPEN hpen = (HPEN)GetStockObject(BLACK_PEN);
SelectObject(hDC, hpen);
FillRect(hDC, &r, hbr);
MoveToEx(hDC, x0 + 0, y0 + 0, NULL);
for(x = 0; x < XMAX; x++){
char s[256];
sprintf(s, "%24.18f, %24.18f", f[x], f[x] * yw);
TextOut(hDC, 500, 20 * x, s, strlen(s));
LineTo(hDC, x0 + x + 1, y0 + (int)(f[x] * yw));
}
ReleaseDC(hWnd, hDC);
}
return 0;
}
まあ、かなり手抜きなんだが、 >>436 よりはマトモに動く。
0456デフォルトの名無しさん
NGNG↓
double yw = 200.0 / (fmax - fmin);
直してくれ。スマソ
0457235
NGNG>>437
説明を見落としてました
前に送ったのはクイックソートでした
もういっぺん送ります
あふぉな漏れですみませんorz
吊ってきます・・・
0458デフォルトの名無しさん
NGNG○ クラス名:
- bank_account
○ データメンバ:
- name (char 配列,名前)
- personal_code (int 型,暗証番号)
- balance (int 型,残金)
○ メンバ関数:
- init_account(char *name0, int code0, int pay0) (void 型)
口座の初期化を行う.名前,暗証番号,最初の入金を入力する.
- pay_in(int pay) (void 型)
口座に入金する.
- withdraw(int draw) (void 型)
口座からお金を引き出す.ただし暗証番号を入力させて,正しい場合のみ引き出す.
- show_balance() (void 型)
残高照会.名前と残高を表示する.残高がマイナスの場合は加えて”赤字です.」と表示す
る.
- is_correct_code(int code) (bool 型)
暗証番号を調べる.正しければtrue を返し,間違っていればfalse を返す.
※ 必要なら口座の初期化を行うコンストラクタも作成すること.
○ main 関数
下記の流れで処理を行う.
1. 名前,暗証番号,最初の入金を入力し,bank_account クラスの初期化を行う.
2. while ループに入る.
次のように表示して,番号を入力する.
終了の番号(0)が入力されるまでループを繰り返す.
cout << "番号を入力してください." << endl;
cout << "(1:入金,2:引き出し,3:残高照会,0:終了):";
3. (ループの中で)switch 文で入力された番号をもとに処理を分岐させ,それぞれの処理を行う.
ただし,お金を引き出す場合は暗証番号の入力を求めて,暗証番号が正しい場合のみ
引き出すこと.
0459デフォルトの名無しさん
NGNG0461デフォルトの名無しさん
NGNGusing namespace std;
class bank_account {
private:
char *name; int personal_code; int balance;
public:
~bank_account(){};
void init_account(char *name0, int code0, int pay0);
void pay_in(int pay);
void withdraw(int draw);
void show_balance();
bool is_correct_code(int code);
};
void bank_account::init_account(char *name0, int code0, int pay0) {
name = name0; personal_code = code0; balance = pay0;
}
void bank_account::pay_in(int pay) {
balance += pay;
}
void bank_account::withdraw(int draw) {
balance -= draw;
}
void bank_account::show_balance() {
cout << "名前:" << name << endl;
cout << "残高:" << balance << endl;
if(balance < 0) cout << "赤字です" << endl;
}
bool bank_account::is_correct_code(int code) {
if(personal_code == code) return true;
return false;
}
0462続き
NGNG{
int number; int pay,draw,code;
bank_account ba;
ba.init_account("暇人", 459, 1000);
while(1) {
cout << "番号を入力してください." << endl; cout << "(1:入金,2:引き出し,3:残高照会,0:終了):";
cin >> number;
switch(number) {
case 1:
cout << "金額?:"; cin >> pay;
ba.pay_in(pay);
break;
case 2:
cout << "暗証番号?:"; cin >> code;
if(ba.is_correct_code(code)) {
cout << "OK" << endl; cout << "金額?:"; cin >> draw;
ba.withdraw(draw);
} else { cout << "Error" << endl; }
break;
case 3:
ba.show_balance();
break;
case 0:
return 0;
}
}
}
0463C言語/コンパイラ:gcc
NGNG名前と電話番号を入力して名前が文字コード順になるように名前と電話番号を
出力するプログラムなのですが、肝心DisplayList以外の関数が出来ません。
どうかよろしくお願いします。
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
typedef struct _node {
char name[20];
char phone[12];
struct _node *next;
}Node;
Node *CreateNode(Node*),*InsertNode(Node*,Node*);
void DisplayList(Node*),FreeList(Node*);
int main(void)
{
Node *p=NULL,q;
while(1){
printf("名前:"); scanf("%s",q.name);
if(strcmp(q.name,"end")==0) break;
printf("電話番号"); scanf("%s",q.phone);
p=InsertNode(p,CreateNode(&q));
}
DisplayList(p);
FreeList(p);
return;
}
Node CreateNode(Node*){}//ノードの作成(ヒープ領域の確保及び値の設定)
Node *InsertNode(Node*,Node*){}//ノードの挿入
void DisplayList(Node*){}
void FreeList(Node*){}//リスト全体のヒープ領域の開放
0464デフォルトの名無しさん
NGNGNode* CreateNode(Node* src){
Node* ret = (Node*)malloc(sizeof(Node));
memcpy(ret, src, sizeof(Node));ret->next = NULL;
return ret;
}
Node* InsertNode(Node* dest, Node* src){
Node* temp;
if (dest == NULL){dest = (Node*)malloc(sizeof(Node));memcpy(dest, src, sizeof(Node));}
else if (dest->next == NULL){dest->next = (Node*)malloc(sizeof(Node));memcpy(dest->next, src, sizeof(Node));}
else if (!(strcmp(dest->next->name, src->name) < 0)){temp = (Node*)malloc(sizeof(Node));memcpy(temp, src, sizeof(Node));temp->next = dest->next;dest->next = temp;}
else /* strcmp(dest->next->name, src->name) < 0 */InsertNode(dest->next, src);
return dest;
}
void DisplayList(Node* root){Node* cur = root;while (cur != NULL){printf("name:%20s phone:%12s\n", cur->name, cur->phone);cur = cur->next;}}
void FreeList(Node* ptr){if (ptr->next != NULL) FreeList(ptr->next);free(ptr);}
0466デフォルトの名無しさん
NGNGノートから構成されるリスト構造を用いて
ノートから構成されるリスト構造を用いて
0467デフォルトの名無しさん
NGNG0468デフォルトの名無しさん
NGNGNode* InsertNode(Node* dest, Node* src){
if (dest == NULL){dest = src;}
else if (dest->next == NULL){dest->next = src;}
else if (!(strcmp(dest->next->name, src->name) < 0)){src->next = dest->next;dest->next = src;}
else InsertNode(dest->next, src);
return dest;
}
間違ってたらスマソ
0469デフォルトの名無しさん
NGNG0470デフォルトの名無しさん
NGNGだと釣られてみるテスト
0471デフォルトの名無しさん
NGNG0472デフォルトの名無しさん
NGNG0473デフォルトの名無しさん
NGNG某県立高校にて。
0475デフォルトの名無しさん
NGNG2進数への変換は、商が0になるまで10進数を2で割り、余りを逆の順番で並べる方法を
用いる。ただし、入力は正の整数であって、最大値は16383(すべてが1である14桁の2進数)
とする。
2.キーボードから入力した文字列の中の、英大文字、英小文字、数字、その他(記号など)の
個数を出力するプログラムを、ポインタを使ってつくりなさい。
3.キーボードから和暦(英文字に続く数字)を入力したとき、西暦年を出力するプログラムを
プログラムを作りなさい。ただし、明治はmまたはM、大正はtまたはT、
昭和はs、またはS、平成はhまたはHとし、数字は必ず2けたで入力するものとする。
たとえば、平成7年の場合は、H07またはH07と入力すること。
どなたかお願いしますm(__)m
0476デフォルトの名無しさん
NGNG0477デフォルトの名無しさん
NGNG0478デフォルトの名無しさん
NGNG自分でやって駄目だったらって位置付けだと思う。
それってC言語の初歩の初歩じゃん。
自分でやった方がいいと思うし、自分で出来るレベルの問題だよ。
0479goto推奨委員会 ◆oZFvlbPXjs
NGNG1.解いたよ
#include <stdio.h>
void main(void){
int i, j, k;
int kazu;
char ss[20];
scanf("%d", kazu);
i=0;
j=0;
label0:
if(kazu==0)goto label1;
if(kazu&1){ss[i]='0';}else{ss[i]='1';}
kazu = kazu - (kazu/2);
j++;
goto label0;
label1:
label2:
if(j==-1)goto label3;
putchar(ss[i]);
j = j-1;goto label2;
}label3:
}
0480goto推奨委員会 ◆oZFvlbPXjs
NGNGputchar(ss[i]);
は、
putchar(ss[j]);
でお願い。
問題解かしてもらってる立場の分際で
バグ作っちゃったりしてほんとにごめんなさい。
0481デフォルトの名無しさん
NGNGあなた問題欲しいの?
ならf2cをVC6.0で使えるようにして、ついでに公開してよ。
0482デフォルトの名無しさん
NGNGどなたか難問に挑戦してくださいますか?
課題:標準入力からテキストファイルを読み込み、 行を短い順に出力しなさい。 但し、行は最大 80 文字とし、 80 文字以上の行は先頭 80 文字だけの行として取扱い 出力し、空行は出力しないで下さい。
また、同じ長さの行は入力した順番に出しなさい。
レポートでは、実行例として、作成したソースプログラムをプログラムに入力 した出力と、ttp://www.bbn.com/index.html のホームページのソースを入力した結果を先頭 5 行、最後の 5 行を示しなさい。
なお、取り扱える行数は実行時のコンピュータのメモリーのサイズのみに依存 しなければなりません。 勝手な上限を設けてはいけません。
0483goto推奨委員会 ◆oZFvlbPXjs
NGNG問2もできました。
どうぞ
void main(void){
int i;
char *p;
char ss[80];
i=0;
scanf("%s", ss);
p=ss;
label0:
if(*p==0)goto label1;
i++;p++;
goto label0;
label1:
printf("%d個文字があったよ\n", i);}
0484デフォルトの名無しさん
NGNG0485482
NGNG入力
あいうえお
あい
あいう
出力
あい
あいう
あいうえお
0486goto推奨委員会 ◆oZFvlbPXjs
NGNGint main(void)
{
label0:
goto label0;
/*ここまでこれるかは知らんけど*/
return 0;
}
0487482
NGNGC++ で行の取得をするには std::istream のメンバ関数である getline メソッ ドを使います。 これは getline(文字配列のポインタ, 文字数, 区切り文字)で呼びます。
ここで、区切り文字が来る前に文字数-1 文字だけ読み込んでしまった時、 std::ios:failbit が ON になってしまいます。
この場合 clear() メソッドでこのビットを OFF にする必要があります。 但し、この clear() メソッドは std::ios:eofbit も OFF にしてしまうので、 注意して使う必要があります。
以下は標準入力から各行を高々 80 文字だけ読み込み出力するプログラムです。
0488482
NGNG#include <iostream>
using std::cin;
using std::cout;
using std::endl;
main(){
char buffer[81];
while(!cin.eof()){
cin.getline(buffer,sizeof(buffer));
cout << buffer << endl;
while((!cin.eof())&&cin.fail()){
cin.clear();
cin.ignore(80,'\n');
}
}
}
これを元にお願いします。
0489goto推奨委員会 ◆oZFvlbPXjs
NGNGgoto推奨委員会#goto
と入力。
0490デフォルトの名無しさん
NGNG{
goto main;
return 0;
}
for VC++
0491デフォルトの名無しさん
NGNGhttp://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1064150088&res=265
0492デフォルトの名無しさん
NGNG?なにこれ?
0494259
NGNG返信がおくれてすいません。
プログラム本当にありがとうございます。
今回色々な人に助けられて、無事に課題を終えることができました。
皆様本当にありがとうございますm(_ _)m
0495デフォルトの名無しさん
NGNGhttp://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1064150088&res=266
0496デフォルトの名無しさん
NGNG構造体の配列を使って以下のように出力するとします
出席番号 名前 点数1 ・・・ 点数N 平均点 評価
メンバには上の全てをくわえ、平均点は点数1〜Nで計算、評価は平均点で考えるとします。
このとき平均点は0を入れて初期化が適当ですが、評価のところには何を入れればよいのでしょうか。
どなたかご教授願います。
0497デフォルトの名無しさん
NGNGが保証されているなら、何を入れていてもいい気がする。
もし未評価状態でも表示したいなら、「未評価」な状態を一個定義してそれを設定する
0498496
NGNG#include<stdio.h>
struct data{int no;
char name[50];
int tensu[2];
double avg;
char gj[5];};
void main(void)
{int i;
char h[5];
struct data ch[]={{101,"名無しさん",{42,12},0,h[0]},
{403,"名無し君",{6,5},0,h[1]},
{404,"名無しちゃん",{60,23},0,h[2]},};
for(i=0;i<3;i++){ch[i].avg=(float)(ch[i].tensu[0]+ch[i].tensu[1])/2;}
printf("番号 氏名 教科1 教科2 平均点 評価\n");
for(i=0;i<4;i++){if(ch[i].avg<=100&&81<=ch[i].avg){h[i]='A';}
else if(ch[i].avg<=80&&61<=ch[i].avg){h[i]='B';}
else if(ch[i].avg<=60&&41<=ch[i].avg){h[i]='C';}
else{h[i]='D';}
printf("%d %s %d %d %d %.1f %c\n",ch[i].no,ch[i].name,ch[i].tensu[0],ch[i].tensu[1],ch[i].avg,gaku[i].gj);}
}
0500デフォルトの名無しさん
NGNG0501デフォルトの名無しさん
NGNG0502デフォルトの名無しさん
NGNG>>1より
・後になって問題につけたしをするのはやめましょう。
解いてもらっている方に失礼になってしまいます。
0503デフォルトの名無しさん
NGNG後になって解答につけたしをするのはOKですか?
0504デフォルトの名無しさん
NGNG答えてもらえる確率が下がるだけです.
0505デフォルトの名無しさん
NGNG0506デフォルトの名無しさん
NGNG0507デフォルトの名無しさん
NGNG正直スマンカッタ
0508デフォルトの名無しさん
NGNGindex10.txt、index20.txt、hello30.txt、hogehoge.txtが生成されないの
はなぜですか?お願いします。
#include <iostream.h>
int main() {
int i;
for (i <= 0; i <= 5; i++){
switch ( i ){
case 1:
freopen("index10.txt", "w", stdout);
printf("Hello, World!");
fclose(stdout);
break;
case 2:
freopen("index20.txt", "w", stdout);
printf("Sage, World!");
fclose(stdout);
break;
case 3:
freopen("hello30.txt", "w", stdout);
printf("Hoge, World!");
fclose(stdout);
break;
default:
freopen("hogehoge.txt", "w", stdout);
printf("mogemoge, World!");
fclose(stdout);
break;
}
}
}
0509デフォルトの名無しさん
NGNG初心者です。ではなくて
ネタです。だよな?
0510デフォルトの名無しさん
NGNG0511デフォルトの名無しさん
NGNG0512マイク ◆yrBrqfF1Ew
NGNG0513デフォルトの名無しさん
NGNG0514デフォルトの名無しさん
NGNG0515デフォルトの名無しさん
NGNG配列の時にP+1とかって利用できるのが利点なのは後付けなきがするのですが。
0516デフォルトの名無しさん
NGNG0517デフォルトの名無しさん
NGNGそれであってると思うよ。でも、
配列の機能がポインタの機能の後付みたいな物でないか?
0518デフォルトの名無しさん
NGNG前回こちらに来ましたが、説明不足で答えて頂けなかったので
cpp全体をファイルをうぷしてまいりました
しかし!英語での出題となっております
読める方、、いるのかどうかわかりませんが、よろしくおねがいいたします
拡張子をcppに変更してお使いくださいまし
ttp://f37.aaa.livedoor.jp/~kisiseal/upseal/img/090.lzh
入力用ファイル
ttp://f37.aaa.livedoor.jp/~kisiseal/upseal/img/091.lzh
0519デフォルトの名無しさん
NGNGサンクス
やっぱり値操作がメインですよね
二行目は多分同じことを言ってるかも?
0520gakusei
NGNGここなんですけど、事情があって授業を長期間休んでしまったせいで
全く分かりません。
もし宜しければ何方かお願いしますm(_ _)m
問題は1〜5番です
別のスレにも出現していますが勘弁してください^^;
単位が本当にヤバクテ(x_x)
0521デフォルトの名無しさん
NGNG開けね
つーか>読める方、、いるのかどうかわかりませんが なめすぎ
今のご時世、英会話とまで行かなくともせめて読めなきゃやってられんぞ
>>520
ほとんどが、正常に動作するか確認せよ。と書かれているが…
0522デフォルトの名無しさん
NGNGマルチヤメレ
いろんなスレの人に迷惑がかかるだろがヴォケ
1はそのまま実行するだけ。
2は****の部分をheightにして実行。
3も2と同様に。
4は最初の****のところにheightを、次の****のところにheight,weight,bmi,sweightをいれる。
5は実行するだけ。
…もしかして釣りか?
0523518
NGNGここの90番91番です
お手数かけてもうしわけありません。
>>521
了解です;
もっと英語勉強しまする
よろしくおねがいしますm(_ _)m
0524デフォルトの名無しさん
NGNGと、とうだいせいdうぇうか?
0525gakusei
NGNG有難うございますm(_ _)m
ネタじゃないです^^;
0526デフォルトの名無しさん
NGNG5はscanfの行を while( scanf(略) != EOF ){ に変更して最後にも } をつける
0527gakusei
NGNG感謝しますm(_ _)m
0528522
NGNG補足サンクスコ
0529デフォルトの名無しさん
NGNGhttp://www.iis.u-tokyo.ac.jp/~susaki/c/func1.html
ここなんですけど、事情があって授業を長期間休んでしまったせいで
全く分かりません。
もし宜しければ何方かお願いしますm(_ _)m
問題は1〜5番です
別のスレにも出現していますが勘弁してください^^;
単位が本当にヤバクテ(x_x)
0530デフォルトの名無しさん
NGNG0531デフォルトの名無しさん
NGNG0532デフォルトの名無しさん
NGNGこれホントに宿題か?
0533デフォルトの名無しさん
NGNG普通にwhile(1){ … }でいいと思うんだが
0534518
NGNGいくつかのソースは入力済みです。
InsertTransaction関数だけでもなんとか教えて頂けませんでしょうか・・・
0535デフォルトの名無しさん
NGNG0536デフォルトの名無しさん
NGNG0537デフォルトの名無しさん
NGNG0538デフォルトの名無しさん
NGNG問題文は Ctrl+C ではなくCtrl+D を指定してるんだぞ?
0539デフォルトの名無しさん
NGNGint main(void) {
double height, weight, bmi, sweight;
char buf[256];
while (printf("身長(m)と体重(kg)を入力してください "), fgets(buf, sizeof(buf), stdin)) {
if (sscanf(buf, "%lf%lf", &height, &weight) != 2)
continue;
/* BMIの計算 */
bmi = bmi_cal(height, weight);
/* 標準体重の計算 */
sweight = std_weight(height);
/* 肥満度の判定 */
message(height, weight, bmi, sweight);
}
return 0;
}
0540デフォルトの名無しさん
NGNG「50単語程度からなる英文(複数のセンテンスでも可)をファイルから読み込み、その文章中に出現する単語とその頻度を画面表示するプログラムを作成すること。」です。
実行結果が以下のようになるようにお願いします。
ファイルの内容例
Put your hand on a hot stove for a minute, and it seems like an hour.
Sit with a pretty girl for an hour, and it seems like a minute.
That's relativity.
実行結果
Put[1] your[1]hand[1]
on[1]a[4]stove[1]
for[1]minute[2] and[2]
it[2]seems[2] like[2]
an[2]hour[2]Sit[1]
with[1]pretty[1] girl[1]
for[1]That’s[1]relativity[1]
0541デフォルトの名無しさん
NGNGThat と that は同一として扱うのか?
0542デフォルトの名無しさん
NGNGhotが消えたりforが二回数えられたり、難しすぎて漏れにはわかんないや。
0544デフォルトの名無しさん
NGNGD=v^2sin2θ+Aw(vsinθ)^2
上の式において、D,v,A,wは定数として値を与えられる。このときのθを求める問題です
よろしくお願いします
0545デフォルトの名無しさん
NGNG以下のような動作をするプログラムを、ビット演算子利用して作成しなさい。
まずキーボードからアルファベット1文字読み込む。
ただし、アルファベット以外の文字が入力された場合は、アルファベットが入力されるまで入力を繰り返す。
そのようにしてキーボードから入力されたアルファベットが大文字なら小文字へ、小文字なら大文字へ変換し、
表示するプログラムを作成しなさい。ただし、変換する部分の処理には必ずビット演算子を使用すること。
注意)
・必ず、入力された文字がアルファベットであるかどうかを判断して、アルファベットが1文字入力されるまで、入力を繰り返すこと。
・C言語には大文字に変換する標準関数toupperや小文字に変換する標準関数が用意されているが、それらを使用してはならない。
■ このスレッドは過去ログ倉庫に格納されています