■C言語の基本問題-第一問■
■ このスレッドは過去ログ倉庫に格納されています
0001常識
NGNG変数は x[] moji[] cnt[] を使用することにする。
必要なら上記以外の変数を使用しても可。
結果例)------------------------------------
Enter:kasdaask
a:3 kai
s:2 kai
d:1 kai
k:2 kai
-----------------------------------------
これを表示するためのプログラムを、C言語で記述せよ。
#include<stdio.h>
void main(void)
{
ここを考える
}
0106デフォルトの名無しさん
NGNG興味本位で入れてみました
VC++、BCC、gcc(Cygwin)、はすでに
インストールしてあったので
LSIC86はどうかなと思って試したら
つかえなかった・・・
DLはやめて、CマガのCDROMから入れたらOKでした、
お騒がせしました
0107デフォルトの名無しさん
NGNG0108デフォルトの名無しさん
NGNG落とすまでも無い。
0109デフォルトの名無しさん
NGNGLinux,Cygwinに入ってるっていうのはなしよ
あくまでも、gcc単体のDL先
0110109(騙り)
NGNG0111109
NGNGん?
きみ、文句もってるの?
0112デフォルトの名無しさん
NGNGそう、君は煽られている。
0113騙り
NGNG0114107
NGNG0115デフォルトの名無しさん
NGNG0116デフォルトの名無しさん
NGNG(w
0117デフォルトの名無しさん
NGNGこんなのが・・・
://japan.cnet.com/News/2001/Item/010620-4.html
0118
NGNG何故、こんな問題が解けない。
scanfを使って、順番に並べるだけなのに。
0119ありがとう
NGNG広告メールの配信企業は他にも多数あります。しかし登録したはいいがメールが来ない、懸賞は自作自演、
果てには個人情報収集目的のサービス実態のない所まであります。
その点このサイトは月10通〜20通の配信実績がありますし、何より住所・電話番号等不要なので匿名性がかなり高く、安心。
それにちゃんと送金してくれます。私も既に3回送金してもらいました。
ポイントが加速度的に増えるサービス、いくつかありますので仮登録したらCheckしてみて下さい。
※注意※
必ず 本登録 して下さい。仮登録のままではポイントが加算されません。
本登録スタートボタンのURLが載ったメールが来るまで数日〜数週間かかりますが、待っただけの価値は十二分にあります。
ともかく時間がかかることが多いので早めに仮登録を済ましておくことをお勧めします。
その後の本登録維持も忘れないようご注意下さい。(何かと面倒なのも広告出稿者を多く集める為の策のようです)
興味のある項目を答えるアンケートでは全てチェックを入れるのが吉。その分配信メールが増えてポイント増。
Ariga10.com http://www.ariga10.com/?id=207054
こちらから登録できます。記入欄は少ないので時間はほとんどかかりません。
0120デフォルトの名無しさん
NGNGconst 就職子をつけた変数は初期化された値から変更されないってKRでよんだんですが
const a[0] = "abcde";
とやって、その後、a[0] = "fghij";
とやると、printfさせるとfghijになってるんですが、これって変更できちゃってるんじゃ
ないの?
0121デフォルトの名無しさん
NGNG正 const char *a[0] = "abcde";
const char *a[1] = "ABCDE";
0122デフォルトの名無しさん
NGNGうーん、
ポインタのときは
constの場所が重要だと思います
どういう書き方しましたか
0123107
NGNGコンパイル済みgccってファイル名にbinaryとかかいてあるの?
前間違ってソース全部落としちゃったから
0124デフォルトの名無しさん
NGNGint f(char c,const char *p)
{//文字列pを走査しcと同じ要素があれば1、無ければ0
while(*p != '\0')
if(*p++ == c) return 1;
return 0;
}
int main(void)
{
int i,a[256] = {0},n;
char s[256],m[256],*p = m;
printf("Enter:");
gets(s);
for(n = i = 1,m[0] = s[0];s[i] != '\0';i++){
m[i] = '\0';
if(!f(s[i],m)) //登録されてない要素なら登録する
m[n++] = s[i];
}
m[i] = '\0';
n = i = 0;
while(s[n] != '\0'){
if(s[n++] == *p){
a[i]++;//カウント
}else{
p++;
a[++i]++;
}
}
for(i=0,p=m;*p != '\0';p++,i++)
printf("%c:%d kai\n", *p, a[i]);
return 0;
}
できたと思ったがダメだった・・・勉強が足りんね。
0125デフォルトの名無しさん
NGNG>>38 見れ。
あと「scanf は…」って意見も前のほうで出てました。
0126VBのほうがらくなんで、つい。
NGNGDim st$, ms$, i&, k&
st = InputBox("Please Input Keys"): For i = 0 To 255: k = Len(st) - Len(Replace(st, Chr$(i), "")): If k >= 1 Then ms = ms & Chr(i) & CStr(k) & "kai" & vbCrLf
Next: MsgBox (ms)
End Sub
0127デフォルトの名無しさん
NGNG>>122
>>121 に書いたのですが、このような初期化の仕方ではまずいのでしょうか?
0128デフォルトの名無しさん
NGNGソースだと何が悪いの?
0129デフォルトの名無しさん
NGNG> 正 const char *a[0] = "abcde";
って char へのポインターの配列か?
なら const がかかるのは配列の要素つまりポインターじゃないか
要するに「アドレスは書き換えませんよ」って事だろ
0131デフォルトの名無しさん
NGNG>>130
あぁそうか、、、わかりました。逝ってきます。
0132デフォルトの名無しさん
NGNG0133デフォルトの名無しさん
NGNG> const char* const a="abcde";
配列になってないじょ
121がしたいのは「書き換えられない文字列の配列」じゃないか?
でもどうしたらいいのか分からん^^;
誰か模範解答キボンヌ
0134デフォルトの名無しさん
NGNGconst char* const a[] = { "abcde", "ABCDE", };
では?
0135デフォルトの名無しさん
NGNG>>133
>>134
constって使い方難しいね
const a[] というように char とか型指定子でないものにかかる場合って
どういう意味なんだろう。最初と2番目のconstのかかり方がよくわからん。
0136デフォルトの名無しさん
NGNG0137デフォルトの名無しさん
NGNGあんがとさん>>134
漏れも逝ってきます。
0138デフォルトの名無しさん
NGNG識別子から外へ読んでいく。
const char * const a[] → const 『char 『* 『const 『a[]』』』』
1. a[] → a は配列。
2. const 『a[]』 → a は(定数の)配列。
3. * 『const 『a[]』』 → a は((ポインタの)定数の)配列。
4. char 『* 『const 『a[]』』』 → a は(((文字列への)ポインタの)定数の)配列。
5. const 『char 『* 『const 『a[]』』』』 → a は((((定数の)文字列への)ポインタの)定数の)配列
0139138
NGNG0140デフォルトの名無しさん
NGNG>>138
うわぁ〜丁寧な説明ありがとう
すごく分かりやすい!
0141デフォルトの名無しさん
NGNG1.const int *p;
2.int* const p;
3.const int* const p;
の違いは?
0142141
NGNGいろんなこといって、実は初心者か?みんな
0143デフォルトの名無しさん
NGNGも :)
0144デフォルトの名無しさん
NGNGあまりにバカらしくて誰も答えないに5000ポインタ
0145デフォルトの名無しさん
NGNG割り当てられていないアドレス
0146デフォルトの名無しさん
NGNGお前>>138の説明読んでもわかんねーの?プ
0147デフォルトの名無しさん
NGNGchar *p; // ポインタは const ではない。データも const ではない。
const char *p; // ポインタは const ではない。データは const である。
char * const p; // ポインタは const である。データは const ではない。
const char * const p; // ポインタは const である。データも const である。
char const * const p; // ポインタは const である。データも const である。
ポインタ宣言のアスタリスクの上を通る垂直の線があると考えればいい。
その線の左側に const があれば、ポインタそのものが指している対象が定数であり、
銭の右側に const があれば、ポインタそのものが定数である。
型名の前に const を書くのと型名とアスタリスクの間に const を書くのは同一である。
0148訂正
NGNGconst char *p = "hello"; // ポインタは const ではない。データは const である。
char * const p = "hello"; // ポインタは const である。データは const ではない。
const char * const p = "hello"; // ポインタは const である。データも const である。
char const * const p = "hello"; // ポインタは const である。データも const である。
0149デフォルトの名無しさん
NGNGこんな書き方、使ったことなかったよ。
0150138
NGNGconst char * const (*hoge)(const char * const base);
なんてどう?
0151デフォルトの名無しさん
NGNG0152デフォルトの名無しさん
NGNG0153デフォルトの名無しさん
NGNG引数として 参照データも参照先も変更できない char ポインタを受け取る。
0154デフォルトの名無しさん
NGNG参照データを変更できない、参照先を変更できない char ポインタを返す関数ポインタ hoge で、
引数として 参照データも参照先も変更できない char ポインタを受け取る。
0155デフォルトの名無しさん
NGNG0156デフォルトの名無しさん
NGNG■ このスレッドは過去ログ倉庫に格納されています