C语言函数章节选择题

合集下载

大一C语言选择题及答案

大一C语言选择题及答案

第1章C语言程序设计概述一.选择题1.以下叙述中正确的是(A)A.C语言程序中注释部分可以出现在程序中任意合适的地方B.花括号“{”和“}”只能作为函数体的定界符C.构成C语言程序的基本单位是函数,所有函数名都可以由用户命名D.分号是C语言语句之间的分隔符,不是语句的一部分2.以下叙述中错误的是(A)A.用户所定义的标识符允许使用关键字B.用户所定义的标识符应尽量做到“见名知意”C.用户所定义的标识符必须以字母或下划线开头D.用户所定义的标识符中,大,小写字母代表不同标识3.下列关于C语言用户标识符的叙述中正确的是(B)A.用户标识符中可以出现下划线和中划线(减号)B.用户标识符中不可以出现中划线,但可以出现下划线C.用户标识符中可以出现下划线,但不可以放在用户标识符的开头D.用户标识符中可以出现下划线和数字,它们都可以放在用户标识符的开头4.以下关于C语言标识符的描述中,正确的是(D)A.标识符可以由汉子组成B.标识符只能以字母开头C.关键字可以作为用户标识符D.Area与area是不同的标识符5.以下正确叙述是(C)A.在C语言中,main函数必须位于文件的开头B.C语言每行只能写一条语句C.C语言本身没有输入,输出语句D.对一个C语言进行编译预处理时,可检查宏定义的语法错误6.下面说法正确的是(C)A.C程序由符号构成B.C程序由标识符构成C.C程序由函数构成D.C程序由C语句构成7.以下叙述不正确的是(D)A.一个C源程序可以由一个或多个函数组成B.一个C源程序必须包含一个main函数C.C程序的基本组成单位是函数D.在C程序中,注释说明只能位于一条语句后面8.C语言规定:在一个源程序中,main函数的位置可以任意9.以下不能定义为用户标识符的是(D)A.scanfB.V oidC._3comD.int10.以下不合法的用户标识符是(C)A。

j2_KEY B.Double C.4d D._8_11.下列四组选项中,均不是C语言关键字的是(A)A.define IF typeB.getc char printfC.include scanf caseD.while go pow12.以下不能定义为用户标识符的是(D)A.MainB._0C._intD.sizeof13.以下不合法的用户标识符是(C)A。

C语言选择题第一部分

C语言选择题第一部分

C语言选择题第一部分1. 以下对C程序的描述中正确的是(C)。

A) C程序总是从第一个定义的函数开始执行。

B) C程序总是从最后一个定义的函数开始执行。

C) C程序总是从main()函数开始执行。

D) C程序中的main()函数必须放在程序的开始部分。

2. 关于C程序第1行的包含语句,以下写法中正确的是D)。

A) #include stdio.hB) #include 'stdio.h'C) #include (stdio.h)D) #include <stdio.h>3. 关于C语言程序,正确的编程流程应该是:(A)。

A) 编辑→保存→编译→运行B) 编译→编辑→运行→保存C) 保存→运行→编辑→编译D) 运行→编译→保存→编辑4. 以下选项中正确的C语言常量是(C)。

A) 0xEfGhB) 'XYZ'C) 12.34e5D) '\5A'5. 以下选项中,合法的C语言用户标识符是(D)。

A) b-aB) 5abC) intD) INT6. 以下选项中,三种类型都是C语言的基本类型的是(C)。

A) int, long, realB) integer, short, doubleC) int, float, charD) int, decimal, char7. 设int n=-1; 则n在内存中的16位编码是(A)。

A) 1111 1111 1111 1111B) 1000 0000 0000 0001C) 1111 1111 1111 1110D) 0000 0000 0000 00008. 设要定义n为整型变量,定义x为双精度实型变量,正确的语句是C)。

A) int n, double x,B) int n, double x;C) int n; double x;D) int n; double x,9. 以下四项中,不合法的C语言用户标识符是(D)。

C语言各章节练习题(含答案)

C语言各章节练习题(含答案)
A) define IF type B) getc char printf
C) include case scanf D) while go pow
3. 下列四组选项中,均是不合法的用户标识符的选项是 。
4. 设有:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b)&&(n=c>d)后n的值为 B 。
A) 1 B) 2 C) 3 D) 4
5. 以下程序的运行结果是 B 。
main()
{ int a,b,d=241;
2. printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列。如果字符串长度大于5,则输出按方式 B ;如果字符串长度小于5,则输出按方式 C 。
A) 从左起输出该字符串,右补空格 B) 按原字符长从左向右全部输出
C) 右对齐输出该字符串,左补空格 D) 输出错误信息
a=d/100%9;
b=(-1)&&(-1);
printf(“%d,%d”,a,b);
} A) 6,1 B) 2,1 C) 6,0 D) 2,0
四、逻辑运算与判断选取控制
选择 1. 逻辑运算符两侧运算对象的数据类型 D 。
A) 只能是0和1 B) 只能是0或非0正数 C) 只能是整型或字符型数据 D) 可以是任何类型的数据
2. 判断char型变量ch是否为大写字母的正确表达式是 C 。
11.设有说明:char w; int x; float y; double z;则表达式w*x+z-y值的数据类型为 。
A) float B) char C) int D) double
12.设以下变量均为int类型,则值不等于7的表达式是 。

(完整版)C语言选择题(附答案)

(完整版)C语言选择题(附答案)

第一单元C语言概述一、选择题1、C语言中主函数的个数为(A)个。

