C++语言程序设计 C++语言程序设计 第四章 数组及自定义数据类型 C++语言程序设计.

Slides:



Advertisements
Similar presentations
1 第二讲 C++ 编程基础. 2 主要内容 C++ 语言概述 C++ 编程基础 数据的简单输入输出 C++ 的发展 C++ 源程序结构与书写规范 C++ 编译器和集成开发环境.
Advertisements

C++语言程序设计教程 第5章 构造数据类型 第6章 C++程序的结构.
程序设计实习 3月份练习解答
第一章 C语言概述 计算机公共教学部.
第5章 指 针 教学目标: 掌握指针定义、初始化方法和基本运算; 掌握利用指针访问一维数组、二维数组的方法;
第4章 数组 数组是由一定数目的同类元素顺序排列而成的结构类型数据 一个数组在内存占有一片连续的存储区域 数组名是存储空间的首地址
第八章 类和对象.
C++程序设计 王希 图书馆三楼办公室.
C语言程序设计 课程 第5章 数组 主讲:李祥 博士、副教授 单位:软件学院软件工程系.
struct 可以在同一個名稱下擁有多種資料型態。使用struct能讓資料的存取和處理更為靈活。
資料大樓 --談指標與陣列 綠園.
第四章 在 C# 中实现 OOP 概念.
函數(一) 自訂函數、遞迴函數 綠園.
东北林业大学 陈宇 ACM程序设计 东北林业大学 陈宇
补充内容 结构体 概述 定义结构体类型和定义结构体变量 结构体变量的引用 结构体变量的初始化 指针与结构体 用typedef定义类型的别名.
C++语言程序设计 C++语言程序设计 第六章 指针和引用 第十一组 C++语言程序设计.
新世纪计算机专业系列教材 数据结构 C++实现 第一章 缪淮扣 顾训穰 沈 俊 编著 科 学 出 版 社.
C++语言程序设计 C++语言程序设计 第四章 数组及自定义数据类型 C++语言程序设计.
授课老师:龚涛 信息科学与技术学院 2018年3月 教材: 《Visual C++程序员成长攻略》 《C++ Builder程序员成长攻略》
Object-Oriented Programming in C++ 第一章 C++的初步知识
2 C++ 的基本語法和使用環境 親自撰寫和執行程式是學好程式語言的不二法門。本章藉由兩個簡單的程式,介紹C++ 程式的基本結構和開發環境,讓初學者能逐漸建立使用C++ 的信心。
程式撰寫流程.
计算机网络讲义 第5章 批量数据处理—数组 一维数组 排序和查找 二维数组 字符串.
第3讲 C++程序控制结构 3.1 顺序结构 3.2 分支结构 3.3 循环结构 3.4 转向控制 3.5 综合案例分析.
C++程序设计 string(字符串类) vector(容器类).
第13章 输入输出流 王雪晶.
C++语言程序设计 第二章 C++简单程序设计.
程序的三种基本结构 if条件分支语句 switch多路开关语句 循环语句 循环嵌套 break,continue和goto语句
第13章 结构体的应用 13.1 了解由用户构造的数据类型 13.2 结构体类型说明及结构体变量 13.3 结构体数组
3 數學運算 3.1 鍵盤輸入 輸入函數cin 多重輸入cin 輸出格式化 3-3
C++语言程序设计 第十一章 流类库与输入/输出.
C++语言程序设计 C++语言程序设计 第六章 指针和引用 第十一组 C++语言程序设计.
切換Dev c++顯示語言 工具->環境選項(V)->介面->language (Chinese TW)
第2章 C++流程控制语句 if 语句 switch语句 for语句 while语句 do - while语句 break语句
第4讲 C++程序控制结构(二) 4.1 循环结构 4.2 转向控制 4.3 综合案例分析.
C++大学基础教程 第5章 数组 北京科技大学 信息基础科学系.
C++ 程式設計 基礎篇 張啟中 Chang Chi-Chung.
C++大学基础教程 第3章 C++控制语句 北京科技大学 信息基础科学系.
Name1..hour //加班時數 name2..hour //請假時數
第二章 基本数据类型及运算 C数据类型概述 基本数据类型 运算符和表达式 混合运算与类型转换 数据的输入输出 顺序程序设计举例.
C++语言程序设计 C++语言程序设计 第五章 函数 第十一组 C++语言程序设计.
C++语言程序设计 C++语言程序设计 第七章 类与对象 第十一组 C++语言程序设计.
C++语言程序设计 C++语言程序设计 第九章 类的特殊成员 第十一组 C++语言程序设计.
C++语言程序设计 C++语言程序设计 第三章 控制语句 第十一组 C++语言程序设计.
C++语言程序设计 C++语言程序设计 第九章 类的特殊成员 第十一组 C++语言程序设计.
物件導向程式設計 CH2.
第11章 從C到C++語言 11-1 C++語言的基礎 11-2 C++語言的資料型態與運算子 11-3 C++語言的輸出與輸入
C++语言程序设计 C++语言程序设计 第八章 继承 C++语言程序设计.
<编程达人入门课程> 本节内容 为什么要使用变量? 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ:
C++程式設計入門 變數與運算子 作者:黃建庭.
資料結構簡介 綠園.
第二章 类型、对象、运算符和表达式.
第二讲 基本数据类 型及数组等 此为封面页,需列出课程编码、课程名称和课程开发室名称。
C/C++基礎程式設計班 C++: 物件的使用、參考、重載函式 講師:林業峻 CSIE, NTU 3/28, 2015.
隨機數 (亂數) 10後,取餘數 n = rand(); 利用 Code::Block 驗證一下 n = rand() %10; 998
复杂度和测试数据 吴章昊.
#include <iostream.h>
C++语言程序设计 C++语言程序设计 第八章 继承 C++语言程序设计.
C++语言程序设计 C++语言程序设计 第二章 基本数据类型与表达式 第十一组 C++语言程序设计.
C++语言程序设计 第十章 C++标准模板库 成都信息工程学院计算机系.
C++语言程序设计 C++语言程序设计 第十章 多态 第十一组 C++语言程序设计.
C++语言程序设计 C++语言程序设计 第九章 类的特殊成员 第十一组 C++语言程序设计.
《数据结构与算法设计》第一部分 面向对象的C++程序设计基础.
C++语言程序设计 C++语言程序设计 第十一章 异常处理 C++语言程序设计.
變數與資料型態  綠園.
資料!你家住哪裏? --談指標 綠園.
函式庫補充資料 1.
隨機函數.
C++语言程序设计 C++语言程序设计 第二章 基本数据类型与表达式 第十一组 C++语言程序设计.
Presentation transcript:

