C语言之数组和函数
数组
一维数组
定义:类型符 数组名 [常量表达式] 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)
C语言之数组和函数的更多相关文章
- C语言中数组做函数参数的问题
数组做函数参数,会退化成为一个指针变量.因此在进行数组参数传递的同时,需要传递一个数组长度的参数变量. 数组长度可以通过sizeof(arr)/siezof(arr[0])来得到.关于这个sizeof ...
- Ubuntu的多文件编译以及c语言的数组、函数
闲言少叙,直接切入主题. 一.Linux下的多文件编译(Ubuntu系统). 对于小程序来说,往往一个.c文件就足够了,里面包含了各种主函数和功能函数,以及函数的声明等等.但是这样的弊端主要有两点,一 ...
- 【C语言】数组名作函数参数,完成数据的升序排列
#include<stdio.h> void sort(int x[],int n); int main() { ] = { ,,,,,,,,, },i; sort(arr, ); pri ...
- C语言数组和函数实例练习(一)
C语言的数组和函数部分的知识,在语法上和Java语法是有所相似的,这里只通过实例总结一些自己感觉需要理解的部分知识. 1.数组 数组中的元素具有相同的数据类型:数组一旦创建,不能被改变:数组中元素在内 ...
- C语言中如何将二维数组作为函数的参数传递
今天写程序的时候要用到二维数组作参数传给一个函数,我发现将二维数组作参数进行传递还不是想象得那么简单里,但是最后我也解决了遇到的问题,所以这篇文章主要介绍如何处理二维数组当作参数传递的情况,希望大家不 ...
- C语言 数组做函数参数退化为指针的技术推演
//数组做函数参数退化为指针的技术推演 #include<stdio.h> #include<stdlib.h> #include<string.h> //一维数组 ...
- iOS开发环境C语言基础 数组 函数
1 求数组元素的最大值 1.1 问题 创建程序,实现查询数组中最大值的功能,需求为:创建一个长度为10的数组,数组内放置10个0~99之间(包含0,包含99)的随机数作为数组内容,要求查询出数组中的最 ...
- 小学生都看得懂的C语言入门(3): 数组与函数
#include <stdio.h> int main() { int x; ; ; scanf("%d",&x){ sum+=x; cnt++; scanf( ...
- 第二十三节:Java语言基础-详细讲解函数与数组
函数 函数在Java中称为方法,在其他语言中可能称为函数,函数,方法就是定义在类中具有特定功能的程序.函数,在Java中可称为方法. 函数的格式: 修饰符 返回值类型 函数名(参数类型 参数1, 参数 ...
随机推荐
- Python学习---面向对象的学习[基础]
面向对象 面向对象的三大特性是指:封装.继承和多态. 说明: Python可以函数式编程,也可以面向对象编程 l 面向过程:根据业务逻辑从上到下写垒代码 l 函数式 :将某功能代码封装到函数中,日后便 ...
- 安装kubernetes 环境
master: 10.6.2.170 #master节点兼做仓库 node-1: 10.6.2.171 node-2: 10.6.2.172 1.添加host解析 # cat << ...
- TCP/IP 协议图
- Vmstat主要关注哪些数据?
除特殊情况外,一般关注飘红部分 任务的信息(procs) r(running) 在internal时间段里,运行队列中的进程数,即表示正在运行或者正在等待CPU时间的进程数,如果这个参数值超过服务器上 ...
- linux性能系列--cpu
一.先看看什么是CPU? 回答:中央处理器(Central Processing Unit)的缩写,即CPU,CPU是电脑中的核心配件,只有火柴盒那么大,几十张纸那么厚,但它却是一台计算机的运算核心和 ...
- linux 根据端口号查看占用进程的pid
1.netstat -nap | grep 端口号 2.第一种的可以查看端口号对应的pid,但是会出现pid为空的情况,这种时候用:lsof -i:端口号 3.根据pid查看端口号 netstat - ...
- BZOJ1048:[HAOI2007]分割矩阵(记忆化搜索DP)
Description 将一个a*b的数字矩阵进行如下分割:将原矩阵沿某一条直线分割成两个矩阵,再将生成的两个矩阵继续如此分割(当然也可以只分割其中的一个), 这样分割了(n-1)次后,原矩阵被分割成 ...
- 2763. [JLOI2011]飞行路线【分层图最短路】
Description Alice和Bob现在要乘飞机旅行,他们选择了一家相对便宜的航空公司.该航空公司一共在n个城市设有业务,设这些城市分别标记为0到n-1,一共有m种航线,每种航线连接两个城市,并 ...
- java反序列化Commons-Collections5分析
BadAttributeValueException package org.lain.poc; import org.apache.commons.collections.Transformer; ...
- javascript学习2
上次我们了解到 JavaScript提供了一组以window为核心的对象,实现了对浏览器窗口的访问控制.JavaScript中定义了6种重要的对象: window对象 表示浏览器中打开的窗 ...