A)1 B)2C)无穷个D)任意个2、以下关于C语言描述错误的是(D)。

A)一个C程序总是从main函数开始执行TB)每个语句和数据声明的最后必须有一个分号TC)C语言的注释符是以“/*”开始并以“*/”结束的TD)一个C程序可以包含多个main函数F3、C 语言源程序文件后缀为(C )。

A).EXE B).OBJ C).C D).ASM4、C语言是由(C )组成的。

A)子程序B)主程序与子程序C)函数D)过程5、C语言属于(B )语言A)机器语言B)汇编语言C)高级语言D)面向对象语言第二单元C语言基础一、选择题1、C语言中普通整型变量int在内存中占(B )字节。

A)1 B)2 C)3 D)42、下列不是C语言基本数据类型的是(A )。

A)字符型B) 整型C) 浮点型D) 结构体3、有关自增、自减运算,以下只有(D )是正确的。

A) ---f B) ++78 C) a—b++ D) d++4、已知A=7.5,B=2,C=3.6,表达式(A>B && C>A) || (A<B && !C>B)的值是(A )。

A)0 B)10 C)1 D)55、若有x=1,y=2,z=3,则表达式(x<y?x:y)= =z的值是(D )。

A)1 B)2 C)3 D)06、判断char型变量ch是否为大写字母的正确表达式是(C )。

A) ‘A’<=ch<=‘Z’B) (ch>=‘A’)&(ch<=‘Z’)C) (ch>=‘A’)&&(ch<=‘Z’) D) (‘A’<= ch)AND(‘Z’>= ch)7、判断整型变量digit是否为数字的正确表达式是(C )。

A) ‘0’<=ch<=‘9’B) (ch>=‘0’)&(ch<=‘9’)C) (ch>=‘0’)&&(ch<=‘9’) D) (‘0’<= ch)AND(‘9’>= ch)8、一个C程序的执行是从(A )。

C语言函数章节选择题

C语言函数章节选择题

1.在C语言中,全局变量的存储类别是:A) static B) externC) void D) registerA2.C语言中,凡未指定存储类别的局部变量的隐含存储类别是:A) 自动(auto) B) 静态(static)C) 外部(extern) D) 寄存器(register)A3. 在一个C源程序文件中,要定义一个只允许本源文件中所有函数使用的全局变量,则该变量需要使用的存储类别是:________。

A) extern B) registerC) auto D) staticD4. 若有以下调用语句,则正确的fun函数首部是main(){ ∶∶int a;float x;∶∶fun(x,a);∶∶}A) void fun(int m,float x) B) void fun(float a,int x)C) void fun(int m,float x[]) D) void fun(int x,float a)B5. 有如下函数调用语句func(rec1,rec2+rec3,(rec4,rec5));该函数调用语句中,含有的实参个数是A) 3 B) 4C) 5 D) 有语法错误A6. 以下程序的运行结果是。

#include <stdio.h>main(){ int k=4,m=1,p;p=func(k,m); printf("%d, ",p);p=func(k,m); printf("%d\n",p); }func(int a,int b){ static int m=0,i=2;i+=m+1;m=i+a+b;return m; }A) 8,17, B) 8,17C) 8,8 D) 4,1B7. 函数fun的功能是:根据以下公式计算S,n通过形参传入,n的值大于等于0。

划线处应填________。

1 1 1 1S=1 - ─+ ─- ─+ …───3 5 7 2n-1float fun(int n){ float s=0.0,w,f=-1.0;int i=0;for(i=0;i<=n;i++){________;w=f/(2*i+1);s+=w; }return s; }A) f=1 B) f=-1C) f=-1*f D) f=0C8. 函数fun的功能是:根据以下公式计算并返回S,n通过形参传入,n的值大于等于0。

c语言中函数试题及答案

c语言中函数试题及答案

c语言中函数试题及答案一、选择题1. 在C语言中,以下哪个关键字用于定义函数?A. classB. functionC. defD. int答案:D2. 函数的返回类型是什么?A. 函数执行后返回的数据类型B. 函数的名称C. 函数的参数D. 函数的调用方式答案:A3. 在C语言中,以下哪个函数用于计算两个整数的和?A. strcatB. strcmpC. strcatD. sum答案:D(假设sum是一个自定义的函数)二、填空题1. 在C语言中,定义函数的关键字是________。

答案:int2. 函数的返回值是通过________关键字返回的。

答案:return3. 函数的参数列表定义了函数调用时需要传递的________。

答案:值三、简答题1. 请简述C语言中函数的定义格式。

答案:在C语言中,函数的定义格式通常如下:```returnType functionName(parameterList) {// function body}```其中`returnType`是函数的返回类型,`functionName`是函数的名称,`parameterList`是函数的参数列表,`function body`是函数的执行体。

2. 请解释C语言中函数的调用过程。

答案:C语言中函数的调用过程包括以下步骤:- 调用者准备参数并调用函数。

- 函数接收参数并执行函数体。

- 函数计算结果并通过return语句返回。

- 调用者接收返回值并继续执行。

四、编程题1. 编写一个C语言函数,计算两个整数的和并返回结果。

答案:```cint sum(int a, int b) {return a + b;}```调用示例:```cint result = sum(5, 10);printf("The sum is %d", result); ```。

(完整版)C语言各章练习题

(完整版)C语言各章练习题

