/*#include <stdio.h>
int f(int n)
{
int sum=0;
while(n!=0)
{
sum=sum+n%10;
n=n/10;
}
return sum;
}
int main()
{
int n;
scanf("%d",&n);
while(n>=10)
{
n=f(n);
}
printf("%d",n);
}*/
/*
재귀
1. 종료조건 2. 재귀호출
f(n) : 1부터 n까지 출력
1부터 n-1까지 출력 -> n출력
f(n-1) -> n출력
f(3) f(2) printf("3");
f(2) f(1) printf("2");
f(1) f(0) printf("1");
f(0) (f(-1) printf("0");) if(n==0) return ;
#include <stdio.h>
int rec(int n)
{
if(n==0)
{
return 0;
}
return rec(n-1)+n;
}
int main()
{
int n,sum=0;
scanf("%d",&n);
printf("%d",rec(n));
}*/
/*#include <stdio.h>
void star(int n)
{
if(n==0)
{
return ;
}
printf("*");
star(n-1);
}
void rec(int n)
{
if(n==0)
{
return;
}
rec(n-1);
star(n);
printf("\n");
}
int main()
{
int n;
scanf("%d",&n);
rec(n);
}*/
/*
#include <stdio.h>
void rec(int n)
{
if(n==1||n==0)
{
return;
}
if(n%2==0)
{
rec(n/2);
printf("0");
}
else
{
rec(n/2);
printf("1");
}
}
int main()
{
int n;
scanf("%d",&n);
if(n==0)
{
printf("0");
}
else
{
printf("1");
rec(n);
}
}
call by reference (주소 값 전달)
call by value (값 전달)
#include <stdio.h>
//void f(int a)
//{
// a=a+10;
//}
//int 정수 저장
//int* 정수주소 저장
void f(int* pa)
{
//printf("%d",*pa);// (pa번지에 저장된 값 )
*pa=*pa+10;
}
int main()
{
int a = 10;
printf("%d\n",a);
f(&a); // a변수의 값을 10 증가시키는 함수
printf("%d",a);
}
#include <stdio.h>
void myswap(int* pa, int* pb)
{
//*pa 간접 참조 연산자
int x;
if(*pa>*pb)
{
x=*pa;
*pa=*pb;
*pb=x;
}
}
main()
{
int a,b;
scanf("%d%d", &a, &b);
myswap(&a, &b);
printf("%d %d", a, b);
//직접참조
}
*/
// 실수 두개를 입력받고
//두 실수를 10씩 곱한 값으로 바꾸기
/*
#include <stdio.h>
void myswap(float* pa, float* pb)
{
*pa=*pa*10;
*pb=*pb*10;
}
void main()
{
float a,b;
scanf("%f %f", &a, &b);
myswap(&a, &b);
printf("%.1f %.1f", a, b);
// 2.5 3.0
// 25.0 30.0
}
*/
/*#include <stdio.h>*/
/*
void f(char* p)
{
for(int i=0;p[i]!=0;i++)
{
printf("%c",*(p+i));
}
//p[i] *(p+i)
//&p[i] p+i
}
char* f(char* p)
{
return p+2; // &p[2]
}
int main()
{
char str[50]={};
scanf("%s",str);
//f(str); //f(&str[0]);
printf("%s\n",str);
printf("%s",f(str));
//scanf("%s",&str[1]);
//배열의 이름은 배열의 첫번째원소의 주소
// str == &str[0]
//printf("%c%c%c%c",str[0],str[1],str[2],str[3]);
//printf("%s",str);
}
#include <stdio.h>
char *mysubstr(char*str, int start, int count)
{
str[start+count]=NULL;
return str+start;
}
int main()
{
int start,count;
char str[101]={};
scanf("%s",str);
scanf("%d %d",&start,&count);
printf("%s",mysubstr(str,start,count));
}
*/



