初学者C语言练习题-函数

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

二、函数

一个C程序有且只有一个主函数即main函数。

  • C程序就是执行主函数里的代码也可以说这个主函数就是C语言中的唯一入口
  • 而main前面的int就是主函数的类型.
  • printf()是格式输出函数这里就记住它的功能就是在屏幕上输出指定的信息
  • return是函数的返回值根据函数类型的不同返回的值也是不同的。
  • \n是转义字符中的换行符。(注意C程序一定是从主函数开始执行的)

1、有三座塔ABC开始时A上有n 个盘子大小不等大在上小在下要将盘子从A移到C座每此只能移一个输入盘子的数量输出移动的步骤利用递归完成

#include "stdio.h"
int move(char x,char y){
    printf("%c to %c\n", x, y);
}int hanoi(int n,char a,char b,char c){
    if(n==1) move(a,c);
        else 
       {
        hanoi(n-1,a,c,b);
                    move(a,c);
                     hanoi(n-1,b,a,c);
    }
   	return 0;
}
int main(){int n,count;
	scanf("%d", &n);
    count=hanoi(n,'A','B','C');
	return 0;
}

2、求取斐波那契数列的第n项

#include <stdio.h>int fibo(int t){
 if(t==1) return 0;
else if(t==2) return 1;
 else return fibo(t-1)+fibo(t-2);
}int main(){
	int n,s;
   scanf("%d", &n);
    s=fibo(n);
	printf("%d", s);
	return 0;
}

3、利用递归函数求n!

#include <stdio.h>
int fun(int n){
    if(n<0) return 0;
    else if(n==0||n==1)
    return 1;
    else return (n*fun(n-1));
}
int main({
	int n;
    scanf("%d", &n);
    printf("%d", fun(n));
	return 0;
}

4、输入正整数转化为二进制输出

#include<stdio.h>
void dectobin(int n);int main(){
    int n;
    scanf("%d",&n);
    dectobin(n);
    return 0; 
void dectobin(int n)
{
    int i=0,a[32];
    while(n>0)
    {
        a[i]=n%2;
        i++;
        n=n/2;
    }
    for(i--;i>=0;i--)
    printf("%d",a[i]);
}

5、返回number逆序数

#include<stdio.h>int reverse(int n)
{
    int i,m=0;
        while(n/10!=0)
         {
 i=n%10;
 n=n/10 m=m*10+i;
    }
       if(n!=0)
    {
m=m*10+n;
}
   return m;
}int main(){
    int n;
	scanf("%d",&n);
	printf("%d",reverse(n));
return 0;
}

6、给定俩个正整数m,n求最小公约数

#include "stdio.h"
int fun(int m,int n)
{
    int r;
    if(m==n) return m;
    else 
    while((r=m%n)!=0)
    {
        m=n;
        n=r;
    }
    return n;
}
int main()
{
    int m,n,i;
    scanf("%d %d",&m,&n);
    i=fun(m,n);
    printf("%d",i);
    return 0;
}
阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6