简单的函数调用
#include <stdio.h>
#include <stdlib.h>
void printfwz() //定义一个 无参数函数 函数就是一个功能 ,过程的封装
{
printf("函数调用");
}
int main(int argc, char *argv[]) {
printfwz();
return 0;
}
//函数不能放在main 函数 后面 ,就不能调用 ,只能在main 函数上边
函数 调用 和创建一个 头文件 *.h 文件
再在main 函数调用
main.c “Untitled2.h”
行参 实参
#include <stdio.h>
#include <stdlib.h>
#include "Untitled2.h"
//形式参数
void printfsc(int a,char b) //可以定义多个
{
printf("%d\n%c\n",a,b);
}
int main(int argc, char *argv[]) {
//实参
printfsc(6,'a');
return 0;
}
返回值
main 主文件
#include <stdio.h>
#include <stdlib.h>
#include "Untitled2.h"
int main(int argc, char *argv[]) {
int na = add(10,20);
printf("%d",na);
return 0;
}
头文件
#include <stdio.h>
#include <stdlib.h>
int add(int a, int b)
{
int c = a + b;
return c;
}
递归
——- 简而言之 函数自己调用自己
#include <stdio.h>
#include <stdlib.h>
#include "Untitled2.h"
//全局变量
count = 0;
void printf01(int a)
{
printf("%d\n",a);
if(count<50) //不用全局 变量就用a
{
// 这里可以使用全局变量来计数 不能使用局部变量
count++;
printf01(++a); //不能使用a++ 不然会一直是初始数 ,因为先输出 不会计算
}
}
int main(int argc, char *argv[]) {
printf01(0);
return 0;
}
—————————————————————————————————————————————————————————————————————————————————————————————————————————-
数组
C 语言支持数组数据结构,它可以存储一个固定大小的相同类型元素的顺序集合。数组是用来存储一系列数据,但它往往被认为是一系列相同类型的变量。
#include <stdio.h>
#include <stdlib.h>
#include "Untitled2.h"
int main(int argc, char *argv[]) {
// 几种定义数组的格式
int a[]={123456789};
int c[10]={1,2,3,4,5,6,7};
char b[10]={'a','b','c','d','e','f','j'};
printf("%c\n",b[5]);
printf("%d\n",a[5]);
printf("%d\n",c[5]);
return 0;
}
------------------------------------------------------------------------------------------------------------------------------------------------------------------
#include <stdio.h>
#include <stdlib.h>
#include "Untitled2.h"
int main(int argc, char *argv[]) {
int a[20];
int b,c;
//初始化数组元素
for (b=0;b<20;b++)
{
//设置元素b 为 b+1
a[b]=b+2;
}
//输出数组中每个元素的值
for (c=0;c<20;c++)
{
printf("Element[%d]=%d\n",c,a[c]);
}
return 0;
}
二维数组
二维数组在逻辑上是方正 ,行和列组成,
type name[size1][size2]…[sizeN];
但是列可以决定行
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[]) {
char a[5][2]={'a','b','c','d','e','f','j','h','i','j'};
int i,j;
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
{
printf("英文-%c-\n",a[i][j]);
}
}
return 0;
}
------------------------------------------------------------------------------------------------------
这个更简
#include<stdio.h>
int main(){
int i;
char names[6][50]={"马超","关平","赵云","张飞","关羽","刘备"};
for(i=0;i<6;i++) {
printf("悍将:%s\n",names[i]);
}
return 0;
}