IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> C语言 第六周知识点随记 -> 正文阅读

[C++知识库]C语言 第六周知识点随记

1. 数组

int number[100];? ? ? ? 数组里可以放100个大小的int

scanf("%d",&number[i]);

#include<stdio.h>
int main()
{
	int number[100];
	int x;
	int cnt = 0;
	double sum;
	
	scanf("%d", &x);
	
	while (x!=-1) {
		number[cnt] = x;
		sum += x;
		cnt++;
		scanf("%d", &x);
	}
	
	printf("%f\n", sum/cnt);
	
	int i;

	for(i=0; i<cnt; i++) {
		if (number[i] > sum/cnt) {
			printf("%d", number[i]);
		}
	}
	
	return 0;
 } 

定义数组

  • <类型>变量名称[元素数量];
    • int grades[100];
    • double weight[20];
  • 元素数量必须是整数;

数组

  • 是一种容器,特点是:
    • 其中所有的元素具有相同的数据类型;
    • 一旦创建,不能改变大小
    • *(数组的中的元素在内存中是连续依次排列的)

int a[10]

  • 一个int的数组
  • 10个单元:a[0], a[1], a[2],…,a[9]
  • 每个单元就是一个int类型的变量
  • 可以出现在赋值的左边或者右边:
    • a[2] = a[1]+6;
  • *在赋值左边的叫做左值

数组的单元

  • 数组的每个单元就是数组类型的一个变量
  • 使用数组时放在[]中的数字叫做下标或索引,下标从0开始计数:
    • grades[0]
    • grades[99]
    • grades[5]

有效的下标范围

  • 编译器和运行环境都不会检查数组下标是否越界,无论是对数组单元做读还是写
  • 一旦程序运行,月结的数组访问可能造成问题,导致程序崩溃
    • segmentation fault
  • 但是也可能运气好,没造成严重的后果
  • 所以这是程序员的责任来保证程序只是用有效的下标值:[0,数组的大小-1]

?练习

#include<stdio.h>
int main()
{
	int const number = 10;    //数组大小 
	int count[10];    //定义数组
	int x;
	int i;
	

//初始化数组

	for (i=0; i<number; i++){
		count[i]=0;
	}
	
	scanf("%d",&x);
	
	while(x!=-1){
		if (x>=0 && x<=9){
			count[x]++;    //数组参与运算
		}
		scanf("%d",&x);
	}
	
//遍历数组输出

	for (i=0; i<number; i++){
		printf("%d:%d\n", i, count[i]);
	}
	
	return 0;
}

通常来说,用到数组的程序都需要以下几个环节:

  • 确定数组大小
  • 定义数组
  • 初始化数组
  • 数组参与运算
  • 遍历数组输出

2. 函数

  • 函数是一块代码,接受0个或者多个参数,做一件事情,并返回0个或一个值。
  • 可以先想象成数学中的函数:y=f(x)

函数的定义

void sum(int begin, int end)
{
?? ?int i;
?? ?int sum = 0;
?? ?for (i=begin; i<==end; i++) {
?? ??? ?sum += i;
?? ?}
?? ?printf("%d到%d的和是%d\n", begin, end, sum);

?调用函数

  • 函数名(参数值);
  • ()起到了表示函数调用的重要作用
    • 即使没有参数也要()
  • 如果有参数,则需要给出正确的数量和顺序
  • 这些值会被按照顺序一次用来初始化函数中的参数

sum(1, 10);

sum(20, 30);

sum(35, 45);

执行sum(1, 10)时

  • begin = 1
  • end =10

调试,进入函数的时候要点“单步进入”。

return

  • return停止函数的执行,并送回一个值
  • return;
  • return 表达式;

没有返回值的函数

  • void函数名(参数表)
  • 不能使用带值的return
    • 可以没有return
  • 调用的时候不能做返回值得赋值

函数先后关系

  • C的编译器自上而下顺序分析你的代码
  • 函数头,以分号“;”结尾,就构成了函数的原型
  • 函数原型的目的是告诉编译器这个函数长什么样
    • 名称
    • 参数(数量及类型)
    • 返回类型
  • 旧标准习惯吧函数原型写在调用它的函数里面
  • 现在一般写在调用它的函数前面
  • 函数的原型可以不写上参数的明自(a/b)

?

?

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2022-09-21 00:08:17  更:2022-09-21 00:09:56 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/19 12:42:06-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码