C/C++の宿題を片付けます 77代目
■ このスレッドは過去ログ倉庫に格納されています
【質問者へ】
回答者の便宜のため、質問の際は以下を行うことを推奨します。
・質問は【質問テンプレ】を利用してください。
・問題文は、出題されたまま全文を書いてください。
・計算問題は数式をあげ、どのような計算をするのか詳しく説明してください。
・エラーは、その詳細と発生した行を書きましょう。エラーメッセージはコピペしてください。
・後から問題に付け足しするのはやめましょう。付け足しは作業を無駄にしがちです。
・なりすましを防ぐため、トリップを使ってください。名前欄に、「#」に続けて任意の文字列を入力して
投稿すると、その文字列を知らない他人に騙られることを防ぐことができます。
【質問テンプレ】
[1] 授業単元:
[2] 問題文(含コード&リンク):
[3] 環境
[3.1] OS: (Windows/Linux/等々)
[3.2] コンパイラ名とバージョン: (gcc 3.4 VC 6.0等)
[3.3] 言語: (C/C++/どちらでも可 のいずれか)
[4] 期限: ([yyyy年mm月dd日hh:mmまで] または [無期限] のいずれか)
[5] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々)
【アップローダー==ラウンジ】(質問が長い時はココ使うと便利 回答者もコードが長ければここに)
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/joyful.htm
【C 関数検索 man on WWW】
http://www.linux.or.jp/JM/index.html
【前スレ】
C/C++の宿題を片付けます 76代目
http://pc8.2ch.net/test/read.cgi/tech/1162771475/
【過去スレ一覧】
http://makimo.to/cgi-bin/search/search.cgi?q=C%2B%2B%82%CC%8Fh%91%E8&andor=AND&sf=2&H=&view=table&D=tech&shw=2000
0232151
2006/11/24(金) 21:37:07あと期限が水曜日に延びました。
もしよろしければお願いします
0233224
2006/11/24(金) 21:39:15http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/3026.txt
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/3027.txt
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/3028.txt
0234デフォルトの名無しさん
2006/11/24(金) 21:52:00これ本当にC++?
0235230
2006/11/24(金) 21:55:14レスありがとうございます。
#include <stdio.h>
#define COLSIZE 80
int main(int argc, char *argv[])
{
char buffer[COLSIZE + 1];
FILE *fp;
fp = fopen("files.c", "r");
while(fp == NULL){
fgets(buffer, COLSIZE + 1, fp);
printf("%s", buffer);
}
fclose(fp);
return 0;
}
こんな感じになるんじゃないかなーと思うのですが違いますよね?
実際、実行しても何も表示されませんし。
while(s == NULL)も(fp == EOF)もダメでした。
0236デフォルトの名無しさん
2006/11/24(金) 22:00:300238デフォルトの名無しさん
2006/11/24(金) 22:09:12返り値を誤解してるのでは。例えば、
p = fgets(buffer, COLSIZE, fp);
上の例で言うと、『p に』『fgets() の返り値が』代入される。
buffer や fp は fgets() の返り値ではない。
(ちなみに、p の型が何かはマニュアルの書式欄から読み取れるはず。)
0239デフォルトの名無しさん
2006/11/24(金) 22:17:38Objective-Cじゃねぇか。
0240デフォルトの名無しさん
2006/11/24(金) 22:17:38でもスレ違いな
0241235
2006/11/24(金) 22:17:44ありがとうございます。
#include <stdio.h>
#define COLSIZE 80
int main(int argc, char *argv[])
{
char buffer[COLSIZE + 1];
FILE *fp;
fp = fopen("files.c", "r");
while(fgets(buffer, COLSIZE + 1, fp) != NULL){
printf("%s", buffer);
}
fclose(fp);
return 0;
}
ですよね?
もう一つ、お聞きしたいのですが、
読み込むファイル名をfgets関数を使って標準入力から読み込むようにして、
files.c以外だけでなく任意のファイルを読み込めるようにプログラムを変更
せよ。fgets関数で取り込むと改行記号も保存されるため、そのままでは
ファイル名として使用できない。改行記号を\0に置換する処理を行う必要が
ある。(strlenを使用しなさい。)
という問題なのですが、さっきのと違って考えても解りません。
strlenの使い方は解るのですが、これをどう活用させたら良いのかとか、
改行記号を\0に置換する処理とか、よく解りません。
0242デフォルトの名無しさん
2006/11/24(金) 22:18:08[2] 問題文(含コード&リンク):3次元配列の確保せよ
この問題に対して以下のようにしました。
P =(double ***)calloc(ALL,sizeof(double **));
if(P ==NULL) exit(1);
for(i=0 ; i < ALL ; i++){
P[i] = (double **)calloc(NN,sizeof(double *));
if (P[i]==NULL) exit(1);
for (j=0 ; j < NN; j++){
P[i][j] = (double *)calloc(NN,sizeof(double));
if (P[i][j]==NULL) exit(1);
}
}
ALL=8760,NN=99です。この数値は変更不可で、この配列確保を7回繰り返さなければなりません。
4回目になると勝手に計算が終わってしまいます。
多分、ALL=8760が大きいためと思うのですが・・・。うまく配列を確保する方法よろしくお願いします。
[3] 環境
[3.1] OS: Win XP HOME
[3.2] コンパイラ名とバージョン:Microsoft Visual C++ 2005 Express Edition
[3.3] 言語: C
[4] 期限: 出来れば明日中にお願いします
0243デフォルトの名無しさん
2006/11/24(金) 22:27:22改行は文字列の最後についている。
文字列の長さが分かれば、最後の文字の位置が分かる。
最後の文字の位置を '\0' で上書き(代入)すると改行が消える。
0244デフォルトの名無しさん
2006/11/24(金) 22:33:15標準入力はstdin
0245デフォルトの名無しさん
2006/11/24(金) 22:35:54普通に動くけど。
0246デフォルトの名無しさん
2006/11/24(金) 22:36:178760 * 99 * 99 * 8Byte = 655MB
655 * 7 = 4585MB
結論
そのOSとコンパイラじゃ無理
0247デフォルトの名無しさん
2006/11/24(金) 22:41:49こういう事がしたいんだろ?
double ***P;
int i, j;
P =(double ***)calloc(ALL, sizeof(double **));
if(P ==NULL) exit(1);
for(i=0 ; i < ALL ; i++) {
P[i] = (double **)calloc(NN, sizeof(double *));
if (P[i]==NULL) exit(1);
for (j=0 ; j < NN; j++){
P[i][j] = (double *)calloc(1, sizeof(double));
if (P[i][j]==NULL) exit(1);
}
}
0248デフォルトの名無しさん
2006/11/24(金) 22:45:160249デフォルトの名無しさん
2006/11/24(金) 22:48:430250デフォルトの名無しさん
2006/11/24(金) 22:51:23物理メモリがそんだけある必要はないだろう。
0251デフォルトの名無しさん
2006/11/24(金) 22:52:08使用されるまでメモリの確保さえしないOSもある。
0252デフォルトの名無しさん
2006/11/24(金) 22:56:15色々調べてみてcallocではなくfarcalloc使う?とかあったんですけど、根本的に無理な雰囲気ですねorz
0253デフォルトの名無しさん
2006/11/24(金) 23:01:52>ALL=8760,NN=99です。この数値は変更不可で、この配列確保を7回繰り返さなければなりません。
これは問題文そのままか?
原文そのままを書くこと。
説明がなくて申し訳ないです。
状況としては、プログラム上で3次元配列を7つ用いなければならなくて、今まで24時間を扱っていたのが
365日分*24時間=8760で計算してみる上で
「3次元配列の確保をせよ」という課題です。
0255デフォルトの名無しさん
2006/11/24(金) 23:19:520256デフォルトの名無しさん
2006/11/24(金) 23:30:02うるう年は勘弁してください・・・。
検索してたらこういうのが見つかったんですけど、関係ないですかね?
http://f4.aaa.livedoor.jp/~pointc/log493.html
0258デフォルトの名無しさん
2006/11/24(金) 23:46:20主記憶上に確保するのが無理なら、ファイルを配列の変わりに使えよ。
その都度アクセスしてもHDDならそんなに遅くないだろ。
0259デフォルトの名無しさん
2006/11/24(金) 23:48:17問題文をそのままコピペするのが最低限の誠意だと思うんだ
お前の足りない頭でどう考えたかなんてどうでもいい
0260デフォルトの名無しさん
2006/11/24(金) 23:50:56それで問題文が出せないんちゃうんかと。
0261デフォルトの名無しさん
2006/11/24(金) 23:57:08まあどちらにしろ、本当に8760 * 99 * 99のdouble型の3次配列を7個確保しなきゃ
いけないんだとしたら、メモリ足りないんだからあきらめろ。
0262デフォルトの名無しさん
2006/11/25(土) 00:24:06おい、日本語分かるか?
↓で相談するべきなんだよwww
【初心者歓迎】C/C++室 Ver.33【環境依存OK】
http://pc8.2ch.net/test/read.cgi/tech/1164376287/
まあ今更そっちで質問してもマルチだからなwww
馬鹿はさっさと鬱になって市ねwww
0263デフォルトの名無しさん
2006/11/25(土) 00:48:35もしなったらまた相談しにきてください。
0264デフォルトの名無しさん
2006/11/25(土) 01:05:57スレ違いでしたか・・・。どうもスイマセン。
誘導ありがとうございます。そちらで質問し直します。
0266デフォルトの名無しさん
2006/11/25(土) 01:18:41漏れだったらこんな風にするが。
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/3031.c
0267デフォルトの名無しさん
2006/11/25(土) 01:20:020268デフォルトの名無しさん
2006/11/25(土) 01:42:19有難うございました!まだまだ勉強不足のようなので、
初めから勉強し直したいと思います!
0270デフォルトの名無しさん
2006/11/25(土) 02:03:46ファイル上に領域を確保してる。
MapViewOfFile (unix 系では mmap) を使うと、ファイルをメモリ上に対応付ける事ができ、
該当するメモリへの読み書きが直接ファイルに対する読み書きになる。
技術的にはスワップファイルと同じ仕組み。
free() する場合と違い、対応付けを解除しても内容はファイル上に保持されるので、アクセス
する必要のある配列を必要のある期間だけ対応付け、必要がなくなったら即対応付けを解除
することで、アドレス空間を節約できる。(なので一度に7配列アクセスしたら当然破綻する)
# ちなみにかつての 16bit Windows は同じような仕組みで少ない実メモリをやりくりしてた。
0271デフォルトの名無しさん
2006/11/25(土) 02:21:15コピペも張られてるみたいだし
【初心者歓迎】C/C++室 Ver.33【環境依存OK】
http://pc8.2ch.net/test/read.cgi/tech/1164376287/
0272デフォルトの名無しさん
2006/11/25(土) 05:12:21[2] 問題文:以下のサンプルを参考に、文字で cos カーブ、sin カーブを描くプログラムの作成
#include <stdio.h>
#include <math.h>
// cc -lm
#define PI 3.1415926
int main( void )
{int deg;
for (deg=0 ; deg <= 360; deg += 20)
printf("%3d: %6.3lf %6.3lf\n",deg ,cos( (double)deg * PI / 180.0 )
,sin( (double)deg * PI / 180.0 ));
}
0 * +
15 * +
30 * +
45 +
60 + *
75 + *
90 + *
105 + *
120 + *
135 + *
150 + *
165 + *
180 + *
195 + *
210 + *
[3.1] OS:Linux
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語:C
[4] 期限:11月29日
0273デフォルトの名無しさん
2006/11/25(土) 05:29:34/* cc -lm */
#include <stdio.h>
#include <string.h>
#include <math.h>
#define PI 3.1415926
int main(void){
int deg;
for (deg=0 ; deg <= 210; deg += 15){
const int x1=(int)(sin(deg*PI/180.0)*25);
const int x2=(int)(cos(deg*PI/180.0)*25);
int i;
printf("%3d ",deg);
for(i=-25;i<=25;++i)
putchar(i==x1?'*':i==x2?'+':' ');
puts("");
}
return 0;
}
0274デフォルトの名無しさん
2006/11/25(土) 10:48:07[2] 問題文:入力した文字を元に、それを拡大したアスキーアートを描くプログラムの作成
[3.1] OS:Linux
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語:C
[4] 期限:11月29日
0275デフォルトの名無しさん
2006/11/25(土) 10:54:01AAは自前で用意すんの?
0276デフォルトの名無しさん
2006/11/25(土) 12:25:21[2] 問題文(含コード&リンク):
簡単なパイプを実現するシェルプログラムを作りなさい。
@ ls | more
. . .
@
のようにコマンドを'|'でつなげると、前のコマンドの
標準出力を後ろのコマンドの標準出力とします。
簡単のため、コマンドは2つだけとします。
パイプの実現にはpipeシステムコールを
使います。
int fds[2];
pipe(fds);
write(fds[1], . . . .);
read(fds[0], . . .);
[3] 環境
[3.1] OS:UNIX
[3.2] コンパイラ名とバージョン:gcc 3.4
[3.3] 言語:C
[4] 期限:2006年11月25日23:00まで
[5] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々)
ポインタ、構造体、システムコールなどは習いました。
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/3033.txt
授業でやった↑のサンプルを改造して作るらしいです。
0277デフォルトの名無しさん
2006/11/25(土) 12:53:34まず、サンプルの実行結果だけど、
-----
input the number of vertices n and the number of edges m
4 3
input tail and head of an edge m times
1 2
1 3
2 3
adjacency list
1: 1 2
2: 3
3:
4:
path: a tail head
1: 10 0 0
2: 1 1 2
3: 3 2 3
-----
隣接リスト(adjacency list)で1に対して1、2って正しいのか?
2、3が正しいと思うんだが、
それと最期のpath: と a って何? a[1]=10になってるしサンプルバグってね?
0278277
2006/11/25(土) 13:04:250280デフォルトの名無しさん
2006/11/25(土) 13:28:340281241
2006/11/25(土) 14:21:31レスありがとうございました。
#include <stdio.h>
#include <string.h>
#define COLSIZE 80
int main(int argc, char *argv[])
{
char buffer[COLSIZE + 1], new[COLSIZE + 1];
FILE *fp;
fgets(new, COLSIZE + 1, stdin);
a[strlen(new)] = '\0';
fp = fopen("new", "r");
fgets(buffer, COLSIZE + 1, fp);
while(fgets(buffer, COLSIZE + 1, fp) != NULL){
printf("%s", buffer);
}
fclose(fp);
return 0;
}
考えた結果こうなったのですが違ってますよね?
どこが違うのでしょうか?
0282デフォルトの名無しさん
2006/11/25(土) 14:25:45ところどころに出てくる
> COLSIZE + 1
には何か特別な意味があるのか?
0283デフォルトの名無しさん
2006/11/25(土) 14:32:131.
>fp = fopen("new", "r");
"new" では、「newという内容の文字列」になってしまう。
指定したいのは new という「変数」。
2.
一番目の文字を指す時 new[ ? ] の ? に入る数字は?また長さ一の文字列の最後の文字はどこにある?
二番目の文字を指す時 new[ ? ] の ? に入る数字は?また長さ二の文字列の最後の文字はどこにある?
・
n 番目の文字を指す時 new[ ? ] の ? に入る数字は?また長さ n の文字列の最後の文字はどこにある?
0284282
2006/11/25(土) 14:42:560285デフォルトの名無しさん
2006/11/25(土) 14:44:25>a[strlen(new)] = '\0';
new[strlen(new)] = '\0'; もしくは
new[strlen(new)-1] = '\0';
fopen() 直後のfgetは余計
0286デフォルトの名無しさん
2006/11/25(土) 14:56:08あんた馬鹿?
0287デフォルトの名無しさん
2006/11/25(土) 15:13:23[2] 問題文:2つの最大40桁の自然数を読み込み、その和を返すプログラムを作れ。
[3] 環境
[3.1] OS: Linux
[3.2] コンパイラ名: gcc
[3.3] 言語: C
[4] 期限:来週の木曜日(11月30日)まで
[5] その他の制限:構造体、ポインタを軽くならったところです。
入力は文字列で行い、それを型変換し計算するという流れになるかと思いますが、
文字列の扱いに困っております。
0288デフォルトの名無しさん
2006/11/25(土) 15:37:05以前 fj に似たようなのが流れてたなぁと思って検索したら出てきた。
ttp://katsu.watanabe.name/ancientfj/article.php?mid=%3C784lk3%245t%241%40news1.dti.ne.jp%3E
0289デフォルトの名無しさん
2006/11/25(土) 15:42:25適当に書いてみた。
#include<stdio.h>
#include<string.h>
void std_reverse(char*begin,char*end){
char c;while(begin != end && begin != --end)c=*begin,*begin++=*end,*end=c;
}
char*my_strrev(char*p){std_reverse(p,p+strlen(p));return p;}
int main(void){
char a[41]={0},b[41],c,*p=a,*q=b;
scanf("%s%s",a,b);
my_strrev(a);my_strrev(b);
for(c=0;*p||*q||c;c=*p > '9',*p++ -= c * 10)
*p = (*p?*p:'0') + (*q?*q++-'0':0) + c;
puts(my_strrev(a));
return 0;
}
0290デフォルトの名無しさん
2006/11/25(土) 15:46:240291デフォルトの名無しさん
2006/11/25(土) 16:10:21少なくともこれは全く無意味だな。
0292デフォルトの名無しさん
2006/11/25(土) 16:12:140293デフォルトの名無しさん
2006/11/25(土) 16:18:22もしかして、真偽値を確かめてから偽なら後を実行するというアレか!?
0294デフォルトの名無しさん
2006/11/25(土) 16:18:590295デフォルトの名無しさん
2006/11/25(土) 16:39:42その文脈でもしくはと書く以上、
:私にはどちらを依頼人が望んでいるかは分からないが、
:依頼人の望む動作は A と B のどちらかであるように私には思える。
と解釈するのが常識的であって、つまり本人は A にも B にも意味があると
思っていると判断されて当然では。
逆に、私はわざとやったとは考えてないが、もし本人が、一方は全くのハズレで
意味がないと重々承知した上でわざとこのように書いたのなら、その軽重は
別として、相手を混乱させてやろうといった意思があったことになるのでは。
0296デフォルトの名無しさん
2006/11/25(土) 16:49:59回答 彼は頼もしくはない
0297デフォルトの名無しさん
2006/11/25(土) 18:10:21オナニーはひとりで汁
0298デフォルトの名無しさん
2006/11/25(土) 18:14:00まぁ、みせっこもたまにはいいよね
0299デフォルトの名無しさん
2006/11/25(土) 18:23:13[2] 問題文(含コード&リンク): ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/3036.txt
[3] 環境
[3.1] OS: Linux
[3.2] コンパイラ名とバージョン: gcc
[3.3] 言語: C言語
[4] 期限: 2006年11月26日20時00分まで
[5] その他の制限: 問題で与えられたソースを元にせよという指示がありました。
よくわからない部分は全力で調べるのでよろしくお願いします
0300デフォルトの名無しさん
2006/11/25(土) 18:27:52[2] 問題文:
文字列と数字を与え、文字列の長さが数字より大きいかどうかを判定し、
その後に文字列の長さがどれだけ数字より大きいかを求めて表示するようなプログラムを作成せよ。
文字列の長さの方が小さい場合は何もせず終了せよ。
[3] 環境
[3.1] OS: Linux
[3.2] コンパイラ名: gcc
[3.3] 言語: C
[4] 期限: 11/29まで
[5] その他の制限: まだ始めたばっかなんで全然わかりません。
0301デフォルトの名無しさん
2006/11/25(土) 18:32:14スレ住人おすすめの本かサイトを教えてくれ。
0302デフォルトの名無しさん
2006/11/25(土) 18:33:48brainf*ckがいいんじゃないか?
ぐぐってみろ
0303デフォルトの名無しさん
2006/11/25(土) 18:42:40受け取った引数xの全桁の合計値を返す関数
int sum_dgt(int x) {/* */} を作り実行しなさい。
例えばx=234のときは9となる。(正の整数とする)
[3] 環境
[3.1] OS: Linux
[3.2] コンパイラ名: gcc
[3.3] 言語: C
[4] 期限: 11/28まで
おねがいします
0304281
2006/11/25(土) 18:43:33はい、そういうことです。
>>283氏と>>285氏のレスで解りました。
ありがとうございます。
ただ、>>285氏の
>fopen() 直後のfgetは余計
というので、なぜfopen() 直後のfgetが必要ないのかは、
いまいち解りませんが。
0306デフォルトの名無しさん
2006/11/25(土) 19:21:44死んでくれ
0307151
2006/11/25(土) 19:23:170308デフォルトの名無しさん
2006/11/25(土) 19:24:06わかっているさ
0309デフォルトの名無しさん
2006/11/25(土) 19:24:11俺より下だったら答えてあげる
0310151
2006/11/25(土) 19:29:110311デフォルトの名無しさん
2006/11/25(土) 19:30:13死ねよKO
0312151
2006/11/25(土) 19:31:58慶應ではないです
特定されると嫌なので書きたくないですが、慶應よりは下です
0313デフォルトの名無しさん
2006/11/25(土) 19:32:29ボンボンというだけで慶應に入って
おまけに卒業に必要な単位は他人任せか
腐れ外道が
0314151
2006/11/25(土) 19:36:09幼稚舎にいた頃、アルバイトで来ていた日大の学生さんを見て、日大はお猿さん養成所も同然だと母が言ってましたが。
0315デフォルトの名無しさん
2006/11/25(土) 19:37:44こっそり本人が書いたんじゃないかと思えてきたよw
0316デフォルトの名無しさん
2006/11/25(土) 19:40:380317デフォルトの名無しさん
2006/11/25(土) 19:42:29信じてるよ
0318デフォルトの名無しさん
2006/11/25(土) 19:43:37俺も信じてるよ
0319デフォルトの名無しさん
2006/11/25(土) 19:44:17[1] 授業単元:情報処理工学1
[2] 問題文(含コード&リンク): 下記
[3] 環境
[3.1] OS:XP
[3.2] コンパイラ名とバージョン:VC++
[3.3] 言語: C++
[4] 期限: 明日まで
[5] その他の制限:
class Vector{
public:
void f(){cout << "f()" << endl;}
};
int main(){
vector<Vector*> vec;
Vector *v;
for(int i = 0; i < 10; i++) { v = new Vector; vec.push_back(v); }
for(vector<Vector*>::Iterator i = vec.begin(); i < vec.end(); i++)
i.***->f();
}
というプログラムを作ってるんですが、動的にクラスを確保して、それを次々にvectorに格納して、最後に表示をするっていうふうにしたんです。
ですが、***の部分をどうやったらいいのか、わかりません。クラスではなく、整数であれば、i をそのまま使えばいいんですけど、クラスだとうまくいきません。
どうしたらいいでしょうか??
0320デフォルトの名無しさん
2006/11/25(土) 19:44:26前スレのは知らんがこのスレのを消化していこうぜ
下らん流れはさっさと断ち切るに限る
0321151 ◆nEYxVzEafI
2006/11/25(土) 19:46:590323デフォルトの名無しさん
2006/11/25(土) 19:50:57//受け取った引数xの全桁の合計値を返す関数
int sum_dgt(int x)
{
int digit = 1;
int sum = 0;
int i ;
int xx ;
int xxx = x;
for(i = 1; x > 1 ;i++){
x /=10;
digit *= 10;
}
for(;digit > 0; digit/=10){
xx = xxx;
xx /= digit;
sum += xx;
xxx-=xx*digit;
}
return sum;
}
0325デフォルトの名無しさん
2006/11/25(土) 19:53:32>>151 (今日中)
>>274 (29日まで)
>>276 (今日の23時まで)
>>299 (明日の20時まで)
>>300 (29日まで)
>>319 (明日まで)
期限切れを消しといた
0326デフォルトの名無しさん
2006/11/25(土) 19:54:32もっとゆとりを持って依頼に来てくれよw
0328デフォルトの名無しさん
2006/11/25(土) 20:02:12│>>90 (今日中)
│>>299 (明日の20時まで)
│>>319 (明日まで)
↓>>151 >>274 >>300 (29日まで)
まあまったり待てや
0329デフォルトの名無しさん
2006/11/25(土) 20:03:380330デフォルトの名無しさん
2006/11/25(土) 20:06:56#include <stdio.h>
#include <string.h>
//'\0'は数えないものとする
void Compar(int x, char s[])
{
unsigned int len;
len = strlen(s);
if(x <= len)
printf("文字の長さと数値の差は%d \n",len - x);
else
return;
}
0331デフォルトの名無しさん
2006/11/25(土) 20:09:00│>>299 (明日の20時まで)
│>>319 (明日まで)
↓>>151 >>274 (29日まで)
■ このスレッドは過去ログ倉庫に格納されています