笔试题函数返回值

2024-08-04

笔试题函数返回值(通用4篇)

笔试题函数返回值 篇1

3.Stack R,from the top to bottom:{2,3,4,5,6},逐个取出放入Queue Q ,再从Q中逐个取出放入R中,问现在

从上到下R中元素的排列?

4.在你自己定义的类中有什么是CLASSVIEW不会为你做的:

(a) 析构器。 (b)拷贝构造函数 (c)构造函数 (不记得有没有这一项了) (d)(不记得了)

5.写出程序的结果:___________ __________________

int funa(int *a)

{

a[0] ++;

}

int funb(int b[])

{

b[1] += 5;

}

笔试题函数返回值 篇2

每年的数学高考试题中都有“源于课本”的试题, 其中有一类题型在2009年和2010年连续两年出现在全国Ⅱ卷的试题中, 另外在2008年、2007年、2006年其他省份的考题中都有相类似的题型出现.做这类题时, 许多学生会进行一系列推导才能得出结果.如果把教材中的例题结论作为公式来应用, 那么会快速地计算出结果.而在高一学这部分内容时, 会忽视例题的结论.因为同角三角函数的基本关系中没有这组公式.这组公式是怎样的呢?首先来看一下高考试题:

(2010年全国Ⅱ文科13) 已知α是第二象限角, tanα=-12, 则cosα=.

(2009年全国Ⅱ卷理科3文4) 已知△ABC中, cotA=-125, 则cosA等于 ( ) .

A.1213B.513C.-513D.-1213

这是一道典型的“知一求五”的题型, 即已知任意角的六个三角函数值sinα, cosα, tanα, cotα, secα, cscα中的一个, 可以求出另外五个值, 是高中数学第四章三角函数中第四节“同角三角函数的基本关系”里的公式应用, 在课本中共有3道例题, 分别为:

例1 已知sinα=45, 并且α是第二象限角, 求cosα, tanα, cotα的值.

例2 已知cosα=-817, 求sinα, tanα的值.

例3 已知tanα为非零实数, 用tanα表示sinα或cosα.

第一题是“知角α范围且知α的一种三角函数值求其余三角函数值”;

第二题是“知角α的一种三角函数值求其余三角函数值”;

第三题是“知α的一种三角函数值 (此值用字母表示) , 求其余三角函数值”.

三个例题是由简到难依次递进讲述这个题型, 此题型中, 已知sinα或cosα求其余三角函数值较为简单, 由平方关系sin2α+cos2α=1, 得cosα=±1-sin2αsinα=±1-cos2α, 再根据“商的关系”“倒数关系”求出其余函数值.

若是知tanα, 求sinα, cosα, 课本中以例题的形式推出一个结果, 即

