C/C++基础(自用)-01

C/C++程序设计

C/C++的联系与差异

联系:

c++是c的超集,完全涵盖了C语言的内容

在这里插入图片描述

差异

-C语言

  • 结构化程序设计语言(面向过程)
  • 侧重如何设计一个过程,对输入进行运算处理得输出
  • 强调算法与数据结构

-C++

  • 面向对象
  • 侧重如何构造一个与描述问题相对应得的对象模型
  • 融入抽象设计的概念

C/C++的输入与输出

-C语言

  • 通过scanf与printf实现输入输出

-C++语言

  • 保留scanf与printf实现输入输出,使用cin与cout操作进行输入输出

以下采用C++格式数据输出:

cout<<表达式1<<表达式2<<...<<表达式n;
  • 说明
    • cout代表显示器,‘<<’是插入运算符。表达式的值插入到显示器屏幕上,即输出各表达式的值。
    • 各表达式可以是任意类型,数据的输出格式由系统自动决定
    • 必须为‘<<’分隔,不能用逗号分隔。
    • cout的定义信息存放在C++的输入输出流库中,所以使用如下的文件包含预处理命令以及名字空间说明语句。
#include<iostream>
using namespace std;

数据输出示例:
在这里插入图片描述

以下采用C++格式数据输入:

cin>>变量1>>变量2>>...>>变量n;
  • 说明
    • cin代表显示器,‘>>’是提取运算符。表示从键盘提取数据分别给各个变量,即输入各个变量的值。
    • 变量可以是任意类型。表达式间必须为‘>>’分隔,不能用逗号分隔。
    • 输入数据时,各数据用空格、换行、制表符分隔
    • ‘>>’后面必须是变量,不能加endl
    • cin的定义信息存放在C++的输入输出流库之中,所以使用cin程序之前要加:
#include<iostream>
using namespace std;

数据输入示例:
在这里插入图片描述
在这里插入图片描述

数据类型、运算符与表达式

数据类型

数据是程序的操作对象,具有不同的类型常量变量形式表达

  • 作用
    • 决定数据的存储空间
    • 决定数据的取值范围。32位系统,整数范围 -231~231-1
    • 决定数据所能参与的运算
  • 分类
    • 基本数据类型(不可再分)
      • 整型 int
      • 字符型 char
      • 实型:单精度 float、双精度 double (存储空间、精度、取值范围不同)
    • 构造类型:数组、结构体、共用体…(由基本数据类型合成的复杂类型)
    • 指针类型(*)
    • 空指针(void)

变量

程序运行过程中值可变的数据

变量定义

数据类型 变量名表

  • 要求
    • 先定义后使用
    • 参与运算前必须先被赋值,否则运算结果无效。

初始化

定义变量同时指定变量的初值

数据类型 变量名= 表达式
数据类型 变量名(表达式)

常量

程序运行过程中值不能被改变的数据

  • 种类
    • 值常量
    • 符号常量
      • const 数据类型 标识符 = 常量值
      • #define 标识符 常量值

运算符

知识点省略,只取题目验证掌握程度
问题:如何编程实现华氏温度到摄氏温度的转化? 转化公式:
C = 5 / 9 ∗ ( F − 32 ) C = 5 / 9 * (F - 32) C=5/9(F32)

#include<iostream>
using namespace std; //使用std命名空间
int main()
{
   
	double f,c;
	cout << "请输入华氏温度:"<< endl;
	cin >> f;
	c = 5.0/ 9.0 * (f - 32);
	cout << "对应的摄氏温度为:" << c << endl;
	system("pause");
	return 0;
}

在此处应注意:整数除法运算先去尾,再进行运算。 所以应为5.0 与9.0 浮点数运算

常见应用

  • 分解整数数位
  • 判别整除关系
    问题:求三位正整数m的个、十、百位
百位:  m/100
十位:  m%100/10
各位:  m%10

控制结构

问题:利用公式
s = p ( p − a ) ( p − b ) ( p − c ) s = \sqrt{p(p-a)(p-b)(p-c)} s=p(pa)(pb)(pc)
编程求以a,b,c做三边的三角形面积。其中,p为三角形三边和的一半,即:p=(a+b+c)/2
顺序结构

#include<iostream>
using namespace std; //使用std命名空间
int main()
{
   
	double a, b, c, p, s;
	cin >> a >> b >> c;
	p = 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
根据您提供的Makefile,这个错误信息是由于在删除目标文件时出现问题引起的。这可能是由于您的Dev-C++环境配置不正确导致的。 在您的Makefile中,您使用了`$(DEL)`变量来执行删除操作。然而,在Windows环境下,删除操作通常使用`del`命令而不是`devcpp.exe INTERNAL_DEL`。 为了解决这个问题,您可以尝试将以下行: ``` DEL = C:\Program Files (x86)\Embarcadero\Dev-Cpp\devcpp.exe INTERNAL_DEL ``` 替换为: ``` DEL = del ``` 这将使用Windows的`del`命令来执行删除操作。 修改后的Makefile如下所示: ```makefile # Project: 项目1 # Makefile created by Embarcadero Dev-C++ 6.3 CPP = g++.exe CC = gcc.exe WINDRES = windres.exe OBJ = main.o LINKOBJ = main.o LIBS = -L"C:/Program Files (x86)/Embarcadero/Dev-Cpp/TDM-GCC-64/lib" -L"C:/Program Files (x86)/Embarcadero/Dev-Cpp/TDM-GCC-64/x86_64-w64-mingw32/lib" -static-libgcc INCS = -I"C:/Program Files (x86)/Embarcadero/Dev-Cpp/TDM-GCC-64/include" -I"C:/Program Files (x86)/Embarcadero/Dev-Cpp/TDM-GCC-64/x86_64-w64-mingw32/include" -I"C:/Program Files (x86)/Embarcadero/Dev-Cpp/TDM-GCC-64/lib/gcc/x86_64-w64-mingw32/9.2.0/include" CXXINCS = -I"C:/Program Files (x86)/Embarcadero/Dev-Cpp/TDM-GCC-64/include" -I"C:/Program Files (x86)/Embarcadero/Dev-Cpp/TDM-GCC-64/x86_64-w64-mingw32/include" -I"C:/Program Files (x86)/Embarcadero/Dev-Cpp/TDM-GCC-64/lib/gcc/x86_64-w64-mingw32/9.2.0/include" -I"C:/Program Files (x86)/Embarcadero/Dev-Cpp/TDM-GCC-64/lib/gcc/x86_64-w64-mingw32/9.2.0/include/c++" BIN = 项目1.exe CXXFLAGS = $(CXXINCS) -std=c++11 CFLAGS = $(INCS) -std=c++11 DEL = del .PHONY: all all-before all-after clean clean-custom all: all-before $(BIN) all-after clean: clean-custom ${DEL} $(OBJ) $(BIN) $(BIN): $(OBJ) $(CPP) $(LINKOBJ) -o $(BIN) $(LIBS) main.o: main.cpp $(CPP) -c main.cpp -o main.o $(CXXFLAGS) ``` 请尝试使用修改后的Makefile重新编译您的项目,看看是否能够解决问题。如果还有其他错误信息,请提供详细的错误信息,以便我更好地帮助您解决问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值