トップページ⇒tech
156コメント36KB

■C言語の基本問題-第一問■

■ このスレッドは過去ログ倉庫に格納されています
0001常識NGNG
KBで入力された文字列を、各文字がそれぞれ何個ずつあったか出力せよ。
変数は x[] moji[] cnt[] を使用することにする。
必要なら上記以外の変数を使用しても可。

結果例)------------------------------------
Enter:kasdaask
a:3 kai
s:2 kai
d:1 kai
k:2 kai
-----------------------------------------
これを表示するためのプログラムを、C言語で記述せよ。
#include<stdio.h>
void main(void)
{
ここを考える
}
0002デフォルトの名無しさんNGNG
/** 終了 **/
0003デフォルトの名無しさんNGNG
>>1
宿題か?
0004 NGNG
printf("Enter:kasdaask\na:3kai\ns:2kai\nd:1kai\nk:2kai\n");

return 0;
0005 NGNG
>>4
へたれプログラマー逝ってよし。
KBって書いてあるだろ!ゴルァ!
0006ビル・ジョブスNGNG
みんな!寝るよー!
0007デフォルトの名無しさんNGNG
KBってなんだ?
教えろ
00084NGNG
>>5
知ってるよ!ボケ!
各アルファベットを何回使ったか表示するプログラムだろ、1問目からめんどくせーじゃねーか!
0009デフォルトの名無しさんNGNG
>>1
終了はどうするんだよ。
終了の際に押したキーもカウントするのか?
00104NGNG
多分キーボードの略だろ,KB
0011常識NGNG
キーボードの事(KB)
任意で入力した文字を、1つずつ(重ならないよう)並べて、
その文字が何回使用されたかを、出力する問題。
答え、知りたい?
0012デフォルトの名無しさんNGNG
どうでもいいことだが、
> a:3 kai
> s:2 kai
> d:1 kai
> k:2 kai
なぜ「kai」?出力はテレタイプ?
0013デフォルトの名無しさんNGNG
全然。
0014 NGNG
>>8
はぁ、ここは、なんちゃってが多いな。
00154NGNG
まぁ答えが6行以内のプログラムだったら感動してやる。
0016デフォルトの名無しさんNGNG
>>11
出力は辞書順にする必要あるか?
0017デフォルトの名無しさんNGNG
>>1
変数名指定するのって、凄く宿題臭いですの。
しかも莫迦っぽいですの。
0018デフォルトの名無しさんNGNG
mainはintを(以下略)
0019 NGNG
>>16
>>1の結果例を見れば辞書順にする必要があるかどうか分かるだろ!馬鹿!
0020デフォルトの名無しさんNGNG
普通、KBって言ったらナレッジベース(Knowledge Base)を思うもんだがなぁ・・・
0021常識 NGNG
少し回答
----------------------------------------
char x[100];
char moji[100];
char cnt[100];
int x,y;

//文字列の入力
printf("Enter:");
scanf("%s",x);

--------------------------------------------------------
ヒント:変数の使い道
 x[100]⇒kasdaask
 moji[100]⇒kasd
0022デフォルトの名無しさんNGNG
>変数は x[] moji[] cnt[] を使用することにする。

変数なのに[]?
配列っていえや!モルァ
0023常識NGNG
問題だから、変数を指定するんだ!
そんなに作られた変数がいやなら、好きにしろ!
ここでは、メイン関数にintは使わない。
0024デフォルトの名無しさんNGNG
凄いよ!x[100] で、しかも scanf() だって!
尚かつ、moji[100] で cnt[100]!
参った>>21
0025常識NGNG
1次配列を使用します。
0026デフォルトの名無しさんNGNG
これは難しいぞ。
"kasdaask" と入力されてasdkの順に出力されてるのだが、
どんな方法か全く思いつかない。
きっとものすごいアルゴリズムが必要なのだろう。

0027デフォルトの名無しさんNGNG
>>20
すまん。>>1にはそんな知識は無いんだ。
なんたってchar x[100];だぞ。こういうときは普通ヒープ使うだろ?
0028デフォルトの名無しさんNGNG
>>25
何で配列じゃないとダメなの?

