C语言实验1:C程序的运行环境和运行C程序的方法

一、算法原理

这是学C语言的入门,并不需要很高深的知识,一个hello world 或者一个简单的加法即可

二、实验要求

了解所用的计算机系统的基本操作方法,学会独立使用该系统。

了解在该系统上如何编辑、编译、连接和运行一个C程序。

通过运行简单的C程序,初步了解C源程序的特点。

三、实验代码

1.hello world的输出

1.1C语言输出的样例

代码
cs 复制代码
#include<stdio.h>
int main() {
	printf("hello,world!");
	return 0;
}
结果
分析

用到了头文件stdio.h

stdio.h是C语言中的一个标准头文件,它的作用是提供了一系列的输入输出函数,方便程序员在代码中对数据进行读取和输出。这个头文件的名字中的"stdio"是"standard input/output"的缩写,也就是标准输入输出的意思。

可以理解成一个头文件包括一些变量和函数,C语言有很多头文件,不同头文件有着不同的内容,不同的作用,但是最基础的是stdio.h

printf函数就是这个库中的输出函数,printf不仅可以输出字符串,也能输出数字等,但是输出不同类型的数字,所用的类型也不同,如int型数据是%d,float型数据用%f,char型数据用%c

具体可以参考下面这篇博客

[C]C语言基本语句(4/7)→ 用printf语句输出int, float, double, char型数据_c语言输出int-CSDN博客 至于return 0,因为主函数是int型,最后的结果就是返回一个int型数据,默认return 0,当然自己设计函数的时候return多少都行

1.2C++输出的样例

代码
cpp 复制代码
#include<iostream>
using namespace std;
int main() {
	cout << "hello,world!";
	return 0;
}
结果
分析

上述代码用到了iostream库

<iostream> 库被认为是 C++ 中最基础和最重要的一个头文件,它定义了输入和输出的流类和函数,可以实现程序与控制台或文件之间的交互操作。掌握 <iostream> 库的知识对于使用 C++ 进行输入输出操作至关重要。

可以发现用iostream中的cout输出,会变得很简单,我的建议是虽然C++很复杂,但是写到C语言时输入输出可以使用C++的cin和cout

using namespace 的意思是使用命名空间

如果把这一行代码给删除,就会报错。

对于这个错误,感兴趣的同学可以看一下这篇文章,不感兴趣的同学只需要知道在用到C++的输入输出要用到这行代码

using namespace std;到底是在干嘛?_using namespace std有什么用-CSDN博客

对于cin和c++的使用可以参考下面这篇文章

C++输入与输出---cout和cin的用法_c++ cout语法-CSDN博客

2.加减乘除的实现

2.1加法的实现

代码
cpp 复制代码
#include<iostream>
using namespace std;
int main() {
	int a = 3,b = 4;
	int c;
	c = a + b;
	cout << c;
	return 0;
}
结果
分析

C语言中"+"就是加法,但是只能相同类型数据相加,否则会报错

在计算机组成原理这门课中会学到:计算机中数字大部分都是以补码形式存在的,比如64位的计算机,可以表示的int型数字范围是-(2^63)------(2^63-1),也就是说数字不能无限大,否则会溢出,而且数字越大,处理越慢,对于处理很大的数据,要用到数学思想,拆分。

2.2减法的实现

代码
cpp 复制代码
#include<iostream>
using namespace std;
int main() {
	int a = 3,b = 4;
	int c;
	c = a - b;
	cout << c;
	return 0;
}
结果
分析

C语言中减法是"-",实质是加法,为什么这样说呢?

用上面的例子解释下,相当于3的补码加上 -4 的补码,手算就是3的补码加上4的补码全部取反加一

2.3乘法的实现

代码
cpp 复制代码
#include<iostream>
using namespace std;
int main() {
	int a = 3,b = 4;
	int c;
	c = a * b;
	cout << c;
	return 0;
}
结果
分析

C语言中的乘法就是"*",乘法本质上是加法

例如10*12

可以拆解为10*10+10*2,在CPU中会涉及到移位器

2.4除法的实现

代码

cpp 复制代码
#include<iostream>
using namespace std;
int main() {
	int a = 8,b = 4;
	int c;
	c = a/b;
	cout << c;
	return 0;
}
结果
分析

C语言中除法是"/",注意不是"\","\"是转义字符。

除法原理比较繁琐,int型数据的除法本质上是求商,余数用"%"来求("%"在水仙花数中应用较多)

不能除以0,否则系统会报错。

四、实验总结

这是C语言的入门,往后还会学到很多,望诸君认真学习,在计算机的海洋里遨游 !!!

相关推荐
chenziang111 分钟前
leetcode hot100
算法·leetcode·职场和发展
执着的小火车20 分钟前
02-18.python入门基础一基础算法
数据结构·python·算法·排序算法
梦茹^_^21 分钟前
排序算法(系列)
数据结构·python·算法·排序算法·希尔排序·基数排序·计数排序和桶排序
花开盛夏^.^26 分钟前
Timsort算法
数据结构·算法·排序算法
code monkey.28 分钟前
【排序算法】—— 计数排序
c++·算法·排序算法
云青山水林30 分钟前
2024.12.21 周六
c++·算法·贪心算法
chenziang135 分钟前
leetcode hot二叉树的层序遍历
数据结构·算法
pianmian11 小时前
完全平方数
数据结构·算法
A_Tai23333331 小时前
贪心算法解决用最少数量的箭引爆气球问题
算法·贪心算法
唐叔在学习1 小时前
【唐叔学算法】第19天:交换排序-冒泡排序与快速排序的深度解析及Java实现
java·算法·排序算法