㈠ c语言程序中,若对函数返回值类型未加显式说明,则函数返回值的隐含类型为什么类型
c语言程序中,若对函数返回值类型未加显式说明,则函数返回值的隐含类型为
int类型
㈡ 在c语言程序中,若对函数类型未加说明,则该函数的隐含类型为void
这句话是错误的。
在C语言程序中,如果我没没有对函数的类型进行说明的话,那么函数的默认类型是int类型的,也就是说函数必须返回一个int型的返回值。
C语言函数是一种函数,用来编译C语言,一般包括字符库函数,数学函数,目录函数,进程函数,诊断函数,操作函数等。
函数是理解面向过程和面向对象的切入点。通过 C 语言的函数可以直观地辨别出面向过程和面向对象的区别。
(2)c语言对函数类型未加显式说明扩展阅读:
C语言函数定义和使用:
在使用函数之前应该先声明,事先通知编译器该函数的类型:
换句话说,一个声明即是描述一个函数的接口。声明至少应指明函数返回值的类型,如下例所示:int rename();。
该声明没有包含关于函数参数的数量和类型等相关信息。因此,编译器无法检查调用该函数时所传入的参数是否正确。如果调用该函数时传入的参数有别于该函数的定义,那么会导致严重的运行错误。
通常,可以将自己所定义的函数原型放在一个头文件中,这样在其他任何源代码文件中,通过 include 命令来包含该头文件,则可以使用这些函数。
当声明某个函数,其参数是长度可变数组,除了在函数定义的头部,其他地方都可以使用星号(*)来表示数组长度。
㈢ c语言练习题
1、以下说法中正确的是____。(C)
A、C语言程序总是从第一个函数开始执行
B、在C语言程序中,要调用的函数必须在main()函数中定义
C、C语言程序总是从main()函数开始执行
D、C语言程序中的main()函数必须放在程序的开始部分
2、某文件中定义的静态全局变量(或称静态外部变量)其作用域是_____。(B)
A、只限某个函数
B、本文件
C、跨文件
D、不限制作用域
3、下列叙述中正确的是_____。(A)
A、函数定义不能嵌套,但函数调用可以嵌套
B、函数定义可以嵌套,但函数调用不可以嵌套
C、函数定义和函数调用都不能嵌套
D、函数定义与函数调用都可以嵌套
4、以下说法中正确的是_____。(A)
A、#define和printf都是C语句
B、#define是C语句,而printf不是
C、printf是C语句,但#define
D、#define和printf都不是C语句
5、以下关于函数叙述中,正确的是_____。(D)
A、在函数体中可以直接引用另一个函数中声明为static类别的局部变量的值
B、在函数体中至少必须有一个return 语句
C、在函数体中可以定义另一个函数
D、在函数体中可以调用函数自身
6、在C语言中,若对函数类型未加显式说明,则函数的隐含类型是______。(A)
A、void
B、double
C、int
D、char
7、下面不正确的描述为______。(A)
A、调用函数时,实参可以是表达式
B、调用函数时,实参与形参可以共用内存单元
C、调用函数时,将为形参分配内存单元
D、调用函数时,实参与形参的类型必须一致
8、在一个源文件中定义的全局变量的作用域为______。(D)
A、本文件的全部范围
B、本程序的全部范围
C、本函数的全部范围
D、从定义该变量开始至本文件结束
9、以下叙述中,错误的是______。(D)
A、不同函数中可以使用相同名字的变量
B、在函数外部定义的变量是全局变量
C、形式参数是局部变量
D、在main函数体内定义的变量是全局变量
10、C语言规定,调用一个函数时,当实参和形参都是普通变量时,它们之间数据传递的方式是______。(B)
A、地址传递
B、单向值传递
C、双向值传递
D、由用户定义传递方式
11、若用数组名作为函数调用的实参,则传递给形参的是______。(A)
A、数组的首地址
B、数组的第一个元素的值
C、数组中全部元素的值
D、数组元素的个数
12、C语言规定,函数返回值的类型是______。(D)
A、return语句中的表达式的类型
B、调用该函数时的主调函数的类型
C、由系统确定
D、该函数定义时的类型
13、若一个void型函数定义中没有return语句,则调用该函数时,函数______。(A)
A、没有返回值
B、返回若干个系统默认值
C、返回一个用户所希望的函数值
D、返回一个不确定的值
14、以下有关C语言的叙述中,错误的是______。(A)
A、函数调用可以作为独立的语句出现
B、函数调用可以出现在表达式中
C、函数调用可以作为函数的实参
D、函数调用可以作为函数的形参
15、以下程序输出结果是__________。(B)
#include <stdio.h>
int i=10;
main()
{int j=1;
j=fun();
printf("%d,",j);
j=fun();
printf("%d",j);
}
fun()
{int k=0;
k=k+i;
i=i+10;
return (k);
}
A、0,0
B、10,20
C、10,10
D、20,20
㈣ C语言程序中,若对函数类型未加显式说明,则函数的隐含类型为( )类型。。。应该是int还是void
错误的。如果没有对函数类型未加说明,则该函数默认为隐含类型int,即返回值必须为int型。
㈤ 在C语言程序中,若对函数类型未加说明,则函数的隐含类型为( ) A、voidB、dou
在C语言程序中,若对函数类型未加说明,则函数的隐含类型为( int )
㈥ 极其简单的C语言试卷,帮忙做一下,要求100%正确,一个小时后要答案!!高分!高分!高分!高分!
1、下面标识符中,均为不合法的用户标识符为( C )。
A、AB、x_0、for B、float、1a0、_Y
C、x-y、goto、123 D、_123、tmp、CHAR
2、执行printf(“%x”, 100);后的输出结果为( D )。
A、100 B、0x100
C、0x64 D、64
6、能表示条件-100≤x≤100的C语言表达式是( D )。
A、-100<=x<=100 B、x>=-100, x<=100
C、-100≤x≤100 D、x>=-100 && x<=100
7、C程序中,注释部分的位置( D )。
A) 必须在一行的开始 B) 必须在语句之后
C) 必须在一行的最后 D) 以上三种都可以
8、结构化程序的三种基本结构是( A )。
A、顺序结构、选择结构、循环结构 B、递归结构、循环结构、转移结构
C、嵌套结构、递归结构、循环结构 D、循环结构、转移结构、顺序结构
9、对数组的描述正确的是( B )。
A、 数组一旦定义其大小是固定的,但数组元素的类型可以不同
B、 数组一旦定义其大小是固定的,但数组元素的类型必须相同
C、 数组一旦定义其大小是可变的,但数组元素的类型可以不同
D、 数组一旦定义其大小是可变的,但数组元素的类型必须相同
10、设有说明语句:char a=’\72’;,则变量a( A )。
A、包含1个字符 B、包含2个字符
C、包含3个字符 D、说明不合法
11、以下叙述不正确的是( D )。
A、一个C程序可由一个或多个函数组成
B、一个C程序必须包含一个main函数
C、C程序的基本组成单位是函数
D、在C程序中,注释说明只能位于一条语句的后面
12、C语言用( C )表示逻辑“真”值。
A、t B、y C、非0整数值 D、整数1
13、C语言程序中,若对函数类型未加显式说明,则函数的隐含类型为( C )类型。
A、void B、double C、int D、char
判断题:
1、unsigned 和void 在C中都是保留的关键字。
真
2、7/2+12的值是15.5。
假
3、C语言中一个int的变量在内存中占2个字节。
假
4.注释内容太多会影响程序的执行效率。
假
5、void play(int a, b) ; 是一个合法的函数说明。
假
6.在main函数中说明的变量,有效范围是main函数及其调用的函数。
假
7、C语言中的函数可以嵌套调用,也可以递归调用。
真
8、程序段 int x; 1=x; 是正确的。
假
9、对于 for(j=1;j<=20;j++)形式的循环语句,肯定要执行20次循环。
假
10、对于字符串 ”welcome\0”,使用strlen函数所求出的字符串长度是7
真
1、一个函数如下,用程序实现。
y =x(x<0)
y=2x-1(0<=x<10)
y=3x-11(x>=10)
main()
{
float x, y;
scanf(“%f”, &x);
If (x<0)
y = x;
else
if ( x<10 ) ;
y = ( 2*x - 1 );
else
y =( 3*x-11 );
printf(“y=%f”, y);
return 1;
}
2、下面程序的功能为:把100~200之间的不能被3整除的数输出,请填空。
main( )
{int n;
for ( n=100 ;n<=200; n++)
{
if (n%3= =0)
printf("%d\n",n);
}}
四:写出程序的输出结果:
1. main() {
int a=6,b=4;
a = a+b; //a=6+4 所以a=10
b = a−b; //b=10-4 所以b=6
a = a-b; //a=10-6 所以a=4
printf(“a=%d, b=%d”, a, b);
}
所以输出结果 a=4 b=6;
2. main(){
int m,n;
for (m=5;m<=10;m++)
for (n=2;n<=m-1;n++)
if (m%n==0)
printf(“%d\t”,m);
}
6 6 8 8 9 10 10