放在main函数里定义的变量是局部变量,全局变量要放在所有函数(包括main)的外部#include int x,y,z;
void year(int a,int b,int c);
int main()
{
int i,a,b,c;
for(i=1;i<=1;i++)
{
scanf("%d,%d,%d",&a,&b,&c);
printf("a=%d\n",a);
printf("b=%d\n",b);
printf("c=%d\n",c);
}这里x y z就是全局变量,其他都是局部变量
扩展资料:
for循环
for循环结构是c语言中最具有特色的循环语句,使用最为灵活方便,它的一般形式为:
for(表达式1;表达式2;表达式3)循环体语句 。(其中;不能省略)
表达式1为初值表达式,用于在循环开始前为循环变量赋初值。
表达式2是循环控制逻辑表达式,它控制循环执行的条件,决定循环的次数。
表达式3为循环控制变量修改表达式,它使for循环趋向结束。
循环体语句是在循环控制条件成立的情况下被反复执行的语句。
但是在整个for循环过程中,表达式1只计算一次,表达式2和表达式3则可能计算多次,也可能一次也不计算。循环体可能多次执行,也可能一次都不执行。
先执行表达式2,然后执行循环结构,最后表达式3,一直这样循环下去。
for循环语句是c语言种功能最为强大的语句,甚至在一定程度上可以代替其他的循环语句。
do
do循环结构,do 1 while⑵;的执行顺序是1->2->1...循环,2为循环条件。
参考资料来源:百度百科-C语言
(1)main函数内的变量不是全局变量,而是局部变量。
(2)只不过它的生命周期和全局变量一样长而已。
(3)全局变量一定是定义在函数外部的。
函数分类
从用户使用的角度看,函数有两种:
1、标准函数,即库函数。这是由系统提供的。
2、用户自定义的函数。可以解决用户的专门需要。
二、从函数的形式看,函数分两类:
1、无参函数。printstar和print_message就是无参函数。在调用无参函数时,主调函数并不将数据传送给被调用函数,一般用来执行指定的一组操作。
2、有参函数。在调用函数时,在主调函数和被调用函数之间有数据传递。也就是说,主调函数可以将数据传递给被调用函数使用,被调用函数中的数据也可以带回来供主调函数使用。
在C语言当中,一个程序,无论复杂或简单,总体上都是一个“函数”;这个函数就称为“main函数”,也就是“主函数”。比如有个“做菜”程序,那么“做菜”这个过程就是“主函数”。在主函数中,根据情况,你可能还需要调用“买菜,切菜,炒菜”等子函数。
main函数在程序中大多数是必须存在的,但是依然有例外情况,比如windows编程中可以编写一个动态链接库(dll)模块,这是其他windows程序可以使用的代码。
由于DLL模块不是独立的程序,因此不需要main函数。再比如,用于专业环境的程序-----如机器人中的控制芯片--可能不需要main函数。
main函数用法
C++中的main函数
C++继承了C语言的大部分特性,因此保留了“程序总是从main函数开始执行,且总是默认从main函数的return语句或结尾处结束运行”这一传统,但是要注意,C++中的main函数要想作为程序执行的出入口,必须写在全局(Global)范围,
不能写成某个结构体或某个类的成员。虽然main函数可以作为结构体或者类的成员函数,但相应地会失去作为程序出入口的功能。
C++中全局main函数的书写格式与C语言完全相同,功能也完全相同,且同一C++程序同样只能有一个全局main函数。
Java中的main函数
Java同样是以main函数作为程序执行出入口的,但Java作为“更纯洁”的面向对象语言,它的main函数与C/C++有很大的不同。
首先,返回值的概念淡化,在Java Application中main不允许返回值,因此int main是被禁止的,必须使用void main,int main仅限在JavaBean中使用。
其次,Java中所有的函数必须属于类,没有什么全局函数一说,因此main函数不能是全局成员,必须是某个类的成员。
第三,由于main函数变成了类的成员函数,因此要想直接被系统调用,还必须使用public static使其成为静态函数并具有公开权限。
第四,main函数的参数被简化,只需要提供字符串数组即可,不需要提供参数个数(这是由于Java的数组具有下标检查功能的原因)
Java Application中的main函数一般格式如下(类名可以自定义,但保存为Java源码时,主文件名必须与类名相同,否则可能无法运行)
public class MainDemo{
public static void main(String[]args){
//TODO:在此处写入主函数的内容
}
}
Java Applet的运行机制与Java Application完全不同,因此不需要main函数
C#中的main函数
C#中的main函数与Java大同小异,同样必须是类成员,同样使用字符串数组作唯一参数,同样是静态函数,同样的void main,
与之不同的是:main的首字母变成了大写,即"Main函数“,且是否限定为public级别已经无所谓了(默认没有public,但某些场合可能还是需要public)
另外,需要注意的是,C#中不再有”类名必须与主文件名同名“的限制,即使类名不和主文件名相同,程序照样可以运行。
C#应用程序中的main函数默认是这样的(注意main的首字母已是大写)
C#和C/C++、java不同的是C#不在拘泥于必须从main()函数开始执行,C#是属于事件触发。
class Program{
static void Main(string[]args){
//TODO:在此处写入主函数的内容
}
}
参考资料:
本回答被网友采纳放在main函数里定义的变量任然是局部变量,全局变量要放在所有函数(包括main)的外部,例如:
#include <stdio.h>这里x y z就是全局变量,其他都是局部变量
本回答被网友采纳C语言中,这个main函数里定义的变量是全局变量还是局部变量?
放在main函数里定义的变量任然是局部变量,全局变量要放在所有函数(包括main)的外部,例如:include <stdio.h>int x,y,z;void year(int a,int b,int c);int main(){ int i,a,b,c; for(i=1;i<=1;i++) { scanf("%d,%d,%d",&a,&b,&c); printf("a=%d\\n",a); printf("b...
C语言中,这个main函数里定义的变量是全局变量还是局部变量?
放在main函数里定义的变量是局部变量,全局变量要放在所有函数(包括main)的外部#include int x,y,z;void year(int a,int b,int c);int main(){ int i,a,b,c;for(i=1;i<=1;i++){ scanf("%d,%d,%d",&a,&b,&c);printf("a=%d\\n",a);printf("b=%d\\n",b);printf("c=%d...
C语言变量的作用域
在main前定义的变量是全局变量,作用域到程序结束 mian 后定义为局部变量,作用域为main函数里面
C语言中,main函数内定义的变量在整个程序范围内都有效吗?
不是,对在其它函数内部定义的中转变量不起作用。如果要达到这个效果,可以使用宏定义,定义全局变量。 本回答由提问者推荐 举报| 答案纠错 | 评论 56 1 诡其辞 采纳率:36% 擅长: 互联网 C\/C++ 数学 系统软件 其他回答 貌似在子函数中不行,MAIN函数外部,也就是在INCLUDE之后定义的变量为全局变量,整个程序都有...
C语言中如何定义全局变量
1、首先,我们可以在函数外面定义变量,就是全局变量。2、局部变量可以与全局变量同样命名。3、但是优先级是局部变量优先。4、但是局部变量的生命周期是整个结构内。5、全局变量是整个程序结束,才释放。6、我们也可以为变量加上修饰符。
c语言什么是局部变量,全局变量,动态变量,静态变量。
以int a为例 如果int a定义在函数外,(包括main函数)那么它就是全局变量,在函数内的就是局部变量。而定义的时候加了static修饰的就是静态变量,没加static的就是动态变量
C语言中 局部变量和全局变量的概念?
局部变量也称为内部变量。局部变量是在函数内作定义说明的。其作用域仅限于函数内, 离开该函数后再使用这种变量是非法的。例如:int f1(int a) \/*函数f1*\/ { int b,c;……} a,b,c有效 int f2(int x) \/*函数f2*\/ { int y,z;……} x,y,z有效 main(){ int m,n;……}...
C语言:请问结构体定义在main函数外面算不算全局变量?谢谢!
全局变量也称为外部变量,它是在函数外部定义的变量。 它不属于哪一个函数,它属于一个源程序文件。其作用域是整个源程序。在函数中使用全局变量,一般应作全局变量说明。 只有在函数内经过说明的全局变量才能使用。 但在一个函数之前定义的全局变量,在该函数内使用可不再加以说明。结构体只是一种数据...
c语言程序中main可以做变量名?
在函数中可以,因为函数中的变量都是局部性质的,在其他地方不可见;但不能作全局变量的名字。所以此题只能选D,因为D可以在任何地方做变量名,而A不能作全局变量名,B、C都是错误变量名。
C语言中的全局变量和局部变量有什么区别?
C#中没有全局变量的概念,可以定义一个common类,通过静态变量来存放所有需要的全局变量,调用的时候通过common来调用即可。调用的时候使用“命名空间.common.属性名”即可,例如 string m_name = common.Name ;common.farray [0, 2] = 0.5 ;...