c语言调用函数
发布网友
发布时间:2022-04-29 22:50
我来回答
共3个回答
热心网友
时间:2022-04-30 16:52
可以的,前提是,在使用一个函数之前必须先对他进行声明:
//void B();声明B函数的存在。
void A()
{
B();//非法,程序执行到此时并不知道B函数的存在。
}
void B()
{
}
或者
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int fa(int n)
{
int a;
for(a=2;a<=sqrt(n*1.0),n%a!=0;a++);
if(a>sqrt(n*1.0))
return(1);
else
return(0);
}
void main( )
{
int n,q;
scanf("%d",&n);
扩展资料
从函数定义的角度看,函数可分为库函数和用户定义函数两种。
(1)库函数
由C系统提供,用户无须定义, 也不必在程序中作类型说明,只需在程序前包含有该函数原型的头文件即可在程序中直接调用。在前面各章的例题中反复用到printf 、 scanf 、 getchar 、putchar、gets、puts、strcat等函数均属此类。
(2)用户定义函数
由用户按需要写的函数。对于用户自定义函数, 不仅要在程序中定义函数本身, 而且在主调函数模块中还必须对该被调函数进行类型说明,然后才能使用。
热心网友
时间:2022-04-30 18:10
int sca_n( int a[ ] )
{
int i ,n ;
cin >> n ;
for (i = 0 ; i < n ; i ++)
{
cin >> a[i] ;
}
return n ;
}
//功能是:输出数组a中的n个整数,并换行。
void prt( int a[ ], int n )
{
for (int i = 0 ; i < n ; i ++)
{
cout << a[i] << endl;
}
}
//功能是:对数组a中的n个整数按升序排序。
void sort( int a[ ], int n)
{
int nTemp ;
for (int i =0 ; i < n ; i ++)
{
for (int y = i+1 ; y < n ; y++)
{
if(a[i] >a[y])
{
nTemp = a[i];
a[i] = a[y];
a[y] = nTemp ;
}
}
}
}
void merger(int a[ ], int n, int b[ ], int m, int c[ ])
{
int nCountI ;
int nCountY ;
for (nCountI = 0 ; nCountI < n ; nCountI++)
{
c[nCountI] = a[nCountI];
}
for (nCountY = 0 ; nCountY < m ; nCountY++)
{
nCountI ++;
c[nCountI] = b[nCountY];
}
}
热心网友
时间:2022-04-30 19:45
#include <stdio.h>
#define MAXSIZE 15
int sca_n(int a[])
{
int i;
int n;
scanf("%d", &n);
for (i=0; i<n; i++)
{
scanf("%d", &a[i]);
}
return n;
}
void sort(int a[], int n)
{
int i, j, t;
for (i=0; i<n; i++)
{
for (j=i+1; j<n; j++)
{
if (a[i] > a[j])
{
t = a[i];
a[i] = a[j];
a[j] = t;
}
}
}
}
void merger(int a[], int n, int b[], int m, int c[])
{
int i = 0;
int j = 0;
int k = 0;
while ((n > i) && (m > j))
{
if (a[i] < b[j])
{
c[k++] = a[i++];
}
else
{
c[k++] = b[j++];
}
}
if (n != i)
{
while (n > i)
{
c[k++] = a[i++];
}
}
else
{
while (m > j)
{
c[k++] = b[j++];
}
}
}
void prt( int a[], int n )
{
int i;
for (i=0; i<n; i++)
{
printf("%d ", a[i]);
}
printf("\n");
}
int main(void)
{
int n, m;
int a[MAXSIZE];
int b[MAXSIZE];
int c[MAXSIZE<<1];
n = sca_n(a);
m = sca_n(b);
sort(a, n);
sort(b, m);
merger(a, n, b, m, c);
prt(c, n+m);
return 0;
}