cosα={11+tan2α (α) -11+tan2α (α) .sinα={tanα1+tan2α (α) -tanα1+tan2α (α) . (1)

这两个式子是例题推出的结果, 没有包含在“同角三角函数的基本关系”的几组公式中, 学生一般学过后也不重视, 而且这组式子看起来很复杂, 函数值的符号容易记错, 根据我多年的经验, 我认为要在高一讲新课时将例3的结果要重点强调, 作为一个公式对待, 在高三复习时再强调一下, 这样若在高考中遇见此类题型就会大大节省考试时间.而作为公式就要将它的形式变形, 要变得简单、好记才行.我们可以将上面的式子改为:

cosα=±11+tan2α (符号看α所在的象限) ,

sinα=±tan2α1+tan2α (符号看α所在的象限) . (2)

这组公式 (2) 与前面的式子 (1) 相比, 没有将tan2α开方, 这样就可以根据:若α在一、二象限sinα为正值, 若α在三、四象限sinα为负值, 快速判断出符号, cosα的符号判断方法也是一样, 当α在一、四象限cosα为正值, 当α在二、三象限cosα为负值, 与前面所学任意角的三角函数值的符号规律一致, 相比课本上的式子在符号上不易出错.有了这个公式, 凡是已知正切值求其余三角函数值, 不用推导就可以准确求值.上面2010年的考题解为:

因为α是第二象限角,

所以cosα=-11+tan2α=-11+ (-12) =-255.

这种解法快速、准确, 公式也不难记忆.统计一下, 发现每年高考试题中, 在不同省份的考题中都会出现此类已知正切值求正弦、余弦的题型, 因此在平时的教学中, 要重视这个公式, 这也是我写这篇文章的目的, 这个公式会使我们在解题中事半功倍.

C语言函数说明与返回值 篇3

关键词:C语言;函数说明;返回值

函数的一般形式是:type-specifier function_name(parameter list)parameter declarations{body of the function}类型说明符定义了函数中return语句返回值的类型,该返回值可以是任何有效类型。如果没有类型说明符出现,函数返回一个整型值。参数表是一个用逗号分隔的变量表,当函数被调用时这些变量接收调用参数的值。一个函数可以没有参数,这时函数表是空的。但即使没有参数,括号仍然是必须要有的。参数说明段定义了其中参数的类型。当一个函数没有明确说明类型时,C语言的编译程序自动将整型(int)作为这个函数的缺省类型,缺省类型适用于很大一部分函数。当有必要返回其它类型数据时,需要分两步处理:首先,必须给函数以明确的类型说明符;其次,函数类型的说明必须处于对它的首次调用之前。只有这样,C编译程序才能为返回非整型的值的函数生成正确代码。

一、函数的类型说明可将函数说明为返回任何一种合法的C语言数据类型

类型说明符告诉编译程序它返回什么类型的数据。这个信息对于程序能否正确运行关系极大,因为不同的数据有不同的长度和内部表示。返回非整型数据的函数被使用之前,必须把它的类型向程序的其余部分说明。若不这样做,C语言的编译程序就认为函数是返回整型数据的函数,调用点又在函数类型说明之前,编译程序就会对调用生成错误代码。为了防止上述问题的出现,必须使用一个特别的说明语句,通知编译程序这个函数返回什么值。下例示出了这种方法。

第一个函数的类型说明sum()函数返回浮点类型的数据。这个说明使编译程序能够对sum()的调用产生正确代码。函数类型说明语句的一般形式是:type_specifier function_name(;)即使函数使用形参,也不要将其写入说明句。若未使用类型说明语句,函数返回的数据类型可能与调用者所要求的不一致,其結果是难以预料的。如果两者同处于一个文件中,编译程序可以发现该错误并停止编译。如果不在同一个文件中,编译程序无法发现这种错误。类型检查仅在编译中进行,链接和运行时均不检查。因此,必须十分细心以确保绝不发生上述错误。当被说明为整型的函数返回字符时,这个字符值被转换为整数。因为C语言以不加说明的方式进行字符型与整型之间的数据转换,因而多数情况下,返回字符值的函数并不是说明为返回字符值,而是由函数的这种字符型向整型的缺省类型转换隐含实现的。

二、返回语句

返回语句return有两个重要用途。第一,它使得内含它的那个函数立即退出,也就是使程序返回到调用语句处继续进行。第二,它可以用来回送一个数值。本章将说明这两个用途。

(一)从函数返回函数可以用两种方法停止运行并返回到调用程序

第一种是在执行完函数的最后一个语句之后,从概念上讲,是遇到了函数的结束符“}”(当然这个花括号实际上并不会出现在目标码中,但我们可以这样理解)。例如,下面的函数在屏幕上显示一个字符串。

一旦字串显示完毕,函数就没事可做了,这时它返回到被调用处。在实际情况中,没有多少函数是以这种缺省方式终止运行的。因为有时必须送回一个值,大多数函数用return语句终止运行,有时在函数中设立了多个终止点以简化函数、提高效率。切记,一个函数可以有多个返回语句。如下所示,函数在s1、s2相等时返回1,不相等时返回-1。

(二)返回值所有的函数

除了空值类型外,都返回一个数值。该数值由返回语句确定。无返回语句时,返回值是0。这就意味着,只要函数没有被说明为空值,它就可以用在任何有效的C语言表达式中作为操作数。这样下面的表达式都是合法的C语言表达式。x=power(y);if(max(x,y)>100)printf(“greater;”)for(ch=getchar();isdigit(ch);)...;可是,函数不能作为赋值对象,下列语句是错误的:swap(x,y)=100;C编译程序将认为这个语句是错误的,而且对含有这种错误语句的程序不予编译。所有非空值的函数都会返回一个值。我们编写的程序中大部分函数属于三种类型。第一种类型是简单计算型-函数设计成对变量进行运算,并且返回计算值。计算型函数实际上是一个“纯”函数,例如sqr()和sin()。第二类函数处理信息,并且返回一个值,仅以此表示处理的成功或失败。例如write(),用于向磁盘文件写信息。如果写操作成功了,write()返回写入的字节数,当函数返回-1时,标志写操作失败。最后一类函数没有明确的返回值。实际上这类函数是严格的过程型函数,不产生值。如果读者用的是符合ANSI建议标准的C编译程序,那么所有这一类函数应当被说明为空值类型。奇怪的是,那些并不产生令人感兴趣的结果的函数却无论如何也要返回某些东西。例如printf( )返回被写字符的个数。然而,很难找出一个真正检查这个返回值的程序。因此,虽然除了空值函数以外的所有函数都返回一个值,我们却不必非得去使用这个返回值。有关函数返回值的一个常见问题是:既然这个值是被返回的,我是不是必须把它赋给某个变量?回答是:不必。如果没有用它赋值,那它就被丢弃了。请看下面的程序,它使用了mul( )函数。mul( )函数定义为:int mul(int x, int y){......}

笔试题main 主函数 篇4

main 主函数执行完毕后,是否可能会再执行一段代码,给出说明?

答案:可以,可以用_onexit 注册一个函数,它会在main 之后执行int fn1(void), fn2(void), fn3(void), fn4 (void);

void main( void )

{

String str(“zhanglin”);

_onexit( fn1 );

_onexit( fn2 );

_onexit( fn3 );

_onexit( fn4 );

printf( “This is executed first. ” );

}

int fn1

{

printf( “next. ” );

return 0;

}

int fn2()

{

printf( “executed ” );

return 0;

}

int fn3()

{

printf( “is ” );

return 0;

}

int fn4()

{

printf( “This ” );

return 0;

}

上一篇:玫瑰盛典开业致辞下一篇:路政下半年工作计划