C/C++の宿題を片付けます 74代目
■ このスレッドは過去ログ倉庫に格納されています
0085デフォルトの名無しさん
2006/09/26(火) 18:56:16標準関数使ってるから、関数の意味はググって調べてくれい。
#include <stdio.h>
#define ZERO_POINT 9
#define LENMAX 80
/* 中略 */
int* s;
s = malloc(n * sizeof(int));
/* ここで先のプログラム流用して、s[i]にそれぞれ累計が保存されてるとおもいねえ */
/* +1 -1 +1 +1 +1 という結果だったら s[0]=1, s[1]=0, s[2]=1, s[3]=2, s[4]=3となる感じでひとつ */
{
int i;
char exstr[LEXMAX+1];
char blankstr[]=" ";
for(i=0; i!=n; i++){
if(i==0){
/* <-------> ここのながさ、ZERO_POINT=9文字分
puts(" 0 0 0");
puts(" 0 0---------|-------------------");
puts(" 0 0 *");
continue;
}
strcpy(exstr, "");
strncpy(exstr, blankstr, ZERO_POINT + s[i]);
strcat(exstr, "*");
printf("%3d %+3d%s\n", i+1, s[i], exstr);
}
free(s);
}
■ このスレッドは過去ログ倉庫に格納されています