C/C++の宿題を片付けます 59代目
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2006/01/27(金) 09:08:40【質問者へ】
回答者の便宜のため、質問の際は以下を行うことを推奨します。
・質問は【質問テンプレ】を利用してください。
・問題文は、出題されたまま全文を書いてください。
・計算問題は数式をあげ、どのような計算をするのか詳しく説明してください。
・エラーは、その詳細と発生した行を書きましょう。エラーメッセージはコピペしてください。
・後から問題に付け足しするのはやめましょう。付け足しは作業を無駄にしがちです。
・なりすましを防ぐため、トリップを使ってください。名前欄に、「#」に続けて任意の文字列を入力して
投稿すると、その文字列を知らない他人に騙られることを防ぐことができます。
【質問テンプレ】
[1] 授業単元:
[2] 問題文(含コード&リンク):
[3] 環境
[3.1] OS: (Windows/Linux/等々)
[3.2] コンパイラ名とバージョン: (gcc 2.9 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++の宿題を片付けます 58代目
http://pc8.2ch.net/test/read.cgi/tech/1137522945/
【過去スレ一覧】
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
0002デフォルトの名無しさん
2006/01/27(金) 09:19:11(`・ω・´) >>1乙
.ノ^ yヽ、
ヽ,,ノ==l ノ
/ l |
~""""""~"""~"""~"
0003デフォルトの名無しさん
2006/01/27(金) 09:23:00:::::::: :.: . . /彡ミ゛ヽ;)ヽ、. ::: : ::
::::::: :.: . . / :::/:: ヽ、ヽ、i . .:: :.: :::
 ̄ ̄ ̄(_,ノ  ̄ ̄ヽ、_ノ ̄
>>1乙
0004りんご
2006/01/27(金) 12:59:02[1] プログラミング入門
[2] タイピングソフトを考えて作成しなさい。
というだけです。そこで、英語を5文字1文を表示して、その下に
タイプした文字を表示していく。1行打ち終わった時に、3文字
以上間違っていたら、もう一度同じ文が表示され、繰り返す…
というものを作りたいと考えました。
[3] 環境
[3.1] OS:Unix
[3.2] よく分かりません。
[3.3] 言語:C
[4] 期限:2006年1月28日12:00まで
[5] 先ほど、「Cでタイピングソフトを作りたい」というスレを
立ててしまったのですが、そこにも書いた通り、Cを初めて
2週間です。
0005デフォルトの名無しさん
2006/01/27(金) 13:02:19前スレ使い終わってからこっちを使えボケ
スレ削除依頼出してきたのか?
0006デフォルトの名無しさん
2006/01/27(金) 13:06:130007デフォルトの名無しさん
2006/01/27(金) 13:42:07SWAPという並び替えの関数とバブルソートの関数をつかってプログラミングをつくる
のが条件です。あとwhile文は使わずにfor文だけをつかいたいです。
どなたかこの問題を解いて下さいませんか?宜しくお願いします。
0008デフォルトの名無しさん
2006/01/27(金) 13:42:56#include <time.h>
static struct { const char* kana; const char* alpha; }
problems[] = {
{"水俣", "minamata"},
{"イタイイタイ", "itaiitai"},
{"四日市", "yokkaichi"},
{"新潟", "nigata"}
};
int main(void) {
int i;
time_t t = time(NULL);
for(i=0; i < sizeof(problems) / sizeof(*problems); i++) {
printf("問題 %d:\n", i+1);
while(1) {
int c = 0;
printf("\t%s (%s)\n", problems[i].kana, problems[i].alpha);
while(problems[i].alpha[c] == getchar()) c++;
fseek(stdin, 0, SEEK_END);
if(problems[i].alpha[c] == '\0') break;
puts("やり直せ。");
}
}
t = time(NULL) - t;
printf("評価: あなたは%s。", (t < 1)? "神レベル": (t < 10)? "凡人": "なめくじ");
return 0;
}
0009デフォルトの名無しさん
2006/01/27(金) 14:18:120010デフォルトの名無しさん
2006/01/27(金) 14:37:46#include <stdio.h>
void swap(int *a, int *b)
{
int tmp;
tmp=*a;
*a=*b;
*b=tmp;
}
int main()
{
int num[]={6,4,3,8,1};
int i, j, num_size;
num_size=sizeof(num)/sizeof(int);
for (i=0 ; i<num_size ; i++)
for (j=num_size-1 ; j>i ; j--)
if (num[j-1] > num[j])
swap(&num[j-1], &num[j]);
for (i=0 ; i<num_size ; i++)
printf("%d\n", num[i]);
return 0;
}
0011デフォルトの名無しさん
2006/01/27(金) 14:46:22厨房板やVIPじゃあるまいし
0012以下、名無しにかわりましてVIPがお送りします
2006/01/27(金) 14:50:220013デフォルトの名無しさん
2006/01/27(金) 14:52:00ttp://yy11.kakiko.com/test/read.cgi/news4vip/1122044336/
ワンクリ業者殲滅!
0014デフォルトの名無しさん
2006/01/27(金) 14:56:23残念ながらプログラム板にもVIPのカス共はいるってことさ
0015デフォルトの名無しさん
2006/01/27(金) 15:01:560016デフォルトの名無しさん
2006/01/27(金) 15:02:280017デフォルトの名無しさん
2006/01/27(金) 15:03:130018デフォルトの名無しさん
2006/01/27(金) 15:03:14〒 ! + 。 + 。 * 。
+ 。 | |
* + / / イヤッッホォォォオオォオウ!
∧_∧ / /
(´∀` / / + 。 + 。 * 。
,- f
/ ュヘ | * + 。 + 。 +
〈_} ) | それがVIPクオリティ
/ ! + 。 + + * http://ex7.2ch.net/news4vip/
./ ,ヘ |
ガタン ||| j / | | |||
――――――――――――
0019デフォルトの名無しさん
2006/01/27(金) 15:03:380020デフォルトの名無しさん
2006/01/27(金) 15:04:430021デフォルトの名無しさん
2006/01/27(金) 15:04:59''';;';';;'';;;,., ザッ
''';;';'';';''';;'';;;,., ザッ
ザッ ;;''';;';'';';';;;'';;'';;;
;;'';';';;'';;';'';';';;;'';;'';;;
vymyvwymyvymyvy ザッ
ザッ MVvvMvyvMVvvMvyvMVvv、
Λ_ヘ^−^Λ_ヘ^−^Λ_ヘ^Λ_ヘ
ザッ ヘ__Λ ヘ__Λ ヘ__Λ ヘ__Λ
__,/ヽ_ /ヽ__,.ヘ /ヽ__,.ヘ _,.ヘ ,.ヘ ザッ
/\___/ヽ /\___ /\___/ヽ _/ヽ /\___/ヽ
/'''''' '''''':::::::\/'''''' '''/'''''' '''''':::::::\ /'''''' '''''':::::::\
. |(●), 、(●)、.:|(●), |(●), 、(●)、.:|、( |(●), 、(●)、.:|
| ,,ノ(、_, )ヽ、,, .::::| ,,ノ(、_, )| ,,ノ(、_, )ヽ、,, .::::|_, )| ,,ノ(、_, )ヽ、,, .::::|
. | `-=ニ=- ' .:::::::| `-=ニ= | `-=ニ=- ' .:::::::|ニ=| `-=ニ=- ' .:::::::|
\ `ニニ´ .:::::/\ `ニニ \ `ニニ´ .:::::/ニ´ \ `ニニ´ .:::::/
/`ー‐--‐‐―´\ /`ー‐- /`ー‐--‐‐―´\-‐‐ /`ー‐--‐‐―´
「vipから来ますた」「vipから来ますた」「vipから来ますた」「vipから来ますた」
0022デフォルトの名無しさん
2006/01/27(金) 15:05:010023デフォルトの名無しさん
2006/01/27(金) 15:05:590024デフォルトの名無しさん
2006/01/27(金) 15:08:22''';;';'';';''';;'';;;,., ザッ
ザッ ;;''';;';'';';';;;'';;'';;;
;;'';';';;'';;';'';';';;;'';;'';;;
vymyvwymyvymyvy ザッ
ザッ MVvvMvyvMVvvMvyvMVvv、
Λ_ヘ^−^Λ_ヘ^−^Λ_ヘ^Λ_ヘ
ザッ ヘ__Λ ヘ__Λ ヘ__Λ ヘ__Λ
__,/ヽ_ /ヽ__,.ヘ /ヽ__,.ヘ _,.ヘ ,.ヘ ザッ
/\___/ヽ /\___ /\___/ヽ _/ヽ /\___/ヽ
/'''''' '''''':::::::\/'''''' '''/'''''' '''''':::::::\ /'''''' '''''':::::::\
. |(●), 、(●)、.:|(●), |(●), 、(●)、.:|、( |(●), 、(●)、.:|
| ,,ノ(、_, )ヽ、,, .::::| ,,ノ(、_, )| ,,ノ(、_, )ヽ、,, .::::|_, )| ,,ノ(、_, )ヽ、,, .::::|
. | `-=ニ=- ' .:::::::| `-=ニ= | `-=ニ=- ' .:::::::|ニ=| `-=ニ=- ' .:::::::|
\ `ニニ´ .:::::/\ `ニニ \ `ニニ´ .:::::/ニ´ \ `ニニ´ .:::::/
/`ー‐--‐‐―´\ /`ー‐- /`ー‐--‐‐―´\-‐‐ /`ー‐--‐‐―´
「vipから来ますた」「vipから来ますた」「vipから来ますた」「vipから来ますた」
0025デフォルトの名無しさん
2006/01/27(金) 15:08:44NGキーワードに指定しろ
0026デフォルトの名無しさん
2006/01/27(金) 15:10:070027デフォルトの名無しさん
2006/01/27(金) 15:10:41ザッ ;;''';;';'';';';;;'';;'';;;
;;'';';';;'';;';'';';';;;'';;'';;;
vymyvwymyvymyvy ザッ
ザッ MVvvMvyvMVvvMvyvMVvv、
Λ_ヘ^−^Λ_ヘ^−^Λ_ヘ^Λ_ヘ
ザッ ヘ__Λ ヘ__Λ ヘ__Λ ヘ__Λ
__,/ヽ_ /ヽ__,.ヘ /ヽ__,.ヘ _,.ヘ ,.ヘ ザッ
/\___/ヽ /\___ /\___/ヽ _/ヽ /\___/ヽ
/'''''' '''''':::::::\/'''''' '''/'''''' '''''':::::::\ /'''''' '''''':::::::\
. |(●), 、(●)、.:|(●), |(●), 、(●)、.:|、( |(●), 、(●)、.:|
| ,,ノ(、_, )ヽ、,, .::::| ,,ノ(、_, )| ,,ノ(、_, )ヽ、,, .::::|_, )| ,,ノ(、_, )ヽ、,, .::::|
. | `-=ニ=- ' .:::::::| `-=ニ= | `-=ニ=- ' .:::::::|ニ=| `-=ニ=- ' .:::::::|
\ `ニニ´ .:::::/\ `ニニ \ `ニニ´ .:::::/ニ´ \ `ニニ´ .:::::/
/`ー‐--‐‐―´\ /`ー‐- /`ー‐--‐‐―´\-‐‐ /`ー‐--‐‐―´
「VIPからきますた」「VIPからきますた」「VIPからきますた」「VIPからきますた」
0028デフォルトの名無しさん
2006/01/27(金) 15:14:23VIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIP
VIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIP
VIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIP
VIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIPVIP
0029デフォルトの名無しさん
2006/01/27(金) 15:15:30ザッ ;;''';;';'';';';;;'';;'';;;
;;'';';';;'';;';'';';';;;'';;'';;;
vymyvwymyvymyvy ザッ
ザッ MVvvMvyvMVvvMvyvMVvv、
Λ_ヘ^−^Λ_ヘ^−^Λ_ヘ^Λ_ヘ
ザッ ヘ__Λ ヘ__Λ ヘ__Λ ヘ__Λ
__,/ヽ_ /ヽ__,.ヘ /ヽ__,.ヘ _,.ヘ ,.ヘ ザッ
/\___/ヽ /\___ /\___/ヽ _/ヽ /\___/ヽ
/'''''' '''''':::::::\/'''''' '''/'''''' '''''':::::::\ /'''''' '''''':::::::\
. |(●), 、(●)、.:|(●), |(●), 、(●)、.:|、( |(●), 、(●)、.:|
| ,,ノ(、_, )ヽ、,, .::::| ,,ノ(、_, )| ,,ノ(、_, )ヽ、,, .::::|_, )| ,,ノ(、_, )ヽ、,, .::::|
. | `-=ニ=- ' .:::::::| `-=ニ= | `-=ニ=- ' .:::::::|ニ=| `-=ニ=- ' .:::::::|
\ `ニニ´ .:::::/\ `ニニ \ `ニニ´ .:::::/ニ´ \ `ニニ´ .:::::/
/`ー‐--‐‐―´\ /`ー‐- /`ー‐--‐‐―´\-‐‐ /`ー‐--‐‐―´
「VIPからきますた」「VIPからきますた」「VIPからきますた」「VIPからきますた」
0030デフォルトの名無しさん
2006/01/27(金) 15:16:41なんかすげぇ面倒だな。
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/1555.c
0031デフォルトの名無しさん
2006/01/27(金) 15:17:407はCなら俺に聞けすれでも聞いてたマルチ野郎だぞ
テンプレぐらい守れってんだ
0032vipper
2006/01/27(金) 15:19:230033デフォルトの名無しさん
2006/01/27(金) 15:19:31何を教えても無駄な気がするのだが。
0034デフォルトの名無しさん
2006/01/27(金) 15:20:57003530
2006/01/27(金) 15:28:01というわけでless_wchar_tとmainを修正
int less_wchar_t(wchar_t lhs, wchar_t rhs)
{
int i, len;
static int is_first = 1;
static char temp[] = "0123456789";
static wchar_t table[100];
if (is_first) {
is_first = 0;
len = mbstowcs(table, temp, sizeof(temp)) + 1;
}
for (i = 0; i < len; i++) {
if (table[i] == lhs)
return table[i] != rhs;
if (table[i] == rhs)
return 0;
}
return 0;
}
003630
2006/01/27(金) 15:28:38{
char table[] = "64381";
wchar_t work[100];
int len;
setlocale(LC_ALL, "");
mbstowcs(work, table, sizeof(work)/sizeof(work[0]) - 1);
printf("before :%ls\n", work);
bubble_sort(work, wcslen(work));
printf("after :%ls\n", work);
return 0;
}
0037デフォルトの名無しさん
2006/01/27(金) 15:29:510038デフォルトの名無しさん
2006/01/27(金) 15:32:44>>10じゃ駄目なのか?
0039デフォルトの名無しさん
2006/01/27(金) 15:34:080040デフォルトの名無しさん
2006/01/27(金) 15:43:17駄目だろ。バブルソートの関数を使ってないんだから。
0041デフォルトの名無しさん
2006/01/27(金) 15:48:160042デフォルトの名無しさん
2006/01/27(金) 15:52:47VIPはおかしなことをする奴は多いけど礼節知らずが多いとは違うんだぞ。
0043デフォルトの名無しさん
2006/01/27(金) 15:58:23#include <stdio.h>
#include <stdlib.h>
void swap(int* lhs, int* rhs)
{
int old = *lhs;
*lhs = *rhs;
*rhs = old;
}
int bubble_sort(const void* lhs, const void* rhs)
{ return *(int*)lhs - *(int*)rhs; }
int main(void)
{
int i;
int n[] = { 6, 4, 3, 8, 1 };
for (i = 0; i < sizeof(n) / sizeof(n[0]); ++i) {
swap(&n[i], n + rand() % (sizeof(n) / sizeof(n[0])));
}
qsort(n, sizeof(n) / sizeof(n[0]), sizeof(int), &bubble_sort);
for (i = 0; i < sizeof(n) / sizeof(n[0]); ++i) {
printf("%d ", n[i]);
}
return 0;
}
0044デフォルトの名無しさん
2006/01/27(金) 15:58:39あんたにとっては葬式中に屁をブッブこきながら笑うのも礼儀知らずのうちに入らないんだろうね。
0045デフォルトの名無しさん
2006/01/27(金) 16:01:370046デフォルトの名無しさん
2006/01/27(金) 16:22:33「俺たちVIPPERは凄いことやってる」とか息巻いてるカス共ww
0047デフォルトの名無しさん
2006/01/27(金) 16:24:050048デフォルトの名無しさん
2006/01/27(金) 16:25:47や め れ
0049デフォルトの名無しさん
2006/01/27(金) 16:28:080050デフォルトの名無しさん
2006/01/27(金) 16:28:200051デフォルトの名無しさん
2006/01/27(金) 16:30:40>>44
や
>>11
みたいなのをヤメレってことだ
0052デフォルトの名無しさん
2006/01/27(金) 16:32:08× VIPの悪口書くとVIPPERの内お調子者の連中がくるから
○ VIPの悪口書くと屑VIPPER共の最底辺の連中がくるから
0053デフォルトの名無しさん
2006/01/27(金) 16:32:55お前が一番煽ってるという事を自覚してないようだな
0054デフォルトの名無しさん
2006/01/27(金) 16:39:24熱くなるな バグ作り込むぞ
0055デフォルトの名無しさん
2006/01/27(金) 16:57:22私は27歳のOLしてるのぉ〜〜〜っ♪(#^ω^#)ブーン
うーんとー、私メル友がすっごくすっごく欲しくってー、\( ^ω^ )/ブーン
探してたら( ^ω^ )なんσ( ^ω^ )とっ!☆彡(ノ^ω^)ノ☆彡ヘ(^ω^ヘ)☆彡(ノ^ω^)ノ☆彡
素敵(^ω^;ブーン!な掲示板♪を発見!!!!( ^ω^)//""" パチパチパチブーン
あやしい所(^ω^;ブーン!とか…{{ (^ω^;) }} ブルブルブーンすごい数の掲示板がありますけど、
これ全部1人の方が管理して ∩
てなわけで、ついついσ( ^ω^ ) | | /⌒',ノ ̄ ̄`ヽ、―ニ メキメキメキメキッ!!!!
メル友に、なってσ( ^ω^ )くれる ヽ(^ω/ ´`ヽ _ 三,:三ー三,:
え?くれないのぉ〜?(;^ω^ )そんノ .ノヽ--/ ̄ , ` ` ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
なってくれなかったら、( ^ω^)乂(^( }. ...| /!
☆○(^ω^)o ぱ〜んちブーン、☆(\ }、ー‐し'ゝL _
( ^ω^ ) いてっ!ダメ!! ゛o(^ω^*)o\_jr--‐‐'´} ;ーー------------------------------
素敵(^ω^;ブーン!な掲示板♪ブ━`ヾ---‐'ーr‐'"==!!!( ^ω^)//""" パチパチパチブーン
( ^ω^ )きゃ〜〜(^ω^;)やられた〜〜(o^ω^)o ドテッブーン ブ━━(^ω^;)━━ン!
( ^ω^ )←気絶中。。。。・゜゜・o( ^ω^ )o・゜゜・。うぇぇん <( ^ω^;)>ノォオオオオオ!!ブーン
なあんて(#^ω^#)こんな♪(#^ω^#)キャハブーン 私っ!σ( ^ω^ )だけど、(///^ω^///)
お友達σ( ^ω^ )になってm( ^ω^ )mくださいませませブーン♪(^ω^'*)フフブーン
ということで。(^ω^)vじゃあね〜〜〜ブーン♪( ^ω^ )/~~ ほんじゃo(^ω^ヽ)(/^ω^)o レッツブーン♪
それでは、今から他の掲示(^ω^;ブーン!板も色々見てきまーすC= C= C= C=┌(^ω^)┘ブーン
(*^ω^*)ノ~~マタネー☆'.・*.・:★'.・*.・:☆'.・*.・:★
0056デフォルトの名無しさん
2006/01/27(金) 16:58:40#include <stdio.h>
void swap(int *a, int *b)
{
int tmp;
tmp=*a;
*a=*b;
*b=tmp;
}
void bubble_sort(int *num, int num_size)
{
int i,j;
for (i=0 ; i<num_size ; i++)
for (j=num_size-1 ; j>i ; j--)
if (num[j-1] > num[j])
swap(&num[j-1], &num[j]);
}
int main()
{
int num[]={6,4,3,8,1};
int i, num_size;
num_size=sizeof(num)/sizeof(int);
bubble_sort(num, num_size);
for (i=0 ; i<num_size ; i++)
printf("%d\n", num[i]);
return 0;
}
0057デフォルトの名無しさん
2006/01/27(金) 17:57:20及び最大値、最小値を求めて表示するプログラムを作れ。
ヒント: for(i=0;i<10;i++){ printf("a[%d]=??";i); scanf("%lf",&a[i]);}
でa[0],a[1],...,a[9] を入力!!
(次に) saidai=a[0];
そのあと、計算の為にforループを作るが、
(ループの中で) if (a[i]>saidai) saidai=a[i];
は何を表わすか?きっと最大値を求めるプログラム関連だろう。
しくみがわかれば最小値も同様にわかる。
[1] 授業単元: プログラミング
[2] 問題文(含コード&リンク):
[3] 環境
[3.1] OS: Windows Me
[3.2] すいません、わかりません
[3.3] 言語: C
[4] 期限: [2006年01月30日まで]
[5] その他の制限:特にありません。
これがわかりません、教えてください
0058デフォルトの名無しさん
2006/01/27(金) 18:07:37#include<stdio.h>
int main(void){
double a[10],sum=0.0,saidai,saisyo,c;
int i;
for(i=0;i<10;i++){
scanf("%lf",&a[i]);
sum += a[i];
}
saidai = a[0];
for(i=1;i<10;i++)
if(a[i]>saidai)
saidai = a[i];
saisyo = a[0];
for(i=1;i<10;i++)
if(a[i]<saisyo)
saisyo = a[i];
printf("合計:%f\n平均:%f\n最大:%f\n最小:%f\n",sum,sum/10.0,saidai,saisyo);
return 0;
}
0059デフォルトの名無しさん
2006/01/27(金) 18:10:10void main(void)
{
int i;
double a[10];
double saidai, saishou, goukei=0, heikin;
for(i=0;i<10;i++) {
printf("a[%d]=??";i);
scanf("%lf",&a[i]);
}
saidai= saishou = a[0];
for(i=0;i<10;i++) {
goukei += a[i];
if(a[i]>saidai) saidai=a[i];
if(a[i]<saishou) saishou=a[i];
}
heikin = goukei / 10;
printf("%lf, %lf, %lf, %lf\n", saidai, saishou, goukei, heikin);
return;
}
出題者の意向にできるだけ忠実にしたつもり。
変数はダサく、初心者っぽくw
0060デフォルトの名無しさん
2006/01/27(金) 18:11:21#define NUM 10
#include <stdio.h>
int main()
{
float num[NUM],max,min,avg,sum=0;
int i;
for (i=0 ; i<NUM ; i++)
scanf("%f", &num[i]);
for (i=0 ; i<NUM ; i++)
sum+=num[i];
avg=sum/NUM;
max=num[0];
for (i=1 ; i<NUM ; i++)
if (num[i]>max)
max=num[i];
min=num[0];
for (i=1 ; i<NUM ; i++)
if (num[i]<min)
min=num[i];
for (i=0 ; i<NUM ; i++)
printf("%fd\n", num[i]);
printf("\nmax:%f\nmin:%f\navg%f\nsum:%f\n", max, min, avg, sum);
return 0;
}
0061デフォルトの名無しさん
2006/01/27(金) 18:13:18goukei = saidai= saishou = a[0];
for(i=1;i<10;i++) {
goukei += a[i];
if(a[i]>saidai) saidai=a[i];
if(a[i]<saishou) saishou=a[i];
}
<二修正ダ>
0062デフォルトの名無しさん
2006/01/27(金) 18:13:59double average = 0;
for(int i=0;i<10;i++) average += lpArr[i]/10;
ってのはだめかな
0063デフォルトの名無しさん
2006/01/27(金) 18:14:30saidai= saishou = a[0];
これは何か初心者っぽくないw
0064デフォルトの名無しさん
2006/01/27(金) 18:30:48そんな小手先の修正でなんとかなるようなオーバーフローならどんなやり方でやっても構わんよ。
実際に現れるオーバーフローを気にしなきゃいかん場合ってのは、そんなのが全然通用しないくらいにヤバくなる。
0065デフォルトの名無しさん
2006/01/27(金) 18:33:43+=もだめだなw
0066デフォルトの名無しさん
2006/01/27(金) 18:33:57[2] 問題文(含コード&リンク):
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/1556.txt
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/1557.txt
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/1558.txt
[3] 環境
[3.1] OS: Linux
[3.2] コンパイラ名とバージョン: gcc
[3.3] 言語: C
[4] 期限: 2006/01/30
[5] その他の制限:
1558.txtは自分で一応やってみたものですが、3+4みたいな簡単なモノならできますが
3+4*5みたいになると結果がおかしくなってしまいます。
正しく動くように修正してもらえないでしょうか
0067デフォルトの名無しさん
2006/01/27(金) 18:36:460068デフォルトの名無しさん
2006/01/27(金) 18:36:52長すぎて読む気が起きん.一から作ったほうが早そう.
0069デフォルトの名無しさん
2006/01/27(金) 18:39:080070デフォルトの名無しさん
2006/01/27(金) 19:00:290071デフォルトの名無しさん
2006/01/27(金) 19:03:57http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/1559.c
結局読む気が起きなかったので,読まずに書いた.いくらかやって動作確認はしたけど合ってる自信は無いよ.
0072デフォルトの名無しさん
2006/01/27(金) 19:09:15回答したくなかったら黙殺でいいじゃないか
0074デフォルトの名無しさん
2006/01/27(金) 19:16:17読まずに書いたってあるから1から書いたかと思ってしまったよ。すまない
0075デフォルトの名無しさん
2006/01/27(金) 19:38:22ありがとうございます
感謝します
0076デフォルトの名無しさん
2006/01/27(金) 19:40:53[2] 問題文(含コード&リンク): 10人の名前、年齢、電話番号の入ったファイルを作り、それを読み出すプログラムを作れ。
そのとき、ファイル名は画面上で自由に設定でき、ファイルの拡張子はdatとなるようにせよ。
また、ファイル名が8文字を越えると、入力したファイル名は無効となり、再度ファイル名の入力を要請できるようにせよ。
問題上のファイルに新たに1人のデータを追加するためのプログラムを作れ。
[3] 環境
[3.1] OS:Windows
[3.2] コンパイラ名とバージョン: すいませんわかりません
[3.3] 言語:C
[4] 期限:2006年1月30日まで
[5] その他の制限: 初心者なので、あまり難しくないものでお願いします。
前スレで質問の意味がわからないと言われてしまい、答えがもらえませんでした・・・
すみませんがお願いします。
0077デフォルトの名無しさん
2006/01/27(金) 19:42:28問題文が抽象的過ぎる
そんな抽象的な奴はBasicでもやってろ
0078デフォルトの名無しさん
2006/01/27(金) 19:42:41追記でいいのか上書きなのか
0079デフォルトの名無しさん
2006/01/27(金) 19:48:11また、ファイル名が8文字を越えると、入力したファイル名は無効となり、再度ファイル名の入力を要請できるようにせよ。
はしょってるが、
scanf("%s", filename);
fp = fopen(filename, "r");
while ((c = fgetc(fp)) != EOF) putchar(c);
問題上のファイルに新たに1人のデータを追加するためのプログラムを作れ。
scanf("%s", filename);
getchar();
fgets(buf, sizeof(buf), stdin);
fp = fopen(filename, "a");
fputs(buf, fp);
0080デフォルトの名無しさん
2006/01/27(金) 19:49:27適当つか文句言っても直さん
#include<stdio.h>
#include<string.h>
int main(void){
FILE *fp;
char str[256],filename[256];
while(1){
printf("ファイル名>");
gets(str);
if(strlen(str)<9)break;
puts("ファイル名は8文字までです");
}
sprintf(filename,"%s.dat",str);
if((fp=fopen(filename,"r"))==NULL){
puts("ファイル読み込みエラー");
return 1;
}
while(fgets(str,256,fp)!=NULL)
printf("%s",str);
fp = fopen(filename,"a");
printf("\n( ´ー`)y−~~で、用件は?>");
gets(str);
fprintf(fp,"\n%s",str);
return 0;
}
0081デフォルトの名無しさん
2006/01/27(金) 19:52:57[2]
文字列の○文字目から○文字目までを抜き出して返す関数を作成しなさい
例
対象 □□□□△△△△□□□□
↓
5文字目から8文字目まで
↓
結果 △△△△
文字列の○文字目から○文字目までを削除して返す関数を作成しなさい
例
対象 □□□□△△△△□□□□
↓
5文字目から8文字目まで
↓
結果 □□□□□□□□
[3] 環境
[3.1] OS: WindowsXP
[3.2] VC.net
[3.3] 言語:C言語
[4] 期限:2006年01月30日13:00まで
[5] その他の制限:制限等は全くありません。お願いします。
0082デフォルトの名無しさん
2006/01/27(金) 19:56:53文字とは全角半角混合か?
0083デフォルトの名無しさん
2006/01/27(金) 20:00:10基本的に半角で1文字扱い
全角で2文字扱いだそうです
0084デフォルトの名無しさん
2006/01/27(金) 20:00:32>>82でした
0085デフォルトの名無しさん
2006/01/27(金) 20:02:05[2] 問題文(含コード&リンク):x軸とy軸からなる平面状の座標(x,y)を表す構造体point()
を定義せよ。次に、xとyを引数にとり、座標を示す関数define_point()、および
座標を示す構造体を引数にとり、これを座標出力に"(x,y)"の形式で出力する関数put_point()を
定義せよ。また、これらの関数を用いて、座標p1=(1,2),p2=(5,4),p3=(-2,3)を定義し、標準出力に以下のように
出力するプログラムを作成せよ。
$./test01
p1=(1,2)
p2=(5,4)
p3=(-2,3)
[3] 環境
[3.1] OS: (Windows/Linux/等々):Unix
[3.2] コンパイラ名とバージョン: gcc
[3.3] 言語: C言語
[4] 期限: 1月28日PM5:00
[5] その他の制限: 特別なライブラリなどは使わず、#includeは<stdio.h>のみ
でプログラムしていただけると幸いです。よろしくお願いします。
0086デフォルトの名無しさん
2006/01/27(金) 20:02:220087デフォルトの名無しさん
2006/01/27(金) 20:04:05char* fanc(char *str,int a,int b){
char *c;
int i;
c = malloc(b-a+2);
for(i=0;i<b-a+1;i++)
c[i] = str[i+a-1];
c[b-a+1] = '\0';
return c;
}
0088デフォルトの名無しさん
2006/01/27(金) 20:04:12void f(int i, int j, char *s, char *t) {
int k;
for (k = 1; *t = *s; ++k, ++s)
if (i <= k && k <= j) ++t;
*t = '\0';
}
void g(int i, int j, char *s, char *t) {
int k;
for (k = 1; *t = *s; ++k, ++s)
if (!(i <= k && k <= j)) ++t;
*t = '\0';
}
main() {
char s[] = "ooooxxxxoooo";
char t[100], u[100];
f(5,8,s,t);
g(5,8,s,u);
printf("%s %s %s\n", s, t, u);
}
0089デフォルトの名無しさん
2006/01/27(金) 20:05:40>>81
マルチバイト文字シラネ。文字列の範囲外の数字を指定されたときもシラネ
#include<string.h>
char*slice_string(const char*string,int begin,int end,char*dst){
memcpy(dst,string+begin,end-begin);
dst[end-begin]='\0';
return dst;
}
char*remove_string(const char*string,int begin,int end,char*dst){
memcpy(dst,string,begin);
strcpy(dst+begin,string+end);
return dst;
}
int main(){
char buf[80];/*加工した文字列を入れる*/
puts(slice_string("Hello World",2,5,buf));/* 2 .. 5 を抜き出す*/
puts(remove_string("Hello World",2,5,buf));/* 2 .. 5 を削除*/
}
0090デフォルトの名無しさん
2006/01/27(金) 20:07:49全角については、getchを用いて入力する時に判定しています。
全半角関係無しの文字数を持つ文字列を個人的に用意して、
○文字目が△であれば全角、□であれば半角といった具合です。
判定した時に全角であれば二文字分消すことになります。
0091デフォルトの名無しさん
2006/01/27(金) 20:09:490092デフォルトの名無しさん
2006/01/27(金) 20:10:11じゃあ全角半角判定の関数頂戴
0093デフォルトの名無しさん
2006/01/27(金) 20:17:13/* 残念ながら構造体名の期待に添えなかった */
struct point { int x, y; };
struct point define_point(int x, int y) {
struct point p; p.x = x; p.y = y; return p;
}
void put_point(struct point p) {
printf("(%d,%d)", p.x, p.y);
}
main() {
struct point p1, p2, p3;
p1 = define_point(1,2);
p2 = define_point(5,4);
p3 = define_point(-2,3);
put_point(p1); printf("\n");
put_point(p2); printf("\n");
put_point(p3); printf("\n");
}
0094デフォルトの名無しさん
2006/01/27(金) 20:21:12default://通常の文字の扱い
if (i > 128){
vx[b] = 'f';//全角一文字追加
b++;//全角区別無しに1文字加えた扱い
s[z] = putch(i);
z++;
}else {
vx[b] = 'h';
b++;
s[z] = putch(i);
z++;//一文字分打ち込んだことにする
}
iはgetchを入れている整数型で
zは全角を二文字扱いした時の文字数を数える整数型
bは全角を一文字扱いした時の文字数を数える整数型
sが一番基本となる文字列で、vxが前半角判定用の文字列
if (strcmp("vx[b]", "f") == 0) {
putch(i);
}
putch(i);
b--;
z--;
0095デフォルトの名無しさん
2006/01/27(金) 20:24:42009681 ◆s6s7GdUxgI
2006/01/27(金) 20:34:32申し訳ありません。ご迷惑おかけしました
>>89様の関数で問題は解決しました
ちなみに>>90と>>94は自分ではありません
getchは動作に難があるので使用しておりません(鳥つけておくべきでした)
>>87様、>>88様、>>89様をはじめとしたスレ住人の皆様方のご尽力、本当に感謝いたします
有難う御座いました
0098デフォルトの名無しさん
2006/01/27(金) 22:40:570099デフォルトの名無しさん
2006/01/27(金) 22:41:510100デフォルトの名無しさん
2006/01/27(金) 23:51:55[2] 問題文(含コード&リンク):
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/1561.txt
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/1562.txt
[3] 環境
[3.1] OS: Windows
[3.2] コンパイラ名とバージョン: gcc
[3.3] 言語: C
[4] 期限: 1/30
お願いします!
0101デフォルトの名無しさん
2006/01/27(金) 23:55:11きっと他の人がやってくれる
■ このスレッドは過去ログ倉庫に格納されています