目录第一章程序设计和C语言 (2)第二章最简单的C程序设计 (2)第三章选择结构程序设计 (4)第四章循环结构程序设计 (7)第五章数组 (11)第六章函数 (14)第七章指针 (18)第一章程序设计和C语言一、选择题:1.一个C程序的执行是从( )A、本程序的main函数开始,到main函数结束B、本文件第一个函数开始,到本文件的最后一个函数结束C、本程序的main函数开始,到本文件的最后一个函数结束D、本文件的第一个函数开始,到本文件的main结束2.以下说法不正确的是()A、一个C源程序可由一个或多个函数组成B、一个C程序必须包含一个main函数C、C程序的基本组成单位是函数D、在C程序中,注释说明只能位于一条语句的后面3.C语言规定:在一个源程序中,main函数的位置()A、必须在开始B、必须在系统调用的库函数的位置C、可以任意D、必须在最后4.源程序program.c经编译产生的目标文件和连接后产生的可执行文件是( )A、program.bak和program.objB、program.obj和program.exeC、program.exl和program.cD、program.bak和prgram.exe第二章最简单的C程序设计一、选择题1.是合法的用户自定义标识符的( )A、ah-spksB、doubleC、<ctrl>D、_myapple2.以下正确的C语言标识符是()A、%xB、a+bC、a123D、test!3.以下不能定义为用户标识符的是( )A、V oidB、b_2C、intD、name4.以下选项中可作为C语言合法整数的是( )A、11010(B)B、0583C、x2b2D、0xafb5.VC++6.0中的短整型数值在计算机中占用的字节个数是( )A、1B、2C、3D、46.设short int型的数据长度为2个字节,则unsigned short 类型数据的取值范围是()P34A、均为2个字节B、0至65535C、-3276至32767D、-256至255 7.以下选项中可作为C语言合法常量的是()(指数E或e前必须有数字,后面必须有整数)A、-80.0B、-080C、-8e1.2D、-80.0e8.在VC++6.0编译环境下,下列式中,值不为4的表达式是()P34,double为8字节A、sizeof(unsigned long)B、sizeof(long)C、sizeof(unsigned int)D、sizeof(double)9.设有说明语句:char a=’\123’;则变量a( )一个ascii字符A、包含1个字符B、包含2个字符C、3个字符D、说明不合法10.设x为一数字字符,则其所对应的十进制数值为()。

C语言选择题(1-4章期末复习)

C语言选择题(1-4章期末复习)

C语言选择题(1・4章期末复习)第1章1 .以下叙述不正确的是()。

A、C程序的基本组成单位是函数B、在C程序中,注释说明只能位于一条语句的后面C、一个C源程序必须包含一个main函数D、一个C源程序可由一个或多个函数组成2 .C语言的注释定界符是()。

A、V *\B、{}C []D、/**/3 .C语言规定,在一个源程序中,main函数的位置()。

A、必须在最开始B、必须在系统调用的库函数的后面C、必须在最后D、可以任意4 .一个C程序的执行是从()。

A、本程序文件的第一个函数开始,到本程序main函数结束B、本程序的main函数开始,到main函数结束C、本程序的main函数开始,到本程序文件的最后一个函数结束D、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束5 .以下叙述中正确的是()。

A、C程序中注释部分可以出现在程序中任意合适的地方B、分号是C语句之间的分隔符,不是语句的一部分C、花括号〃{〃和〃 }〃只能作为函数体的定界符D、构成C程序的基本单位是函数,所有函数名都可以由用户命名6 .以下叙述正确的是()。

52 .已有定义:int x=3/y=4,z=5; z则表达式!(x+y)+z-l && y+z/2的值是()A、6B、1C、0D、253 .若给定条件表达式(M)?(a + +):(a--),则其中表达式M( )oA、和(M! = l)等价B、和(M = = l)等价C、和(M!=0)等价D、和(M = =0)等价54 .用下列语句定义a , b , c ,然后执行b=a, c='b'+b,则b , c 的值是()olong a=3;int b; char c;A、2 和101B、3 和101C、3 和100D、3 和9955 .表达式18/4*sqrt(4.0)/8值的数据类型为()。

A、不确定B、doubleC、intD、float56 .若a为int类型,且其值为3 ,则执行完表达式a+=a-=a*a后, a 的值是()。

C语言全部章节习题集(参考答案)

C语言全部章节习题集(参考答案)
}
选择结构答案
一、单项选择题
1.B 2.A 3.D 4.C 5.D 6.B 7.C
二、填空题
1. 5 5 4
5 5 4
3 3 4
2. 4 0
3. VeryGood
Good
VeryGood
A. 8 B. 4 C. 2 D. 出错
14、设a=1,b=2,c=3,d=4,则表达式:a<b? a : c<d? a : d的结果为( D )。
A. 4 B. 3 C. 2 D. 1
15、设a 为整型变量,不能正确表达数学关系:10<a<15的 C 语言表达式是( A )。
{ float a,b,temp;
printf("input a and b:");
scanf("%d,%d",&a ,&b);
temp = a; a = b; b = temp;
printf("a=%d , b=%d\n", a , b);
scanf(“%f”,&t);
if(t>=90) ch=’A’;
else if(t>=80) ch=’B’;
24、下列不正确的转义字符是( C )。
A. \\ B. \' C. 074 D. \0
二、填空题:
1、C 语言中的逻辑值“真”是用 1 表示的,逻辑值“假”是用 0 表示的。
2、若x和n都是int型变量,且x的初值为12,n的初值为5,则计算表达式x%=(n%=2)后x的值为 0 。
5、判断变量 a、b 的值均不为 0 的逻辑表达式为a!=0&&b!=0 。

(完整word)C语言分章节练习

(完整word)C语言分章节练习

习题汇编第一章 C语言概述1。

1选择题【题1.1】以下不是C语言的特点的是( B )A。

C语言简洁、紧凑B.能够编制出功能复杂的程序C。

C语言可以直接对硬件进行操作D.C语言移植性好【题1.2】以下不正确的C语言标识符是( D )。

A.ABC B.abc C.a_bc D.ab。

c【题1.3】以下正确的c语言标识符是( C )。

A.%x B.a十b C.a123 D.test!【题1.4】一个c程序的执行是从( A )。

A.main( )函数开始,直到main( )函数结束B.第一个函数开始,直到最后一个函数结束C.第一个语句开始,直到最后一个语句结束D.main( )函数开始,直到最后一个函数结束【题1.5】一个C语言程序是由(B).A)一个主程序和若干子程序组成B)函数组成C)若干过程组成D)若干子程序组成【题1.6】一个c程序是由( B ).A.一个主程序和若干子程序组成B.一个或多个函数组成C. 若干过程组成D.若干子程序组成【题1.7】C语言派程序的基本单位是( B )。

