您的位置 首页 知识

c语言主函数必须是main吗(主函数只有main吗)

c语言main前面可以不加吗?

C语言必须要有一个main函数,而且只能有一个main函数,这个函数叫主函数,它是第一个运行的函数。

一般来说,主函数应放在最后,其他被调用函数放在主函数前面。这样的话,其他被调用函数可以不予先声明。如果其他被调用函数放在了主函数后面,则在主函数之前一定要事先对被调用函数加以声明。

C语言中的主函数固定名为:main(),每个系统中必须有一个,且只能有一个。它 是第一个运行的函数。

一般情况下,main()写在文件的最后面,其他被调用的函数放在前面,这样定义函数之前可以不加声明,如果放在主函数之后,则必须先声明,再定义,再被调用。

主函数类型?

都可以,main()这种也行,但只有

int main(void)
{return 0;}

int main(int argc,char argv*[])
{return 0;}

int main(int argc,char *argv[] char *envs[])
{return 0;}

这三种形式是推荐的,主函数应该有返回值,系统要根据返回值判断程序的运行状态。

C语言求两个数的平均数,1主函数调用其他函数,2输入两个数,3运算,4打印结果这四个资源文件。

  • 如题。。求大神帮帮忙。。。
  • 热心网友 19:58

C语言 子函数调用主函数数组 出问题 编译软件是VC6.0

  • 我出现问题的地方都注释在下面的程序里了 求救!!!!!#include stdio.h#include malloc.htypedef char ElemType; 定义同义字ElemType=chartypedef struct LNode 链表 节点结构{ ElemType data; struct LNode *next;}LinkList; void CreateListR(LinkList *L,ElemType *a,int n) ; 尾插法建表(函数声明) void main(void){ LinkList *h; int i; int a[5]={1,2,3,4,5};debug 到这 变量a没问题 一进入下面的子程序数组内数据就改变 CreateListR(h,a,5);*********下面的输出是测试数组数据的********* for(i=0;i5;i++) { printf("%dn",a[i]); }} void CreateListR(LinkList *L,ElemType *a,int n) 尾插法建表{断点放在这个位置时 数组a中的数据就变成 49 0 0 0 50 LinkList *s,*r; int i; L=(LinkList *)malloc(sizeof(LinkList)); r=L; for(i=0;in;i++) 这个循环是为了测试数组数据 { printf("%dn",a[i]); } for(i=0;in;i++) { s=(LinkList *)malloc(sizeof(LinkList)); s-data=a[i]; r-next=s; r=s; } r-next=NULL; return 0;}
  • 类型冲突:char!=intElemType=char,但a是int数组

C语言 老是提示找不到 标识符 f ,把f函数放到主函数前面就不提示了,一定要放到前面去么?好评立刻

  • #includestdio.h#includeWindows.hint main(){int i, j;for (i = 1; i = 9; i++){for (j = 1; j = i; j++){printf("%dx%d=%d ", i, j, j*i);}printf("n");}f();system("pause");return 0;}void f(){printf("你好n");}
  • 请在使用前声明你的函数,以下代码仅供参考:void f();int main(){int i, j;for (i = 1; i = 9; i++){for (j = 1; j = i; j++){printf("%dx%d=%d ", i, j, j*i);}printf("n");}f();system("pause");return 0;}void f(){printf("你好n");}

本人用C语言写了一个猜拳游戏,运行结果如图:求大神解释如何修改才能使使用第二个主函数时结果正常?

  • 本人用C语言写了一个猜拳游戏,运行结果如图:求大神解释如何修改才能使字符型的do….while判断语句符合要求(第二个主函数)…..运用第一个主函数时的运行结果:运用第二个主函数时的运行结果:代码如下:#includestdio.h#includetime.h int User_Choice(){ int u; do { printf("请出拳(1-石头,2-剪刀,3-布):"); scanf("%d",&u); switch(u) { case 1:printf("你出的是石头!n");break; case 2:printf("你出的是剪刀!n");break; case 3:printf("你出的是布!n");break; default:printf("你的输入有误,请重新输入!n");continue; } }while(u1||u3); return u;} int Computer_Choice(){ int c; srand(time(0)); c=rand()%3+1; switch(c) { case 1:printf("电脑出的是石头!n");break; case 2:printf("电脑出的是剪刀!n");break; case 3:printf("电脑出的是布!n");break; } return c;} void Compare(int c, int u){ if((u==1 && c==2)||(u==2 && c==3)||(u==3 && c==1)) printf("你赢了!n"); if((c==1 && u==2)||(c==2 && u==3)||(c==3 && u==1)) printf("电脑赢了!n"); if(u==c) printf("你和电脑打平了!n");}void main(){ int c,u; int flag=1; do { u=User_Choice(); c=Computer_Choice(); Compare(c,u); printf("还要继续玩吗?(10):"); scanf("%d",&flag); if(flag==0) break; }while(flag==1); printf("谢谢使用!欢迎下次再玩!n");}*void main(){ int c,u; char ans; do { u=User_Choice(); c=Computer_Choice(); Compare(c,u); printf("还要继续玩吗?(yn):"); scanf("%c",&ans); if((ans==n)||(ans==N)) break; }while((ans==y)||(ans==Y)); printf("谢谢使用!欢迎下次再玩!n");}*
  • strcmp(ans, n)

