: 제가 어떤파일을 만들다가~~~~
: 숫자형식을 예로
: 555555fakdjfhajksf
:
: 544444aldkfjlasdkfjkladfj
:
: 533333djfhasdjkfl;kadjf
:
: 522222dfadjkflasf
:
: 511111dfkhasdlfk
: 대충이렇게 해놨다고 그러고
: 숫자를 잘못적어서 위에 있는숫자모두~~~~~
: 555555 , 5444444 , 5333333 , 522222, 511111
: 각 숫자들에게 1000정도 각각 더해줘야 한다면 어떻게 해야 해요~~~!!!>>>
: 알려주세요!~~~~~급합니다!!!!!!!!
: 행이 너무많아서 봐꾸다가는 3일밤낮세도 다못할것 같애요~~~~
:
: --
: inhye is iiaby
문제(?) 의 뜻을 잘 모르겠는데 제가 이해한게 맞다면
atoi() 함수를 상용하십시요.
아시겠지만 atoi 함수는 (char *) 형에서 int 변환가능 한 부분까지만
int 로 바꾸므로
대충 이렇게 되겠죠..
/*****************************/
int main() {
FILE *fs, *fs2;
char buf[256], *p, buf2[256];
int n;
fs = fopen("problem_file","r");
fs2 = fopen("result_file","w");
while( fgets(buf,256,fs)) {
n = atoi(buf); /* 숫자 부분만 int 형으로 변환 */
n += 1000;
for( p = buf; isdigit(*p); p++ );
sprintf(buf2,"%d%s",n,p);
fprintf(fs2,"%s",buf);
}
fclose(fs);
fclose(fs2);
}
/*********************/
단 위 플그램(?)은 숫자가 먼저오고 문자가나중에 오는 경우에
쓸 수 있고 문자가 먼저오기도 한다면
isalpha(), isdigit() 같은 함수로 문자,숫자가려 낼 수 있습니다.
위에 걸로 안되면 문제를 자세히 적어서 멜 보내세요.
간단한 프로그램이니까 시간나면 만들어 드릴께요.--즐거운 주말 되세요~~