自定义函数
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]);
数组名即代表首元素的地址
网友评论