C语言

2021-03-29(自定义函数 数组)

2021-03-30  本文已影响0人  张轻舟

自定义函数

int function()
{
printf("**************************\n");
printf("Hello World!\n");
printf("**************************\n");
}
int main(){
      function();
return 0;
}

n!的阶乘

#include<stdio.h>
double fun(int n)
{
    int i;
    double res=1;
    for(i=2; i<=n; ++i)
        res = res * i;
        printf("%lf",res);
        return res;
}
int main()
    {   int a;
        scanf("%d",&a);
        fun(a);
    
        return 0;
    }

//函数设计原则:高内聚,低耦合
内聚:对于一个函数,模块而言,一个函数功能集中,就一种功能
//低耦合:函数和函数间联系尽力少
百度文科:高内聚低耦合,是[软件工程]中的概念,是判断软件设计好坏的标准,主要用于程序的[面向对象]的设计,主要看类的内聚性是否高,[耦合度]是否低。目的是使程序模块的可重用性、移植性大大增强。通常程序结构中各模块的内聚程度越高,模块间的耦合程度就越低。内聚是从功能角度来度量模块内的联系,一个好的内聚模块应当恰好做一件事,它描述的是模块内的功能联系;耦合是软件结构中各模块之间相互连接的一种[度量],耦合强弱取决于模块间接口的复杂程度、进入或访问一个模块的点以及通过接口的数据。


局部变量和全局变量

int fun(int N)//形参
//作用域和生命周期


(整型)局部变量未初始化就是垃圾值,全局变量未初始化是0
(字符型)


写两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果两个整数由键盘输入。


#include<stdio.h>
int fun1(int m,int n);    //这要声明两个函数。也可以像下面那样写
int fun2(int m,int n); 
int main()
{
    int m,n;
    scanf("%d%d",&m,&n);    //输入两个数 m n
    printf("%d %d",fun1(m,n),fun2(m,n));//是一个输出直接调用fun1,//第二个调用fun2.
    return 0;
}
int fun1(int m,int n)
{
    int s;
    while(n!=0)//注意判断的是n是否为0,不为0则不做while语句,
    {
        s=m%n;
        m=n;
        n=s;
    }
    return m;//返回的是m的值,m为最大公约数
}
int fun2(int m,int n)
{
    int a;
    a=fun1(m,n);//把最大公约数的值赋给 a 
    return m*n/a;//输出求的是最小公倍数,把两数相乘再除以最大公约数就得出答案
}

写一个判断素数的函数,在主函数输入一个整数,输出是否是素数的消息。


#include <stdio.h>
int fun1(int num,int a)
{   int i;
    scanf("%d",&num);
    for(i=2;i<num;i++)
    {
        if(num%i==0){
            a++;  
        }
    }
    if(a==0){
        printf("prime\n", num);
    }else{
        printf("not prime\n", num);
    }
    return 0;
}
int main(){
    int c=0;  
    int d=0; 
    fun1(c,d);
    return 0;
   
}

数组

int arry[100];//[]内是长度
int a[100]=[1,2,3,4,5];
//a[0].a[1]....a[99]
char b[200]={"hello world"}
for(i=0;i<100,i++)
{
a[i]=i;
}
printf("%d",a[i];)
printf("%s",b[i]);


数组名即代表首元素的地址

上一篇 下一篇

猜你喜欢

热点阅读