C++语言程序设计 C++语言程序设计 第四章 数组及自定义数据类型 C++语言程序设计

“ 目录 C++语言程序设计 基本知识 编程技能 刨根问底 字符数组输入输出 数组 字符数组与字符串 多维数组在内存中的映像 枚举类型 枚举类型内存空间 结构类型内存空间 数组 枚举类型 结构类型 联合类型 字符数组与字符串 多维数组 冒泡排序 结构数组 C++语言程序设计

编程技能 b C++语言程序设计

(一)字符数组与字符串 C++语言程序设计 #include <iostream> using namespace std; 从键盘输入一行或多行字符串,用字符数组存储,并统计所输入的字符串中26个字母出现的次数。 #include <iostream> using namespace std; void main() { //数组及变量定义; const int N = 80; char buffer[N]; int k =0; const int NUM = 26; int counts[NUM] = {0}; char letters[NUM]; int i = 0; do //循环输入每一行字符 { cout<<"enter a string:\n"; cin.getline(buffer, N,'\n'); //获得一行输入字符串 C++语言程序设计

(一)字符数组与字符串 C++语言程序设计 k = 0; //对于输入的每一行字符,统计字符出现的次数 从键盘输入一行或多行字符串,用字符数组存储,并统计所输入的字符串中26个字母出现的次数。 k = 0; //对于输入的每一行字符,统计字符出现的次数 while (buffer[k] != '\0') { i =tolower( buffer[k]) - 'a'; counts[i]++; k++; //counts[tolower( buffer[k++]) - 'a']++; //用此行可代替前三句 } } while (buffer[0]!='\0'); cout<<"the statistics result:"<<endl; for (i=0; i<NUM; i++) //输出统计结果 letters[i] = (char)('a'+i); if (counts[i]>0) cout<<letters[i]<<": "<<counts[i]<<endl; C++语言程序设计

(二)多维数组 C++语言程序设计 #include <iostream> #include <ctime> 编程实现矩阵转置功能,矩阵行数为M,列数为N,用二维数组表示矩阵。 #include <iostream> #include <ctime> #include <iomanip> using namespace std; void main() { const int M = 5; const int N = 6; int matrix[M][N]; //矩阵 int tMatrix[N][M]; //转置矩阵 srand((unsigned int) time(NULL)); int i, j; C++语言程序设计

