고전 면접 문제의 귀속 호출 몇 가지 고전 예시
2040 단어 차례로 돌아가다
1、 1-100
#include <iostream>
int fun(int n, int &sum)
{
n && fun(n - 1, sum);
return (sum += n);
}
int main()
{
int sum = 0;
int n = 100;
printf("1+2+3+...+n=%d
", fun(n, sum));
return 0;
system("pause");
}
2. 구산수열 1, 2, 3, 5...스무 번째 수의 값
#include<iostream>
using namespace std;
int fun(int n)
{
if(n == 1 || n == 2)
return 1;
return (fun(n-1) + fun(n-2));
}
int main()
{
int num = 20;
printf("num=%d
", fun(num));
system("pause");
return 0;
}
3. 폴더 크기 구하기
#include <stdio.h>
#include <dirent.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <errno.h>
#include <stdlib.h>
#include <string.h>
static int
mc_get_stat(char *filename, struct stat *stbuf)
{
return stat(filename, stbuf); /* */
}
/* , */
static blkcnt_t
mc_do_du(char *filename, int *len)
{
DIR *dp;
char name[256];
struct dirent *p;
blkcnt_t n;
struct stat stbuf;
n = 0;
if(mc_get_stat(filename, &stbuf) == -1){
fprintf(stderr, "%s cannot access
", filename);
return n;
}
if(S_ISDIR(stbuf.st_mode)){
dp = opendir(filename);
while(p = readdir(dp)){
if(!strcmp(".", p->d_name) || !strcmp("..", p->d_name))
continue;
else{ /* 255 */
strcpy(name, filename);
strcat(name, "/");
strcat(name, p->d_name);
n = mc_do_du(name, len);
}
}
closedir(dp);
}
return *len += stbuf.st_size;
}
int main()
{
int len =0, len1=0;
len1 = mc_do_du("/usr/local/bin/qq", &len);
printf("len1 =%d, len=%d
", len1, len);
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
java 백엔드에서 데이터를 트리로 변환하고 맵은 json 트리를 생성하여 백엔드로 되돌려줍니다. (백엔드 변환)java 백엔드, 데이터를 트리로 변환하고,map는 json 트리를 생성하여 전방으로 되돌려줍니다(백엔드 변환) 1. 왜 이런 블로그를 쓰나요? 2.java 백엔드 코드 3. 전환된 데이터는 다음과 유사한 형식으로 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.