东南大学何洁月C++课件:面向对象编程基础

需积分: 9 2 下载量 24 浏览量 更新于2024-08-19 收藏 4.34MB PPT 举报
"何洁月的C++课件,东南大学,主要内容涉及C++语言和面向对象编程,包括Array类的应用,程序设计基础,C++语言的各个关键概念和功能" 在"Array类的应用-何洁月C++课件 东南大学"这个主题中,我们聚焦于C++编程语言中的Array类的使用以及面向对象编程的基本概念。Array类是C++标准库中的一个部分,它提供了一种高效的方式来处理固定大小的元素序列,这在处理线性群体数据时非常实用。例如,课程中的"例9.2"要求求出2到N之间的所有质数,这是一个常见的算法问题,可以通过直接访问数组元素来解决,N的值则在程序运行时通过用户输入获取。 课程的目标是帮助学生建立计算机程序设计的基础,掌握C++语言的语法和面向对象编程思想。课程内容分为多个章节,涵盖了从基础到进阶的主题: 1. 第1章概述 - 引导学生了解计算机程序设计语言的发展,面向对象方法的基本概念,软件开发过程以及信息的表示和存储。 2. 第2章C++简单程序设计 - 介绍C++语言的基础,包括基本数据类型、表达式、输入/输出操作、控制结构和自定义数据类型。 3. 第3章函数 - 深入讲解函数的定义和使用,包括内联函数、默认参数、函数重载、函数模板和系统函数的使用。 4. 第4章类与对象 - 面向对象编程的核心,包括面向对象思想、类和对象的定义、构造函数和析构函数的作用,以及类的组合和类模板。 5. 第5章及其他章节 - 继续深入探讨C++的高级特性,如类的继承、多态性、文件操作等,可能还包括异常处理和STL(Standard Template Library)的使用。 每个章节末尾的小结部分,是对该章内容的总结,帮助学生巩固学习,并为后续章节的学习做好准备。通过这样的课程,学生不仅可以掌握C++编程技能,还能提升编写和调试程序的能力,为后续更复杂的计算机科学课程打下坚实基础。

#include<stdio.h> #include<stdlib.h> #define N 1000001 struct Array { int a[N]; int alength; int b[N]; int blength; int num; }; void ShowArray(struct Array* array) { printf("c数组元素有:"); for(int i=0;i<(array->alength);i++) printf("%d ",array->a[i]); printf("\n"); } void CreateArray(struct Array* array,int a,int b) { //array = (struct Array*)malloc(sizeof(array)); /*array->alength = 0; array->blength = 0; array->num = 0;*/ printf("a数组元素有:"); for(int i=0;i<a;i++) { scanf("%d",&(array->a[i])); array->alength++; } array->alength = a; ShowArray(array); printf("b数组元素有:"); for(int i=0;i<b;i++) { scanf("%d",&(array->b[i])); array->blength++; } } void SortArray(struct Array* array) { int i = 0; int j = array->alength - array->blength; while((i!=array->alength - array->blength)&&(j!=array->alength)) { if(array->a[i]>array->a[j]) { array->num = array->a[j]; array->a[j] = array->a[i]; array->a[i] = array->num; i++; j++; } else if(array->a[i]<array->a[j]) { i++; j++; } else { array->num = array->a[j+1]; array->a[j+1] = array->a[i]; array->a[i] = array->num; i++; } } } void MergeArray(struct Array* array) { int j = array->alength; array->alength = + array->blength; for(int i=0;i<array->blength;i++) array->a[j] = array->b[i]; SortArray(array); ShowArray(array); } int main() { struct Array* array; int v,r; printf("a数组的长度为:"); scanf("%d",&v); printf("b数组的长度为:"); scanf("%d",&r); CreateArray(array,v,r); MergeArray(array); return 0; } 上面代码哪里错了?

2023-07-16 上传