我做C语言题时为什么要写主函数

  • C语言,子函数在主函数的后面,就需要把子函数声明写在main函数的前面;如果子函数在主函数的前面,子函数就不需要声明,在main函数里可以直接调用

c语言中主函数main的作用,没有主函数,也可以编程啊?

  • 是一个程序的入口,如果没有这个函数,程序是没有办法执行的。一个程序里至少要有一个主函数main()

c语言设计函数用于计算数组中存放的数据的平均值,最大值和最小值,将三个结果用全局变量传回主调函数?

  • 实验用全局变量实现用函数计算多个值得程序设计
  • 在函数的外部定义三个变量:平均值、最大值和最小值,在函数调用时,这三个变量要使用指针的形式来作为参数,然后在函数中计算整个数据的总和,把全部数据的总和除以元素的个数就得到了平均值,在求总和的过程中,顺便用打擂台的方法求出最大值和最小值整个函数就可以结束了。

C语言编程:主函数输入一行有空格和数字的字符串,求这行字符串的缩写,怎么编?

  • 要求:1)在主函数中输入字符串,有空格数字和字母。2)自定义函数char *strToS(char *str)形成缩写。缩写规律:A)提取每个单词的第一个字母形成缩写;B)数字开头或长度不足4个字母的单词不进入缩写。3)缩写结果以大写存放在输入字串的数组中。4)在主函数中输出。
  • 代码文本:#include "stdio.h"#define N 300char *strToS(char *str){ char s[N/3],t[25],*pend,*p; int i,j,k,n; for(pend=str;*pend;pend++);//求str长度,记结束地址 for(pend–,j=0,p=str;ppend;p+=n){ sscanf(p,"%s%n",t,&n); for(k=0;t[k];k++); if(k3 && (t[0]=a && t[0]=z || t[0]=A && t[0]=Z)) s[j++]=t[0]&0xDF;//记录缩写并变成大写 } for(s[j]=i=0;str[i]=s[i];i++); return str;}int main(int argc,char *argv[]){ char str[N]; printf("Please enter a string contain Spaces and figures…n"); fgets(str,N,stdin); printf("nAbbreviations results: %sn",strToS(str)); return 0;}

c语言中主函数中定义的变量,调用函数里还需要再定义吗?

  • C语言中主函数中定义的变量只能在主函数中使用,所以你还得再定义一个变量。当然,捏可以把主函数中定义的这个变量传递给被调用的函数作为参数。例如void fun(int x){}main(){int num=9;fun(9);}但是如果你要在被调用函数中使用这个变量例如fun(){num++;}像这样,就是错的,编译器会报错,main中定义的变量是局部变量,只能在main中使用。你可以在main外部定义一个变量,这样在被调用函数中也就可以使用了。

关于C语言在主函数 main 的返回值为0

  • #includestdio.hint main(void){int i = 99;printf(“%d”,i);return 0;}就上面这个函数 来理解返回值0。我想问一下。我是不是可以这样理解。主函数main 在执行中 流程是 执行i 给i赋值 99 然后输出 i 然后 返回值0 然后0 就交给操作系统 ,操作系统就去执行这个输出99在屏幕上,那么如果 在主函数 在执行 中 给i赋值99的时候 出错(这个出错是假设), 那么程序就无法继续往下操作,那么这个时候 函数是否就会自动返回-1给操作系统。然后操作系统来终止这个函数?这里的返回值 我理解的意思 在主函数中,无论你如何对函数内部进行处理,但是必须要经行到return 0这一步。不然 就代表这个函数是失败的。?另外如果 我为retrun -1,一般的操作系统是否就不会对这个函数进行处理呢?
  • 你的理解有误。首先,这段代码是先执行了输出99在屏幕上,然后在退出之前才返回的0。而不是正常退出了之后系统才去处理输出。其次,返回多少是程序员自己控制的,你喜欢将你上面代码的return 0改成return -1,程序就返回-1出去。另外,程序出错的时候,也不会自动返回什么值给系统,全都是程序员自己代码控制。而至于返回出去的值怎么使用,也不是操作系统自己处理,而是外部调用的人自己根据需要控制。例如如果B程序是被A程序在程序中调用的,A程序就可以检查B程序的返回值来进行相应处理。而一些脚本,批处理也可以检查程序返回值来进行正确的操作。至于返回什么代表什么,是这个程序的开发者自己制定。只是,一般习惯上,都在运行正常,正常退出的时候return 0.