C/C++の宿題を片付ケます 60代目

このエントリーをはてなブックマークに追加
795デフォルトの名無しさん
>>787 この程度自分でやれよ。やれないなら単位もらおうとするなよ。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define N 3
#define M 20 /* 1単語の文字数限界+1 */
int main(void)
{
char str[N][M], tmp[M];
int i, j, length;
for( i = 0 ; i < N ; i++ ) {
printf("Word? "); /* まずは入力 */
fgets(i, M-1, stdin); length = strlen(str[i]);
if( str[i][length - 1] == '\n' ) str[i][--length] = '\0';
/* 並べ替え。挿入ソート風バブルソート? */
for( j = i ; j > 0 && str[j][0] < str[j - 1][0] ; j-- ) {
strcpy(tmp, str[j]); strcpy(str[j], str[j - 1]); strcpy(str[j - 1], tmp);
}
}
for( i = 0 ; i < N ; i++ ) { /* 出力 */
if( i ) printf(" %s", str[i]); /* 先頭以外は前にスペースを入れる */
else printf("%s", str[i]); /* 先頭の場合はスペースを入れない */
free(str[i]);
}
puts("");
return 0;
}
796デフォルトの名無しさん:2006/02/14(火) 13:50:20
>>795
氏ね
797デフォルトの名無しさん:2006/02/14(火) 13:54:47
('A`)マンドクセ
798マンコクセ:2006/02/14(火) 15:05:03
>>795
普通にエラーがデバスター

p4.c:12: 警告: 引数 1 個の `fgets' を渡しますにより、キャストなしで整数からポインタを作りました
799デフォルトの名無しさん:2006/02/14(火) 15:07:57
>>795
free(str[i]);


とりあえず自分のうんこも寝て食えないような奴は寝てろ
んで食え