c언어 네이버 풀이 중첩 for문을 사용해서 3을 입력하면
언어/c언어2019. 5. 6. 14:39
# include <stdio.h>
# include <stdlib.h>
# include <string.h>
# define LENGTH 200
typedef struct Num {
char numList[LENGTH];
int n;
}Num, *ptrNum;
ptrNum retNode();
void init(Num**);
void writeNumber(Num**);
void testPrintf(Num**);
void resultPrintf(Num**);
int main(void) {
ptrNum pnode = retNode();
if (pnode == NULL) { exit(1); }
// 데이터 초기화
init(&pnode);
// 데이터 입력
writeNumber(&pnode);
// 테스트 출력
//testPrintf(&pnode);
// 결과 출력
resultPrintf(&pnode);
free(pnode);
return 0;
}
ptrNum retNode() {
ptrNum pnode = NULL;
pnode = (ptrNum)malloc(sizeof(Num));
return pnode;
} // end of retNode function
void init(Num** param) {
strcpy_s((*param)->numList, LENGTH ,"\0");
(*param)->n = 0x0;
} // end of init function
void writeNumber(Num** param) {
int num = 0;
int j = 0;
int i;
scanf_s("%d", &(*param)->n);
for (i = (*param)->n; i >= 1; i--, j++) {
*((*param)->numList + j) = i + '0';
}
*((*param)->numList + j) = '\0';
} // end of writeNumber function
void testPrintf(Num** param) {
printf("%s\n", (*param)->numList);
} // end of testPrintf function
void resultPrintf(Num** param) {
int i, j;
for (i = 0; i < (*param)->n; i++) {
for (j = 0; j <= i; j++) {
printf("%c", *((*param)->numList + j));
}
printf("\n");
}
} // end of resultPrintf function
'언어 > c언어' 카테고리의 다른 글
c언어 linkedlist (0) | 2019.12.31 |
---|---|
네이버 풀이 (0) | 2019.05.18 |
네이버 풀이 (0) | 2018.12.01 |
네이버 문제 풀이 - 최대공약수 (0) | 2018.11.28 |
네이버 지식이 풀이 (0) | 2018.11.28 |