首页 > 代码库 > 2017-03-06

2017-03-06

1.用递归法将一个整数n转换成字符串。例如,输入483,应输出字符串“483”。n的位数不确定,可以是任意的整数。

#include <stdio.h>
void zifu(int n);
int main()
{
    int n;
    printf("请输入数字n\n");
    scanf("%d",&n);
    zifu(n);
    printf("%c",n);
    return 0;
}
void zifu(int n)
{
    int a;
    char b;
    if(n!=0)
    {
        zifu(n/10);
        a=n%10;
        b=a+0;
        printf("%c",b);
    }
}

技术分享

总结:1.在调用一个函数过程中又出现直接或间接的调用函数自身称为函数的递归调用。

2.递归的两个条件(1)回推公式:将大规模问题转化成小规模问题 (2)边界条件:就是递归的终止条件

3.这道题主要把函数的调用和算法弄懂 输入一个数在自定义函数里通过函数公式一直调用自己本身直到为零为止 再将各数字依次输出

 

2.用递归法写出1+2+3+·······+99+100的程序。

#include <stdio.h>
int leijia(int n);
int main()
{
    int a; 
    a=leijia(100);
    printf("%d",a);
    return 0;
}
int leijia(int n)
{
    if(n==1)
    return 1;
    else
    return n+leijia(n-1);
}

技术分享

3.用指针改写交换两个数

#include <stdio.h>
void jiaohuan(int *m,int *n);
int main()
{
    int m,n;
    printf("请输入两个数m和n\n");
    scanf("%d%d",&m,&n);
    jiaohuan(&m,&n);
    printf("%d %d",m,n);
    return 0;
}
void jiaohuan(int *m,int *n)
{
    int temp;
    temp=*m;
    *m=*n;
    *n=temp;
}

技术分享

总结:1.指针就是变量的地址  指针变量存储是变量的地址  指针变量量的存储空间中存放的是一个地址

2.*指针变量=初始地址值

3.

技术分享

4.

int ia;

int *pi;

ia=100;

pi=&ia;      //&ia的计算结果为变量ia的地址      对&后面的变量进行取地址运算

 

5.指针变量只能指向定义时所规定类型的变量

2017-03-06