数组
一维数组
定义:类型符 数组名 [常量表达式] int a[]={1,2,3,4,5,};
#include<stdio.h>
#define NUM 6
void main()
{
int a[NUM];
printf("输入NUM个整数:\n");
for(int i=;i<NUM;i++)
{
scanf("%d",&a[i]);
} for(i=;i<NUM;i++)
{
for(int j=;j<NUM-i;j++)
{
if(a[j]<a[j+])
{
int t=a[j];
a[j]=a[j+];
a[j+]=t;
}
}
}
for(i=;i<NUM;i++)
{
printf("%d ",a[i]);
}
printf("\n");
}
二维数组
定义:类型说明符 数组名 [常量表达式] [常量表达式] int a[3][4]={{1},{4,2}};
字符数组
char c[]=”china”;
输出 Puts(字符数组) 输入 Gets(字符数组)
连接 stract(字符数组1, 字符数组2)
复制 strcpy(字符数组1, 字符串2) strnpy(字符数组1, 字符串2,n)
比较 strcmp(字符串1, 字符串2)
测长 strlen(字符数组)
函数
函数:定义、声明、调用(在以下的实例中均有体现)
函数递归
猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,就只剩一个桃子了。求第一天共摘多少桃子。
#include <stdio.h>
Int tao(int n)
{
Int c;
If(n==) C=;
Else c=(tao(n-)+)*;
Return(c);
}
Void main()
{
Int z;
Z=tao();
Printf(“%d\n”,z);
}
数组做参数
选择法对数组中10个数由小到大排序
#include <stdio.h>
void sort(int b[],int n)
{
int i,j,k,t;
for(i=;i<n-;i++)
{
k=i;
for(j=i+;j<n;j++)
{
if(b[i]<b[k])
k=j;
t=b[k];b[k]=b[i];b[i]=t;
}
}
}
int main ()
{
int a[],I;
for(i=;i<;i++)
scanf(“%d”,&a[i]);
sort(a,);
for(i=;i<;i++)
printf(“%d”,a[i]);
printf(“\n”);
}
其它
自动变量(auto) 寄存器变量(register)
静态局部变量(static)
内部函数 static类型名 函数名(形参表) static int fun (int a,int b)
外部函数 extern int fun (int a,int b)