A.过程 B.函数 c子程序 D.标识符【题1.8】编辑程序的功能是( A )。

A.建立并修改程序 B.将c源程序编译成目标程序C.调试程序 D.命令计算机执行指定的操作1.2填空题【题1.9】c语言符号集包括【英文字母、数字和一些有待定含义的标点符号】。

【题1.10】一个c程序有且仅有一个【main()】函数。

【题1.11】C程序的基本单位是【函数】。

【题1.12】一个c程序有【1】个main( )函数和【若干】个其他函数。

【题1.13】在一个C源程序中,注释部分两侧的分界符分别是【/*】和【*/】。

【题1.14】结构化设计中的三种基本结构是【顺序结构、分支结构和循环结构】。

【题1.15】在C语言中,输入操作是由库函数【scanf】完成的,输出函数是由库函数【printf】完成的。

1.3编程题【题1.16】编写一个程序,在屏幕上输出你的姓名。

C语言各章节单元测试题及答案——函数

C语言各章节单元测试题及答案——函数

第5章函数5.1典型考试题剖析5.1.1选择题【例1】下列程序执行后的结果是_______。

#include <stdio.h>f(int a){int b=0;static c=3;a=c++,b++;return(a);}main(){int a=2,i,k;for(i=0;i<2;i++)k=f(a++);printf("%d\n",k);}A) 3 B) 0 C) 5 D) 4✧考点:变量的作用域。

✧分析:此题函数f中的变量c是一个静态变量。

第一次调用函数时,使用的参数是a,值为2,进入子函数f内,变量b=0,c=3,然后语句“a=c++,b++;”是一个逗号表达式,不是赋值表达式,a被赋的值是c的值,不同逗号表达式的值,所以a=3,此时c的值同时变为4;第二次调用函数,使用的参数是a,值为3,进入子函数内,变量b=0,c=4(这是静态变量的特性)。

✧答案:D【例2】下面程序的输出是_______。

int w=3;fun(int k);main(){int w=10;printf("%d\n",fun(5)*w);}fun(int k){ if (k==0)return(w);return(fun(k-1)*k);}A) 360 B) 3600 C) 1080 D) 1200✧考点:函数的递归调用和全局变量。

✧分析:此题涉及到了函数的递归调用和全局变量的用法,最容易出错的地方是变量w,程序首先定义了全局变量w,并赋了初值为3,然后在主函数中又定义了一个局部变量w,并赋初值为10,在子函数中引用了变量w,一定要认清这个变量是全局变量w的值而不是主函数中局部变量w 的值。

✧答案:B【例3】有以下程序#include <stdio.h>int abc(int u,int v);main(){int a=24,b=16,c;c=abc(a,b);printf("%d\n",c);}int abc(int u,int v){int w;while(v){ w=u%v;u=v;v=w;}return(u);}输出结果为。

c语言函数试题及答案

c语言函数试题及答案

c语言函数试题及答案C语言函数试题及答案一、选择题1. 在C语言中,以下哪个关键字用于声明函数?A. intB. voidC. returnD. function2. 以下哪个函数原型声明是正确的?A. void myFunction();B. int myFunction() {}C. int myFunction();D. myFunction(int, int);3. 在C语言中,函数的返回值通过哪个关键字返回?A. returnB. outputC. resultD. yield二、填空题4. 在C语言中,如果一个函数没有返回值,其返回类型应该是________。

5. 函数的参数可以是常量、变量或________。

三、简答题6. 简述C语言中函数的作用。

四、编程题7. 编写一个C语言函数,该函数接受两个整数作为参数,并返回它们的和。

五、分析题8. 阅读以下C语言函数代码,并指出其功能及可能存在的问题。

```cvoid swap(int *x, int *y) {int temp;temp = *x;*x = *y;*y = temp;}```答案:一、选择题1. C2. C3. A二、填空题4. void5. 表达式三、简答题6. 函数在C语言中用于封装一段代码,使其可以重复使用。

函数可以接收参数,执行特定的任务,并可选择性地返回一个值。

四、编程题7.```cint add(int a, int b) {return a + b;}```五、分析题8. 该函数的功能是交换两个整数的值。

它通过指针参数接收两个整数的地址,并在函数内部交换这两个整数的值。

可能存在的问题是,如果传入的参数不是有效的整数地址,或者指针所指向的内存区域不可写,那么将会导致程序错误或崩溃。

c语言分章节试题及答案

c语言分章节试题及答案

