C++入门典型程序_第1页
C++入门典型程序_第2页
C++入门典型程序_第3页
C++入门典型程序_第4页
C++入门典型程序_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C++入门典型程序以下程序均为C++入门核心典型案例,覆盖基础语法、输入输出、函数、类与对象等入门必学知识点,代码简洁可运行,附带详细注释,适合入门者逐句理解、实操练习。一、基础入门:HelloWorld(第一个C++程序)核心:了解C++程序基本结构、头文件、命名空间、输出语句,是入门第一个必写程序。cpp

#include<iostream>//引入输入输出流头文件(C++标准输入输出依赖)

usingnamespacestd;//使用标准命名空间(避免每次写std::)

intmain(){//主函数,程序入口(所有C++程序必须有且只有一个main函数)

cout<<"HelloWorld!"<<endl;//输出语句,cout用于输出,endl表示换行

return0;//主函数返回0,表示程序正常结束

}

运行结果:HelloWorld!关键说明:#include<iostream>是C++的标准输入输出头文件,替代C语言的<stdio.h>;usingnamespacestd;简化代码,否则需写std::cout、std::endl。二、基础语法:变量、常量与输入输出核心:掌握C++变量定义、常量声明、cin输入、cout输出,熟悉基本数据类型(int、float、char等)。cpp

#include<iostream>

usingnamespacestd;

intmain(){

//1.变量定义(C++支持自动类型推导auto,C++11及以上版本可用)

intage=18;//整型变量(年龄)

floatscore=95.5f;//单精度浮点型(成绩,加f表示float,否则默认double)

chargender='M';//字符型(性别)

autoname="ZhangSan";//自动类型推导,推导为constchar*(字符串)

//2.常量声明(两种方式:const和#define,推荐用const,类型安全)

constintMAX_SCORE=100;//const修饰的常量,不可修改

//#defineMAX_AGE20//宏定义常量,无类型,编译时替换

//3.输入(cin)与输出(cout)

cout<<"请输入你的姓名、年龄、成绩、性别:"<<endl;

cin>>name>>age>>score>>gender;//输入多个数据,用空格/回车分隔

//格式化输出

cout<<"姓名:"<<name<<endl;

cout<<"年龄:"<<age<<"岁"<<endl;

cout<<"成绩:"<<score<<"分"<<endl;

cout<<"性别:"<<gender<<endl;

cout<<"满分:"<<MAX_SCORE<<"分"<<endl;

return0;

}

运行说明:运行后输入示例(如:LiSi2098.0F),程序会输出对应输入的信息,演示变量赋值、输入输出的基本用法。三、流程控制:if-else条件判断(判断成绩等级)核心:掌握if-else单分支、双分支、多分支语法,学会根据条件执行不同代码块。cpp

#include<iostream>

usingnamespacestd;

intmain(){

floatscore;

cout<<"请输入你的考试成绩:";

cin>>score;

//多分支条件判断,判断成绩等级

if(score>=90&&score<=100){

cout<<"成绩等级:优秀"<<endl;

}elseif(score>=80&&score<90){

cout<<"成绩等级:良好"<<endl;

}elseif(score>=60&&score<80){

cout<<"成绩等级:及格"<<endl;

}elseif(score>0&&score<60){

cout<<"成绩等级:不及格"<<endl;

}else{

cout<<"输入错误!成绩请输入0-100之间的数值"<<endl;

}

return0;

}

关键说明:逻辑与&&表示“并且”,多分支if-else需注意判断顺序(从高到低/从低到高),避免逻辑错误。四、循环结构:for循环(计算1-100的和)核心:掌握for循环的语法(初始化、条件判断、更新表达式),实现重复执行代码块,是入门最常用的循环。cpp

#include<iostream>

usingnamespacestd;

intmain(){

intsum=0;//用于存储总和,初始化为0

//for循环:初始化i=1;条件i<=100;每次循环i自增1

for(inti=1;i<=100;i++){

sum+=i;//等价于sum=sum+i,累加每次的i

}

cout<<"1到100的总和为:"<<sum<<endl;//输出结果:5050

return0;

}

