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, 参数 ...
随机推荐
- zabbix监控 linux/windows 主机tcp连接状态
更新内容:1).增加了对windows主机的tcp连接状态的监控2).修改linux主机的监控配置,使linux与windwos主机能够使用相同的模板tcp的连接状态对于监控服务器,尤其是Web服务器 ...
- 附加进程找不到w3wp.exe进程解决方案
在进程列表的下面,有个show processes in all sessions(显示所有用户的进程(U)),把它勾上就能看到了 ,就是这么简单.
- Windows 下的内存泄漏检测方法
在 Windows 下,可使用 Visual C++ 的 C Runtime Library(CRT) 检测内存泄漏. 首先,我们在.c或.cpp 文件首行插入这一段代码: #define _CRTD ...
- [BZOJ 3441]乌鸦喝水
3441: 乌鸦喝水 Time Limit: 20 Sec Memory Limit: 128 MBSubmit: 374 Solved: 148[Submit][Status][Discuss] ...
- 对volatile不具有原子性的理解
在阅读多线程书籍的时候,对volatile的原子性产生了疑问,问题类似于这篇文章所阐述的那样.经过一番思考给出自己的理解. 我们知道对于可见性,Java提供了volatile关键字来保证可见性.有序性 ...
- 001Java输入、eclipse快捷键
内容:Java实现键盘输入,eclipse常用快捷键 ######################################################################### ...
- 怎么在Linux环境下通过VS Code调试Python 3+?
今天突然想写一写Python了,于是就开始弄.使用源码包安装好Python3.6.6之后,发现Linux下只能通过python3来调用python 3.6.6.如果直接使用python的话,调用的是系 ...
- virtualbox+vagrant学习-5-Boxes-1-简介
Boxes boxes是vagrant环境的包格式.在vagrant支持的任何平台上,任何人都可以使用一个box来创建一个相同的工作环境.vagrant box实用程序提供了管理boxes的所有功能. ...
- USDT/BTC/ETC/HT的解释
USDT 泰达币 泰达币(USDT)是Tether公司推出的基于稳定价值货币美元(USD)的代币Tether USD(下称USDT),1USDT=1美元,用户可以随时使用USDT与USD进行1:1兑换 ...
- pyhton 自动化pymysql操作mysqldb数据库增删改查封装
# coding=utf-8 import pymysql import os import configparser """ /* @:param: python ve ...