c语言分章节试题及答案1. 变量声明- 题目:在C语言中,以下哪个选项是正确的变量声明方式?A. int a = 0;B. int a = 0.0;C. int a = "hello";D. int a = 0, b = 0;- 答案:A和D。

2. 数据类型- 题目:以下哪个选项不是C语言中的基本数据类型?A. intB. floatC. charD. string- 答案:D。

3. 运算符优先级- 题目:在C语言中,以下哪个运算符的优先级最高?A. 乘法B. 加法C. 赋值D. 条件运算符- 答案:A。

4. 函数定义- 题目:以下哪个是正确的C语言函数定义?A. int myFunction(int a, int b) { return a + b; }B. int myFunction(int a, int b) { return a - b; }C. int myFunction(int a, int b) { return a * b; }D. All of the above- 答案:D。

5. 数组初始化- 题目:以下哪个是正确的C语言数组初始化方式?A. int arr[5] = {1, 2, 3, 4, 5};B. int arr[5] = {1, 2, 3};C. int arr[5] = {1, 2, 3, 4};D. int arr[5] = {1, 2, 3, 4, 5, 6};- 答案:A。

6. 指针- 题目:以下哪个选项正确地声明了一个指向整数的指针?A. int *ptr;B. int ptr[];C. int *ptr = 0;D. int ptr = 0;- 答案:A和C。

7. 字符串操作- 题目:以下哪个函数用于比较两个字符串是否相等?A. strcat()B. strcmp()C. strcpy()D. strlen()- 答案:B。

8. 条件语句- 题目:以下哪个是C语言中正确的if语句?A. if (x > 10)x = 20;B. if (x > 10)x = 20C. if (x > 10)x = 20;else x = 10;D. All of the above- 答案:A。

C语言各章节单元测试题及答案——函数

C语言各章节单元测试题及答案——函数

第5章函数5.1典型考试题剖析5.1.1选择题【例1】下列程序执行后的结果是_______。

#include <stdio.h>f(int a){int b=0;static c=3;a=c++,b++;return(a);}main(){int a=2,i,k;for(i=0;i<2;i++)k=f(a++);printf("%d\n",k);}A) 3 B) 0 C) 5 D) 4✧考点:变量的作用域。

✧分析:此题函数f中的变量c是一个静态变量。

第一次调用函数时,使用的参数是a,值为2,进入子函数f内,变量b=0,c=3,然后语句“a=c++,b++;”是一个逗号表达式,不是赋值表达式,a被赋的值是c的值,不同逗号表达式的值,所以a=3,此时c的值同时变为4;第二次调用函数,使用的参数是a,值为3,进入子函数内,变量b=0,c=4(这是静态变量的特性)。

✧答案:D【例2】下面程序的输出是_______。

int w=3;fun(int k);main(){int w=10;printf("%d\n",fun(5)*w);}fun(int k){ if (k==0)return(w);return(fun(k-1)*k);}A) 360 B) 3600 C) 1080 D) 1200✧考点:函数的递归调用和全局变量。

✧分析:此题涉及到了函数的递归调用和全局变量的用法,最容易出错的地方是变量w,程序首先定义了全局变量w,并赋了初值为3,然后在主函数中又定义了一个局部变量w,并赋初值为10,在子函数中引用了变量w,一定要认清这个变量是全局变量w的值而不是主函数中局部变量w 的值。

✧答案:B【例3】有以下程序#include <stdio.h>int abc(int u,int v);main(){int a=24,b=16,c;c=abc(a,b);printf("%d\n",c);}int abc(int u,int v){int w;while(v){ w=u%v;u=v;v=w;}return(u);}输出结果为。

C语言程序设计 第1-7章选择、填空习题及答案

