문제
100이하의 정수 N을 입력받은 후 공백이 포함된 N행의 문장을 입력받아서 역순으로 출력하는 프로그램을 작성하시오.
각 문장의 길이는 100이하이다.
* 표준입출력방식으로 작성하세요.
| 입력 예3 I love korea. My name is chulgi. I'm happy. | 출력 예I'm happy. My name is chulgi. I love korea. |
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
int len, n;
char* arrs[100];
char buf[100], x[5];
char* tmp;
fgets(x, 5, stdin);
n = atoi(x);
for (int i = 0; i < n; i++)
{
fgets(buf, 100, stdin);
len = strlen(buf);
tmp = (char*)malloc(sizeof(char) * (len + 1));
strcpy(tmp, buf);
arrs[i] = tmp;
}
for (int i = n - 1; i >= 0; i--)
{
fprintf(stdout, "%s", arrs[i]);
}
return 0;
}
형들 여기서 atoi를 굳이 쓴 이유가 뭐야? 그냥 x를 int형으로 받아도 될 거 ㅅ같은데 ㅠ
그리고 for문 tmp 값 초기화하는 부분부터 for문 끝까지 무슨 소린지 설명좀 해줘 ㅠㅜㅠ
해당 댓글은 삭제되었습니다.
atoi는 문자열을 숫자로 바꾸는 함수래 함수는 어떤 식으로 만들면 되지?? 대충 힌트만 주세여 형님
이 문제에서 원하는 게 fscanf랑 fprintf 쓰는 거야
형님이 써준 함수를 그냥 fprintf랑 fscanf 써도 되나?
응 맞아 내가 알기론 그렇지
아니다 다르게 풀어볼게 형 내가 올린 글좀 봐줘 링크 줄게
https://gall.dcinside.com/board/view/?id=programming&no=1747257&page=1
지짜
한번만 봐조잉
간단한 거야 나좀짱인듯 이걸 이렇게 푸네