(二)多维数组 C++语言程序设计 cout<<"matrix:"<<endl; 编程实现矩阵转置功能,矩阵行数为M,列数为N,用二维数组表示矩阵。 cout<<"matrix:"<<endl; for (i=0; i<M; i++) //生成矩阵 { for (j=0; j<N; j++) matrix[i][j] = rand()%100; //给数组元素赋值 cout<<setw(4)<<matrix[i][j]<<" "; } cout<<endl; cout<<"transpose of matrix:"<<endl; for (i=0; i<N; i++) //得到转置矩阵 { for (j=0; j<M; j++) tMatrix[i][j] = matrix[j][i]; //给数组元素赋值 cout<<setw(4)<<tMatrix[i][j]<<" "; } cout<<endl; C++语言程序设计

(二)多维数组 C++语言程序设计 #include <iostream> #include <iomanip> 编程实现计算两个N阶方阵乘积矩阵的功能,矩阵元素为整形,N=5。 #include <iostream> #include <iomanip> #include <ctime> using namespace std; void main() { const int N = 5; int a[N][N], b[N][N]; //两个相乘的矩阵 int c[N][N]={0}; //乘积矩阵 int i, j, k; srand((unsigned int)time(NULL)); //生成矩阵a和b for(i=0; i<N; i++) //行循环 { for(j=0; j<N; j++) //列循环 a[i][j] = rand() % 100; b[i][j] = rand() % 100; } C++语言程序设计

(二)多维数组 C++语言程序设计 编程实现计算两个N阶方阵乘积矩阵的功能,矩阵元素为整形,N=5。 //计算乘积矩阵c,并显示 for(i=0; i<N; i++) { for(j=0; j<N; j++) for( k=0; k<N; k++) //求c的一个元素 c[i][j] += a[i][k] * b[k][j]; } cout<<"matrix c:"<<endl; cout<<setw(10)<<c[i][j]; cout<<endl; //显示矩阵a,再显示矩阵b cout<<"matrix a:"<<endl; for(i=0; i<N; i++) { for(j=0; j<N; j++) cout<<setw(5)<<a[i][j]; } cout<<endl; cout<<"matrix b:"<<endl; cout<<setw(5)<<b[i][j]; C++语言程序设计

(三)冒泡排序 C++语言程序设计 用冒泡排序法对整型数组中的元素按照从小到大进行排序 for (int pass = 1; pass < arraySize; pass++) for (i = 0; i < arraySize – 1 - pass; i++) if (a[i] > a[i + 1]) { hold = a[i]; a[i] = a[i + 1]; a[i + 1] = hold; } #include <iostream> #include <iomanip> using namespace std; int main() { const int arraySize = 10; int a[arraySize] = { 6, 2, 10, 4, 8, 12, 89, 68, 45, 37 }; int i, hold; cout<<"Data items in original order\n"; for (i = 0; i <arraySize; i++) cout<<setw(4)<<a[i]; C++语言程序设计

(三)冒泡排序 C++语言程序设计 用冒泡排序法对整型数组中的元素按照从小到大进行排序 cout<<"\nData items in ascending order\n"; for (i = 0; i < arraySize; i++) cout<<setw(4)<<a[i]; cout<<endl; return 0; } C++语言程序设计

(四)结构数组 C++语言程序设计 公司有六个员工,把他们按工资由低到高排序。 void main() { Employee temp; #include <iostream> using namespace std; struct Employee { char name[20]; unsigned long id; float salary; }; Employee allone[6]={ {"zhang", 12345, 3390.0}, {"wang", 13916, 4490.0}, {"zhou", 27519, 3110.0}, {"meng", 42876, 6230.0}, {"yang", 23987, 4000.0}, {"chen", 12335, 5110.0} void main() { Employee temp; for(int i=1; i<6; i++) //排序 { for(int j=0; j<=5-i; j++) //一轮比较 { if(allone[j].salary > allone[j+1].salary) { temp=allone[j]; //结构变量的交换 allone[j]=allone[j+1]; allone[j+1]=temp; } for(int k=0; k<6; k++) //输出 cout <<allone[k].name<<" " <<allone[k].id<<" " <<allone[k].salary<<endl; C++语言程序设计