C语言程序设计 第1-7章选择、填空习题及答案
6.赋值语句是由赋值表达式加上一个分号构成。
7.a=12,n=5,表达式a%=(n%=2)值是0。
8.有一个输入函数scanf("%d",k);则不能使float类型变量k得到正确数值的原因是k前无&
和%d与k的类型不一致。
9.putchar()函数可以向终端输出一个字符。
10.已有定义int i,j;float x;为将-10赋给i,12赋给 j,410.34赋给x,则对应以下scanf()函数调用语句的数据输入形式是-12 C410.34。
7.算法是计算机解决问题所依据的步骤。
习题二
一、选择题
1.下列数据中属于字符串常量的是( B)。
A.ABCB."ABC"C.'abc'D.'A'
2.在计算机内存中,'\n'占用的字节数是( C)。
A.4B.3C.1D.2
3.字符串"ABC"在内存中占用的字节数是( D)。
A.6B.8C.3D.4
4.在C语言中,合法的长整型常数是 ( B)。
A.fB.e(E)C.g(G)D.x
10. 若float num=123.456,以%+10.4d的格式输出,结果正确的是(B)
A.123.456000B.123.4560C.123.4560D.+123.4560
二、填空题
1.以下程序的输出结果是x=1 y=2 *sum*=3
10 squaredis :100。
main()
{int x=1,y=2;
printf("x=%d y=%d *sum*=%d\n",x,y,x+y);
printf("10 squared is :%d\n",10*10);

(完整版)C语言各章练习题

(完整版)C语言各章练习题

目录第一章程序设计和C语言 (2)第二章最简单的C程序设计 (2)第三章选择结构程序设计 (4)第四章循环结构程序设计 (7)第五章数组 (11)第六章函数 (14)第七章指针 (18)第一章程序设计和C语言一、选择题:1.一个C程序的执行是从( )A、本程序的main函数开始,到main函数结束B、本文件第一个函数开始,到本文件的最后一个函数结束C、本程序的main函数开始,到本文件的最后一个函数结束D、本文件的第一个函数开始,到本文件的main结束2.以下说法不正确的是()A、一个C源程序可由一个或多个函数组成B、一个C程序必须包含一个main函数C、C程序的基本组成单位是函数D、在C程序中,注释说明只能位于一条语句的后面3.C语言规定:在一个源程序中,main函数的位置()A、必须在开始B、必须在系统调用的库函数的位置C、可以任意D、必须在最后4.源程序program.c经编译产生的目标文件和连接后产生的可执行文件是( )A、program.bak和program.objB、program.obj和program.exeC、program.exl和program.cD、program.bak和prgram.exe第二章最简单的C程序设计一、选择题1.是合法的用户自定义标识符的( )A、ah-spksB、doubleC、<ctrl>D、_myapple2.以下正确的C语言标识符是()A、%xB、a+bC、a123D、test!3.以下不能定义为用户标识符的是( )A、V oidB、b_2C、intD、name4.以下选项中可作为C语言合法整数的是( )A、11010(B)B、0583C、x2b2D、0xafb5.VC++6.0中的短整型数值在计算机中占用的字节个数是( )A、1B、2C、3D、46.设short int型的数据长度为2个字节,则unsigned short 类型数据的取值范围是()P34A、均为2个字节B、0至65535C、-3276至32767D、-256至255 7.以下选项中可作为C语言合法常量的是()(指数E或e前必须有数字,后面必须有整数)A、-80.0B、-080C、-8e1.2D、-80.0e8.在VC++6.0编译环境下,下列式中,值不为4的表达式是()P34,double为8字节A、sizeof(unsigned long)B、sizeof(long)C、sizeof(unsigned int)D、sizeof(double)9.设有说明语句:char a=’\123’;则变量a( )一个ascii字符A、包含1个字符B、包含2个字符C、3个字符D、说明不合法10.设x为一数字字符,则其所对应的十进制数值为()。

C语言选择题(1-4章期末复习)

C语言选择题(1-4章期末复习)

第1章1.以下叙述不正确的是()。

A、C程序的基本组成单位是函数B、在C程序中,注释说明只能位于一条语句的后面C、一个C源程序必须包含一个main函数D、一个C源程序可由一个或多个函数组成2.C语言的注释定界符是()。

A、\* *\B、{ }C、[ ]D、/* */3.C语言规定,在一个源程序中,main函数的位置()。

A、必须在最开始B、必须在系统调用的库函数的后面C、必须在最后D、可以任意4.一个C程序的执行是从()。

A、本程序文件的第一个函数开始,到本程序main函数结束B、本程序的main函数开始,到main函数结束C、本程序的main函数开始,到本程序文件的最后一个函数结束D、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束5.以下叙述中正确的是()。

A、C程序中注释部分可以出现在程序中任意合适的地方B、分号是C语句之间的分隔符,不是语句的一部分C、花括号“{“和”}”只能作为函数体的定界符D、构成C程序的基本单位是函数,所有函数名都可以由用户命名6.以下叙述正确的是()。

A、在对一个C程序进行编译的过程中,可发现注释中的拼写错误B、C语言本身没有输入输出语句C、在C程序中,main函数必须位于程序的最前面D、C程序的每行中只能写一条语句7.C语言源程序的基本单位是()。

A、子程序B、过程C、函数D、标识符8.下列标识符中,不合法的C语言用户自定义标识符是()。

A、printfB、sinC、enumD、_9.下列四个选项中,均是C语言关键字的选项是()。

A、if struct typeB、switch typedef continueC、signed union scanfD、auto enum include10.以下叙述中错误的是()A、用户所定义的标识符应尽量做到"见名知意"B、用户所定义的标识符允许使用关键字C、用户定义的标识符中,大、小写字母代表不同标识D、用户所定义的标识符必须以字母或下划线开头11.下列字符序列中,可用作C标识符的一组字符序列是()。

《C语言程序设计》习题及解答1-4章

《C语言程序设计》习题及解答1-4章
}
参考答案
一、选择题(1)B
(2)C
(3)C
(4)B
(5)B
(6)D
(7)D
(8)C
(9)C
(10)D
(11)B
(12)D
(13)D
(14)C
(15)A
二、填空题【1】2
【5】32767
【2】-2
【6】6.000000
【3】scanf
【7】49
【4】printf
第三章习题
一、单项选择题
1.下面不属于C语言的数据类型是【】。
int x=-32769;
printf("%d",x);
4.执行下列程序的输出结果是【6】。
main( )
{
float a=1,b;
b=++a*++a;
printf("%f\\n",b);
}
5.执行下列程序的输出结果是【7】。
main( )
{
int x=5,y;
y=++x*++x;
printf("y=%d\\n",y);
本题正确答案为B。
二、填空题
1.若以下程序的输出结果是13,请填空。
main( )
{ int x=016;
printf("%d\\n",【1】); }
分析:在C语言中以0开头的数字是八进制数,016相当于十进制数14,执行printf语句时,输出项应为x的值减1。
本题正确答案为【1】--x或x-=1。
A)整型
B)实型
C)逻辑型
D)双精度实型
分析:和其它高级语言相比,C语言中没有逻辑型数据,也没有逻辑型变量。

C语言函数习题及答案

C语言函数习题及答案

第6章函数习题一、选择题1. 一个完整的C源程序是【】。

