IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> C语言复习4 -> 正文阅读

[C++知识库]C语言复习4

局部变量于全局变量

局部变量:

被定义在函数的内部,它们的有效使用范围也被局限于所在的函数之内。其最大程度的确保了个函数之间的独立性。

除了作用于函数的局部变量外,还有定义于复合语句中的局部变量,其有效使用范围被局限于复合语句中,一般作用于小范围的局部变量。

局部变量一般定义 在函数或复合语句的开始处。

int main (void)

{

int a =1;//主函数的局部变量

{

int b=2;//复合语句的局部变量

}

...

}

全局变量
定义在函数外而不属于任何函数的变量。其作用外围是从定义开始到程序所在文件的结束,它对作用范围内所有函数都有作用。

当某函数的局部变量与全局变量重名时,在该函数内全局变量不起作用。

全局变量可解决函数返回值只有一个数的问题:

#include <stdio.h>
double result_real, result_imag;//定义全局变量,存放结果。在此处巧妙的解决了return只能返回一个值的问题 
int main(void)
{
	double real1,real2,imag1,imag2;
	void complex_prod(double real1, double real2, double imag1, double imag2);
	void complex_add(double real1, double real2,double imag1, double imag2);
	
	printf("please enter your first real and imag=");
	scanf("%lf%lf",&real1,&imag1);
	
	printf("please enter your 2st real and imag=");
	scanf("%lf%lf",&real2,&imag2);
	
	complex_prod(real1,real2,imag1,imag2);
	printf("the result of prod is\n%.2f+%.2fi\n",result_real,result_imag);
	
	complex_add(real1,real2,imag1,imag2);
	printf("the result of add is\n%.2f+%.2fi\n",result_real,result_imag);
}

void complex_prod(double real1, double real2, double imag1, double imag2)
{
	result_real=real1+real2;
	result_imag=imag1+imag2;
}

void complex_add(double real1, double real2,double imag1, double imag2)
{
	result_real=(real1*real2-imag1*imag2);
	result_imag=(real1*imag2+real2*imag1);
}

全局变量也用于多函数的全局数据的表示:

#include<stdio.h>
double cash;
int main(void)
{
	int choice;
	double value;
	void income(double number);
	void expend(double number);
	
	cash = 0;
	printf("please enter your choice:\n1---income, 0---end, 2---expend\n");
	scanf("%d",&choice);
	
	while (choice!=0)
	{
		if(choice==1||choice==2)
		{
			printf("please enter your number\n");
			scanf("%lf",&value);
			
			if(choice==1)
			{
				income(value);
			}
			else
			{
				expend(value); 
			}
			printf("the cash is = %0.2f\n\n",cash);
		}
		printf("please enter your choice:\n1---income, 0---end, 2---expend\n");
	    scanf("%d",&choice);
		
	}
	return 0;
}
void income(double number)
{
	cash = cash+number;
}
void expend(double number)
{
	cash = cash-number;
}

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2022-03-03 15:50:34  更:2022-03-03 15:56:47 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 4:54:09-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码