码迷,mamicode.com
首页 > 编程语言 > 详细

C语言编程入门——函数(下)

时间:2015-08-02 16:49:06      阅读:135      评论:0      收藏:0      [点我收藏+]

标签:c语言   编程   入门   函数   


void的含义:

# include <stdio.h>

int f(void) //void表示不接收任何数据,int表示返回int类型值,即下面的 return 10;
{
	return 10; //向主调函数返回10,即向main函数中调用的语句返回10这个值。
}

void g(void) //函数名前的void表示该函数没有返回值。
{
	//return 10; //错误,与上面的void相矛盾,不能有返回值。
}

int main(void)
{
	int i = 88;
	int j = 5201314;

	i = f(); //因为f函数不接收任何数据,所以括号内为空,调用函数后,f函数返回10,i的值变为10。
	//j = g(); //因为g函数没有返回值,所以不能赋值给j。注意:没有返回值不是返回0,而是返回为空!

	printf("%d\n", i);
	printf("%d\n", j);
	return 0;
}


break与return的区别:

# include <stdio.h>

void f(void)
{
	int i;
	
	for(i=0; i<5; i++)
	{
		printf("呵呵!\n");
		break;	//break用于终止for循环。
		
	}

	return;	//return用于终止整个函数。
	
	printf("哈哈!\n");
}

int main(void)
{
	f();
	
	return 0;
}


函数练习——多次求素数:

# include <stdio.h>

//本函数功能是判断一个数是否为素数,如果是,则返回true,如果不是,则返回false。
bool IsPrime(int m)
{
	int i;
	
	for (i=2; i<m; ++i)
	{
		if (0 == m%i)
			break;
	}

	if (i == m)
		return true;
	else
		return false;
}

//本函数功能是输入1到n所有的素数。
void TraverseVal(int n)
{
	int i;
	for (i=2; i<=n; ++i)
		if ( IsPrime(i) )
			printf("%d\n", i);
}

int main(void)
{
	int i;
	int val;
	int j;
	printf("请输入需要求的次数:");
	scanf("%d", &i);

	for (j=1; j<=i; ++j)
	{
		printf("请输入第 %d 次上限:", j);
		scanf("%d", &val);
		TraverseVal(val);
	}
	return 0;
}

全局变量与局部变量:

# include <stdio.h>

int k = 1000;	//k即为全局变量,即可供所有函数使用。

void f(int i)
{	
	int j;	//形参i和定义变量j都为局部变量,即仅供函数内部使用。
	printf("k = %d\n", k);
}

int main(void)
{
	int m = 10;

	f(m);

	return 0;
}


全局变量与局部变量的命名冲突问题:

# include <stdio.h>

int i = 99;

void f(int i)
{
	printf("i = %d\n", i);
}

int main(void)
{
	f(8);

	return 0;
}
/*
	输出结果为:i = 8 即当全局变量名与局部变量名相同时,会默认采用局部变
	量,即局部变量(Private)优先级>全局变量(Public)。
*/



版权声明:本文为博主原创文章,未经博主允许不得转载。

C语言编程入门——函数(下)

标签:c语言   编程   入门   函数   

原文地址:http://blog.csdn.net/lfhappypain/article/details/47208301

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!