A)要由一个主函数或一个以上的非主函数构成B)由一个且仅由一个主函数和零个以上的非主函数构成C)要由一个主函数和一个以上的非主函数构成D)由一个且只有一个主函数或多个非主函数构成2. 以下关于函数的叙述中正确的是【】。

A)C语言程序将从源程序中第一个函数开始执行B)可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行C)C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束D)main可作为用户标识符,用以定义任意一个函数3. 以下关于函数的叙述中不正确的是【】。

A)C程序是函数的集合,包括标准库函数和用户自定义函数B)在C语言程序中,被调用的函数必须在main函数中定义C)在C语言程序中,函数的定义不能嵌套D)在C语言程序中,函数的调用可以嵌套4. 在一个C程序中,【】。

A)main函数必须出现在所有函数之前B)main函数可以在任何地方出现C)main函数必须出现在所有函数之后D)main函数必须出现在固定位置5. 若在C语言中未说明函数的类型,则系统默认该函数的数据类型是【】A)float B)longC)int D)double6. 以下关于函数叙述中,错误的是【】。

A)函数未被调用时,系统将不为形参分配内存单元B)实参与形参的个数应相等,且实参与形参的类型必须对应一致C)当形参是变量时,实参可以是常量、变量或表达式D)形参可以是常量、变量或表达式7. C程序中各函数之间可以通过多种方式传递数据,下列不能用于实现数据传递的方式是【】。

A)参数的形实(哑实)结合B)函数返回值C)全局变量D)同名的局部变量8. 若函数调用时参数为基本数据类型的变量,以下叙述正确的是【】。

A)实参与其对应的形参共占存储单元B)只有当实参与其对应的形参同名时才共占存储单元C)实参与对应的形参分别占用不同的存储单元D)实参将数据传递给形参后,立即释放原先占用的存储单元9. 函数调用时,当实参和形参都是简单变量时,他们之间数据传递的过程是【】。

C语言函数题库及答案

C语言函数题库及答案

C语言函数题库及答案第六部分函数一、单项选择题1.C语言中的函数返回值的类型是由(D)决定A.return语句中的表达式B.调用函数的主调函数C.调用函数时临时 D.定义函数时所指定的函数类型2.下面不正确的描述是(B )。

A.调用函数时,实参可以是表达式B.调用函数时,实参和形参可以共用内存单元C.调用函数时,将形参分配内存单元D.调用函数时,实参与形参的类型必须一致3.在C语言中,调用一个函数时,实参变量和形参变量之间的数据传递是( D )A.地址传递 B.值传递C.由实参传递给形参,并由形参传回给实参D.由用户指定传递方式4.下面的函数调用语句中含有( A )个实参int a,b,c;int sum(int x1,int x2);……total=sum((a,b),c);A.2 B.3 C.4 D.55.在C语言中( C )A.函数的定义可以嵌套,但函数的调用不可以嵌套B.函数的定义和调用均不可以嵌套C.函数的定义不可以嵌套,但是函数的调用可以嵌套D.函数的定义和调用均可以嵌套6.关于C语言中的return语句正确的是(C )A.只能在主函数中出现B.在每个函数中都必须出现C.可以在一个函数中出现多次D.只能在除主函数之外的函数中出现7.两个形参中,第一个形参为指针类型、第二个形参为整型,则对函数形参的说明有错误的是( D)A. int a(float x[],int n)B. int a(float *x,int n)C. int a(float x[10],int n)D.int a(float x,int n)8.在C语言中,函数的数据类型是指( A )A.函数返回值的数据类型B. 函数形参的数据类型C.调用该函数时的实参的数据类型D. 任意指定的数据类型9.已知如下定义的函数:fun1(a){ printf("\n%d",a);}则该函数的数据类型是( C )A.与参数a的类型相同B.void型C.整型D.无法确定10.定义一个函数实现交换x和y的值,并将结果正确返回。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

有问题的题目是:14、20(答案对,但是不好解释,不同系统也许有不同结果)41超出范围、1.在C语言中,全局变量的存储类别是:A) static B) externC) void D) registerA2.C语言中,凡未指定存储类别的局部变量的隐含存储类别是:A) 自动(auto) B) 静态(static)C) 外部(extern) D) 寄存器(register)A3. 在一个C源程序文件中,要定义一个只允许本源文件中所有函数使用的全局变量,则该变量需要使用的存储类别是:________。

A) extern B) registerC) auto D) staticD4. 若有以下调用语句,则正确的fun函数首部是main(){ ∶∶int a;float x;∶∶fun(x,a);∶∶}A) void fun(int m,float x) B) void fun(float a,int x)C) void fun(int m,float x[]) D) void fun(int x,float a)B5. 有如下函数调用语句func(rec1,rec2+rec3,(rec4,rec5));该函数调用语句中,含有的实参个数是A) 3 B) 4C) 5 D) 有语法错误A6. 以下程序的运行结果是。

#include <stdio.h>main(){ int k=4,m=1,p;p=func(k,m); printf("%d, ",p);p=func(k,m); printf("%d\n",p); }func(int a,int b){ static int m=0,i=2;i+=m+1;m=i+a+b;return m; }A) 8,17, B) 8,17C) 8,8 D) 4,1B7. 函数fun的功能是:根据以下公式计算S,n通过形参传入,n的值大于等于0。

划线处应填________。