变式练习:可修改循环条件,计算1-100的偶数和、奇数和(如i从2开始,i+=2)。五、函数入门:自定义函数(计算两数之和)核心:掌握C++自定义函数的声明、定义、调用,理解函数的参数传递(值传递),实现代码复用。cpp

#include<iostream>

usingnamespacestd;

//函数声明(告诉编译器函数的返回值类型、函数名、参数列表)

intadd(inta,intb);//声明一个返回int、接收两个int参数的函数add

intmain(){

intnum1,num2;

cout<<"请输入两个整数:";

cin>>num1>>num2;

//函数调用:将num1、num2作为实参传入,接收返回值

intresult=add(num1,num2);

cout<<num1<<"+"<<num2<<"="<<result<<endl;

return0;

}

//函数定义(实现函数的具体功能)

intadd(inta,intb){

returna+b;//返回两数之和,返回值类型与声明一致

}

关键说明:函数声明可写在main函数之前,定义可写在main之后;值传递时,函数内修改参数值,不影响主函数中的实参。六、类与对象(C++核心特性):简单学生类核心:初步了解C++面向对象的核心——类与对象,掌握类的定义、对象的创建、成员变量和成员函数的使用。cpp

#include<iostream>

#include<string>//引入字符串头文件(C++字符串string依赖)

usingnamespacestd;

//定义一个学生类(class关键字),封装学生的属性(成员变量)和行为(成员函数)

classStudent{

public://访问权限:public表示外部可访问(入门重点掌握public)

//成员变量(学生的属性:姓名、年龄、成绩)

stringname;

intage;

floatscore;

//成员函数(学生的行为:展示个人信息)

voidshowInfo(){

cout<<"学生信息:"<<endl;

cout<<"姓名:"<<name<<endl;

cout<<"年龄:"<<age<<"岁"<<endl;

cout<<"成绩:"<<score<<"分"<<endl;

}

};

intmain(){

//创建对象(Student类的实例)

Studentstu1;

//给对象的成员变量赋值

="WangWu";

stu1.age=19;

stu1.score=92.5;

//调用对象的成员函数

stu1.showInfo();

return0;

}

运行结果:会输出stu1对象的姓名、年龄、成绩,演示类的封装和对象的使用,是C++面向对象的入门基础。七、数组与循环:遍历数组(输出数组所有元素)核心:掌握C++数组的定义、初始化,结合for循环遍历数组,熟悉数组下标(从0开始)。cpp

#include<iostream>

usingnamespacestd;

intmain(){

//1.数组定义与初始化

intarr[5]={10,20,30,40,50};//定义一个长度为5的整型数组,初始化元素

//intarr[]={10,20,30};//省略长度,编译器自动计算长度为3

//2.遍历数组(方式1:普通for循环,通过下标访问)

cout<<"数组元素(普通for循环):";

for(inti=0;i<5;i++){

cout<<arr[i]<<"";//数组下标从0开始,arr[0]是第一个元素

}

cout<<endl;

//3.遍历数组(方式2:范围for循环,C++11及以上版本可用,更简洁)

cout<<"数组元素(范围for循环):";

for(intnum:arr){//遍历arr的每个元素,赋值给num

cout<<num<<"";

}

cout<<endl;

return0;

}运行结果:两次输出均为1020304050,范围for循环更适合无需下标、仅遍历元素的场景。八、异常处理:try-catch(简单异常捕获)核心:了解C++异常处理的基本语法,捕获简单的异常(如除零错误),提升程序健壮性。cpp

#include<iostream>

usingnamespacestd;

//自定义除法函数,可能抛出除零异常

doubledivide(inta,intb){

if(b==0){

//抛出异常(throw关键字),异常类型为字符串

throw"错误:除数不能为0!";

}

return(double)a/b;//强制转换为double,避免整数除法

}

intmain(){

intnum1,num2;

cout<<"请输入两个整数(被除数除数):";

cin>>num1>>num2;

//try-catch捕获异常

try{

doubleresult=divide(num1,num2);

cout<<num1<<"÷"<<num2<<"="<<result<<endl;

}catch(constchar*err)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论