宿題なんだろ、早く白状しろ。
今ならまだ怒らないから。
0029 NGNG
>>24
お前の頭に参った。
0030デフォルトの名無しさんNGNG
(´−`)。o ○ (ディムパか…)
0031常識NGNG
>1です。
はい。宿題でした。ごめんなさい。
0032デフォルトの名無しさんNGNG
(´-`).。oO(きっと>>29は老いた時代錯誤プログラマなんだろうな)
0033常識NGNG
これは、隣り合う文字を比べながら、判定していく方法を使います。
0034 NGNG
>>31
おいおい・・・マジなのかよ
0035デフォルトの名無しさんNGNG
>>26
キーボードの、キーの並び順じゃないのか ?
0036 NGNG
>>26
馬鹿か?乱数を使うに決まってるだろ!
0037 NGNG
>>35
君、面白いな、ツボつかれた(藁
0038うんこNGNG
>>1 >>15
int cnt[256], c, i;
for(i=0;i<256;i++) cnt[i]=0;
printf("Enter:");
while((c=getchar())!='\n') cnt[c]++;
for(i=0;i<256;i++) cnt[i] && printf("%c:%d kai\n", i, cnt[i]);
return;

>>35
教官がキーボードを左から順に…(ワラ
0039デフォルトの名無しさんNGNG
cntスタックに取ってる奴は厨房
staticにしろよ
004015NGNG
>>38
変数cは初期化しなくていいのか?
0041デフォルトの名無しさんNGNG
scanfにprintf。挙句の果てにgetchar…か…。
0042デフォルトの名無しさんNGNG
>>40
↓この行の意味わかる?
while((c=getchar())!='\n') cnt[c]++;
0043デフォルトの名無しさんNGNG
x[]使い忘れてるぞ(藁
004438NGNG
>>39
こんなプログラムでそんなこと気にしてどないすんねんっちゅう…。
まあ、確かに俺は厨房だけど。

>>40
c=getchar()で最初に使ってるのに初期化してどないすんねんっちゅう…。

>>41
printfとgetcharって何か問題でも?

>>42
moji[]モナー
004544NGNG
あ、>>42が目にはいってなかった。
>>42じゃなくて>>43ね。
004615NGNG
>>38
scanfが無いのにどうやって入力するの?
004744NGNG
そういやgetcharって-1を返すことがあるような…

>>46
ネタですか?
004815NGNG
>>42
おれはまだそうゆう使い方習ってません。
基本問題1問目なのにそんなの使うのか?
0049常識NGNG
>1です
え〜〜〜〜〜〜〜〜〜〜。
こんなやり方、あったの?信じられない〜!!
getcharって-1を返す
なつかしい、響き。
00501.22NGNG
int i,*p = &i;
(*& * p = * p - 10 * 5) = 1 && 1 & 0 && & p || 0;

これはなんて言うエラーが表示される?
当ててみろ!
00511.22NGNG
言っとくがコンパイルとか試して調べるなよ。
そんなアフォはいないと思うが。
0052常識NGNG
>>48
使いません。scanfで大丈夫です。
ヒント:for(i=0 ; x[i]!='\0' ;i++) …省略
0053デフォルトの名無しさんNGNG
>50
エラー:スレッドが違います。
0054デフォルトの名無しさんNGNG
>>47
処理系依存だけどね。
0055常識NGNG
めちゃくちゃやな。
ポインタ?か?これ?
0056 NGNG
>>50
エラー:逝ってよし!
0057デフォルトの名無しさんNGNG
>>50
(*& * p = * p - 10 * 5)
この結果は左辺値じゃないから、代入できんやろ。
0058デフォルトの名無しさんNGNG
>>50
左辺が左辺値(ていうんだっけ?)ではないとか?
* & とかのほうが = より優先度高そうだし。
0059sageNGNG
cnt[] 初期化するなら
 int cnt[256] = {0};
が簡単。
しかし 0x00〜0xff まで受け付けるのに "%c" は如何なものか。
006015NGNG
>>52
それよりもscanfなしで入力できるの?
0061デフォルトの名無しさんNGNG
結局、答え出せるやついないんかいココは
三村やってるぐらいなら
コード書いてくれ
0062デフォルトの名無しさんNGNG
>>50
普通にコンパイル通りますがなにか?
0063デフォルトの名無しさんNGNG
((*(&(*p))=((*p)-(10*5)))=(((1&&(1&0))&&(&p))||0);

多分こうだろう。
0064デフォルトの名無しさんNGNG
>>62
ほんと?一字一句間違いなく入力した?
どう見ても左辺が左辺値になってないからコンパイル通らないよ。
0065デフォルトの名無しさんNGNG
馬鹿ばっか。
0066デフォルトの名無しさんNGNG
>>60
getcharがあるよ。
0067デフォルトの名無しさんNGNG
>>64
これって単純に
*p = 0;
やってるだけでそ。
つーか、コンパイルするなっつといて「ほんと?一字一句間違いなく入力した?」はないだろ。
0068デフォルトの名無しさんNGNG
>>62コピペしろ。
0069デフォルトの名無しさんNGNG
printfつかわないで
出力するにはどうやるの
0070 NGNG
>>50
は一年中がひなまちゅり。
0071デフォルトの名無しさんNGNG
>>62 >>67
どのコンパイラ?
0072デフォルトの名無しさんNGNG
コピペしてやってみたけどiが0になって正常終了したよ。
007364NGNG
>>67
わりい。「コンパイル通りますが」って書いてるから試したのかと思ったよ。
>>63見れば分かるでしょ。*p = 0; にはならないよ。
007415NGNG
>>69
何に対して?
0075デフォルトの名無しさんNGNG
Cで代入演算子は左辺のリファレンスを返しますか?
作り出されるのは右辺値だと思うが。
0076デフォルトの名無しさんNGNG
あ、たしかに0にはならないみたい。初期化したらダメなのかな
0077デフォルトの名無しさんNGNG
むしろ、
(*p = 0) = 0;
の方が近い。>>75の通り、これは
0 = 0;
になる。(0 == 0 じゃねーぞ)
当然コンパイルエラー。
0078デフォルトの名無しさんNGNG
>>printf
std outに対して・・・
0079デフォルトの名無しさんNGNG
>>78
putchar
0080デフォルトの名無しさんNGNG
vcは
(*p = 0) = 0;
が通るんだよね。
0081デフォルトの名無しさんNGNG
wchar_t euc = L'あ';
fputc(euc);
0082デフォルトの名無しさんNGNG
>>79
ほんとに助かりました
いま、自分のコンパイラprintf使えないもんで・・・
0083 NGNG
つーか俺は今、CASL�Uを勉強してるので、

    CASL�Uの問題スレにしましょう。    

0084デフォルトの名無しさんNGNG
>>1は大学生?専門学校?
この問題出した教官の言うことはあまり信じない方がいいと思うよ。
0085デフォルトの名無しさんNGNG
>>80
あ、ほんとだ。>>50でエラー出ないね。普通にi=0で正常終了するわ。
0086デフォルトの名無しさんNGNG
>>82
なんじゃそりゃ…
0087 NGNG
>>82
printfが使えないコンパイラなんてないだろう。
0088デフォルトの名無しさんNGNG
>>80
まじ?それってC言語の文法を逸脱してるような…
0089デフォルトの名無しさんNGNG
野球ヲタワラタ

http://ime.nu/www.baseball-lover.com
0090デフォルトの名無しさんNGNG
>>86-87
>>82は組み込み系だと思う。
0091 NGNG
>>90
何組み込み系って?stdio.hが無いの?
009280NGNG
>>88
マジ。前にこれでハマったことがあって覚えてるんだけどね。
0093デフォルトの名無しさんNGNG
printfが使えなくてputcharが使える組み込み系ってあんの?
009488NGNG
ひええ。ひどいバグだなあ。
>>50はその問題を踏まえてあんなこと書いてたのか?深すぎるぞ。
ちなみにgccでは、
invalid lvalue in assignment
のエラーになる。
0095デフォルトの名無しさんNGNG
>>90
なるほろ
0096デフォルトの名無しさんNGNG
ええ、マジです
LSI C86 試食版なんですが・・・
あと、既知のものではsin,cos,なども使えません
試食版ってこんなものですか?
製品版って値段いくらぐらいするんですか
っていうかLSIC86の試食版以外きいたことないんで
存在するのかどうか・・・・
0097デフォルトの名無しさんNGNG
>84 なんで?
>1さんが学校でどの教科書使ってるか教えて( ‘д‘)ホスィ
009886,95NGNG
>>96
BCCかgcc使えどっちもフリーだぞ。
009980NGNG
>>94
それが正常なコンパイラの反応だよねぇ。
0100デフォルトの名無しさんNGNG
>96 ttp://www.lsi-j.ab.psiweb.com/product/c86/index.html
0101デフォルトの名無しさんNGNG
>>96
試食版なら使えるよ。>printf
ちゃんとinclude出来てないんじゃないの?

っていうか、BCC55使えよ。

> っていうかLSIC86の試食版以外きいたことないんで
> 存在するのかどうか・・・・

非常に有名だったよ。
■ このスレッドは過去ログ倉庫に格納されています