1 1 1 1S=1 - ─+ ─- ─+ …───3 5 7 2n-1float fun(int n){ float s=0.0,w,f=-1.0;int i=0;for(i=0;i<=n;i++){________;w=f/(2*i+1);s+=w; }return s; }A) f=1 B) f=-1C) f=-1*f D) f=0C8. 函数fun的功能是:根据以下公式计算并返回S,n通过形参传入,n的值大于等于0。

划线处应填________。

1 1 1 1S=1 - ─+ ─- ─+ …───3 5 7 2n-1float fun(int n){ float s=0.0,w,t,f=-1.0;int i;for(i=0;i<n;i++){f=-f;w=f/(2*i+1);s+=w; }____________; }A) return (f) B) return (S)C) return (s) D) return (w)C9. 有如下程序int func(int a,int b){ return(a+b); }main(){ int x=2,y=5,z=8,r;r=func(func(x,y),z);printf("%d\n",r); }该程序的输出结果是__________。

A) 12 B) 13C) 14 D) 15D10. 有如下程序int func(int a,int b){ return(a+b); }main(){ int x=2,y=5,z=8,r;r=func((x-y),z);printf("%d\n",r); }该程序的输出结果是__________。

A) 10 B) 13C) 5 D) 15C11. 以下函数返回a数组中最小值所在的下标,在划线处应填入的是________。

fun( int a[],int n){ int i,j=0,p;p=j;for(i=j;i<n;i++)if(a[i]<a[p])_______________;return (p); }A) i=p B) a[p]=a[i]C) p=j D) p=iD12. 函数pi的功能是根据以下近似公式求π值:(π*π)/6=1+1/(2*2)+1/(3*3)+……+1/(n*n)请你在下面程序中的划线部分填入________,完成求π的功能。

#include "math.h"double pi(long n){ double s=0.0; long i;for(i=1;i<=n;i++) s=s+________;return (sqrt(6*s)); }A) 1.0/i/i B) 1.0/i*iC) 1/(i*i) D) 1/i/iA13. 设在主函数中有以下定义和函数调用语句,且fun函数为void类型;正确的fun函数的首部应为________(要求形参名为b)。

main(){ double s[10][22];int n;∶∶fun(s);∶∶}A) void fun(double b[22])B) void fun(double b[][22])C) void fun(double b[][])D) void fun(double b[22][])B14. 以下程序的输出结果是________。

void fun(){ static int a=0;a+=2;printf("%d",a); }main(){ int cc;for(cc=1;cc<4;cc++) fun( );printf("\n"); }A) 2222 B) 2468C) 222 D) 246C(应为D)15. 以下函数把b字符串连接到a字符串后面,并返回a中新字符串的长度。

下面的两划线处应分别填入________。

strcen(char a[],char b[]){ int num=0,n=0;while( a[num]!=______) num++;while(b[n]) { a[num]=b[n];num++;________;}return (num); }A) '\n'和n++ B) '\n'和num++C) '\0'和n++ D) '\0'和num++C16. 以下程序的输出结果是#include <string.h>main(){ char a[]="123456789"; int k;fun(a); puts(a); }fun( char s[]){ int x,y; char c;for(x=0,y=strlen(s)-1; x<y;x++,y--){c=s[y];s[y]=s[x];s[x]=c; } }A) 987654321 B) 123456789C) 123454321 D) 987656789A17. 以下程序的输出结果是#include <string.h>main(){ char a[]="abcdefghi"; int k;fun(a); puts(a); }fun( char s[]){ int x,y; char c;for(x=0,y=(strlen(s)-1)/2; x<y;x++,y--){c=s[y];s[y]=s[x];s[x]=c; } }A) ihgfedcba B) abcdefghiC) edcbafghi D) ihgfefghiC18. 以下程序的输出结果是#include <string.h>main(){ char a[]="abcdefghi"; int k;fun(a); puts(a); }fun( char s[]){ int x,y; char c;for(x=0,y=3; x<y;x++,y--){c=s[y];s[y]=s[x];s[x]=c; } }A) ihgfedcba B) abcdefghiC) dcbaefghi D) ihgfefghiC19. 以下程序的输出结果是________。

main(){ int w=5; fun(w); printf("\n"); }fun (int k){ if(k>0) fun(k-1);printf("%d ",k); }A) 5 4 3 2 1 B) 0 1 2 3 4 5C) 1 2 3 4 5 D) 5 4 3 2 1 0B难解释20. 以下程序的输出结果是________。

main(){ int w=5; printf("%d\n", fun(w)); }fun (int k){ int n;if(k>0) n=n+fun(k-1);else n=0;return n; }A) 5 4 3 2 1 0 B) 0 1 2 3 4 5C) 15 D) 25D21. 以下程序的输出结果是________。

int d=1;fun( int p){ static int d=5;d+=p;printf("%d ",d);return (d); }main(){ int a=3; printf("%d \n",fun(fun(d))); }A) 6 11 11 B) 6 6 9C) 6 12 12 D) 6 6 15C22. 以下程序的输出结果是________。

#include <stdio.h>int a[3][3]={1,2,3,4,5,6,7,8,9},b[10];main(){ f(b,a);printf("%d\n",b[0]); }f (int s[],int p[ ][3]){ s[0]=p[1][1]; }A) 1 B) 4C) 7 D) 5D23. 下列程序的输出结果是________。

int t(int x,int y,int cp,int dp){ cp=x*x+y*y; dp=x*x-y*y; }main(){ int a=4,b=3,c=5,d=6;t(a,b,c,d);printf("%d %d\n",c,d); }A) 16 9 B) 4 3C) 5 6 D) 25 9C24. 下列叙述中正确的是________。

相关文档
最新文档