c语言:程序填空:定义函数search(int *t,int n,int *a),实现查找数组中的最小值?

第四章 逻辑运算和判断选取控制

**4.1逻辑运算符两则运算对象的数据类型 。

A)只能是0或1 B)只能是0或非0正数

C)只能是整型或字符型数据 D)可以是任何类型的数据

参考分析:c语言中没有专用的逻辑量,任何数值类型的数据都可以作为逻辑数据使用,判断时0为假,非零为真,计算时真置1,假置0。

*4.2以下关于运算符优先顺序的描述中正确的是

A)关系运算符<算术运算符<赋值运算符<逻辑运算符

B)逻辑运算符<关系运算符<算术运算符<赋值运算符

C)赋值运算符<逻辑运算符<关系运算符<算术运算符

D)算术运算符<关系运算符<赋值运算符<逻辑运算符

4.3 下列运算符中优先级最高的是 。

*4.4能正确表示“当x的取值在[1,10]和[200,210]范围内为真”的C语言表达式为 。

参考分析:C语言中实际上与运算和或运算优先级相等,由于C采用短路算法,所以不会影响B的结果,即不需要改成((x>=1)&&(x

4.5 表示图中坐标轴上阴影部分正确的表达式是 。

4.6判断char型变量ch是否为大写字母的正确表达式为 。

4.9若希望当A的值为奇数时,表达式的值为“真”,A的值为偶数时,表达式的值为“假”。则以下不能满足要求的表达式是 。

参考分析:本题为标准的短路算法,由于第一个表达式m=a>b为真,故第二个表达式n=c>d被短路不再计算。因此,n值仍然保持原来的值2不变。

4.11判断char型变量ch是否为小写字母的正确表达式为 。

*4.12 以下程序的运行结果是 。

参考分析:计算时,非零为真。

*4.13 执行以下语句后a的值为 ,b的值为 。

参考分析:c语言在计算表达式时采用短路算法。

4.13-改 执行以下语句后,a,b,c的值分别为 。

4.14 执行以下语句后a的值为 ,b的值为 。

*4.15 以下不正确的if语句形式是 。

4.16 下列运算符中优先级最低的是 ,优先级最高的是 。

4.18 以下if语句语法正确的是 。

A)有语法错误不能通过编译 B)可以通过编译,但不能通过连接

参考分析:注意条件表达式不是a= =b+c。

*4.20 以下程序的运行结果是 。

参考分析:m先与5进行关系比较,然后进行增量运算,m值为6,因比较结果为假,执行else,输出为6,m为7。

**4.22有函数关系如下,能正确表示该关系的程序段是 。

*4.23 以下程序的输出结果是 。

参考分析:无论前面的分支如何执行,由于a=-1和上面的语句为顺序关系,因此不会影响到a的值。

4.24 以下程序的输出结果是 。

*4.25为了避免在嵌套的条件语句if-else中产生二义性,C语言规定:else子句总是与 配对。

A)缩排位置相同的if B)其之前最近的没有else配对的if

C)其之后最近的if D)同一行上的if

参考分析:本题表述不严谨。

*4.26以下不正确的语句为 。

4.27 请阅读以下程序:

若运行时输入2.0,则上面程序的输出结果是 。

参考分析:在C语言中,当一个表达式不等于0时,可以将不等于部分省略,其效果完全一样。

*4.29 若运行时给变量输入12,则以下程序的运行结果是 。

4.30 以下程序的运行结果是 。

**4.31执行下列程序段后,变量a,b,c的值分别是 。

参考分析:首先x进行--操作,x为9,然后与y进行等于比较,即9==9,然后y++为10。由于比较结果为真,故计算--x,为8,赋给a。

4.32 阅读以下程序,则执行下面语句后m的值是 。

*4.34 执行以下程序后的输出结果是 。

参考分析:计算过程如下,a>b计算为真,然后计算 真(1)>c,结果为假

*4.37 以下程序的运行结果是( )。

参考答案:5□□□□□□□25□□□□□□1(制表符为7个)

4.38 在C语言中,表示逻辑“真”值用( )。

参考答案:非0的数值。

*4.39 设y为int型变量,请写出描述“y是奇数”的表达式( )。

4.40 c语言提供的三种逻辑运算符是( )、( )和( )。

4.41 设x,y,z均为int型变量,请写出描述“x或y中有一个小于z”的表达式( )。

*4.42设x,y,z均为int型变量,请写出描述“x,y,z中有两个为负数”的表达式( )。

参考分析:在本表达式的计算过程中A

4.52 以下程序的运行结果是 。

参考分析:这是两个表达式的或运算,第一个表达式y--<=x相当于2<=1为假,y变量增为1,第二表达式x+y!=z相当于1+1!=3为真,故x的值为1。

4.53 以下程序的运行结果是 。

*4.54 以下程序的运行结果是 。

参考分析:本题采用短路算法,由于x为真,后面的或和与运算均被短路。

4.61 若运行时输入:16,则以下程序的运行结果是 。

4.62 若运行时输入:2,则以下程序的运行结果是 。

4.63 若运行时输入:4.4,则以下程序的运行结果是 。

4.64 以下程序的运行结果是 。

*4.65 请阅读以下程序,若运行时输入:1605时,程序的运行结果是 。

4.66 以下程序实现:输入园的半径r和运算标志m,按照运算标志进行指定计算,请填空。

4.67 若运行时输入:5999,则以下程序的运行结果是 。

4.68 以下程序实现输出x,y,z三个数中的最大者。请分析程序填空。

4.69 以下程序将输入的三个整数按从大到小顺序输出,请分析程序填空。

4.70 以下程序对输入的两个整数,按从大到小顺序输出,请分析程序填空。

*4.71 以下程序对输入的一个小写字母进行循环后移5个位置后输出。如'a'变成'f','w'变成'b'。请分析程序填空。

*4.72 输入一个字符,如果它是大写字母,则把它变成小写字母,如果它是一个小写字母,则把它变成大写字母,其它字符不变。请分析程序填空。

4.73 以下程序的运行结果是 。

4.74以下程序的运行结果是 。

4.75 以下程序的运行结果是 。

*4.76以下程序的运行结果是 。

□□□□□□□□4□□□□□□□-2

□□□□□□□□4□□□□□□□0

□□□□□□□□4□□□□□□□-2

*4.77 请阅读以下程序,为使输出时t值为4,输入量a和b应满足的条件是 。

4.78 请阅读下面的程序,为使输出s=1,t=5的结果,输入量a和b应满足的条件是 a=b<=0 。

4.79 下面程序根据以下函数关系,对输入的每个x值,计算出y值。请分析程序填空。

4.80下面程序根据以下函数关系,对输入的每个x值,计算出y值。请分析程序填空。

*4.81 以下程序的功能是计算一元二次方程ax2+bx+c=0的根,请分析程序填空。

4.82 以下程序根据输入的三角形的三边判断是否能组成三角形,若可以则输出它的面积和三角形的类型。请分析程序填空。

4.83 某邮局对邮寄包裹有如下规定:若包裹的长宽高任一尺寸超过1米或重量超过30千克,不予邮寄;对可以邮寄的包裹每件收取手续费0.2元,在加上根据下表按重量wei计算的邮资。请分析程序填空。

**4.84 某服装店经营套服,也单件出售。若买的不少于50套每套80元;不足50套的每套90元;只买上衣每件60元;只买裤子每条45元。以下程序的功能是读入所买上衣c和裤子t的件数,计算应付款m。请分析程序填空。

4.85 以下程序的功能是判断输入的年份是否是闰年。请分析程序填空。

4.87 有四个数a,b,c,d,要求从大到小的顺序输出。请分析程序填空。

4.88 以下程序的运行结果是 。

参考分析:增量运算在条件运算的第一个表达式中时,关系运算符两侧各为一个处理单元。x--中的值是1,然后增为0,故y+x为0+0,因此整个表达式计算结果为真。

4.96 以下程序的运行结果是 。

4.97以下程序的运行结果是 。

4.98 以下程序的运行结果是 。

4.99 若运行时输入:-2,则以下程序的输出结果是 。

4.100 若运行时输入:100,下面程序的运行结果是 。

4.101 如果运行时输入字符'Q',则以下程序的运行结果是 。

4.102 当运行时输入:1992,则以下程序的运行结果是 。

4.103 以下程序是计算x,y,z三个数中最小的。请分析程序填空。

参考答案:【1】x:y【2】u:z

参考答案:【1】5【2】6

参考答案:【1】10【2】9【3】11

参考分析:此处x++*x—实际计算为0*0。

4.108 若运行时输入:3 5/,则以下程序的运行结果是 。

4.109 根据以下嵌套的if语句所给条件,填写switch语句,使它完成相同的功能。

4.110 设有如下程序段,若grade的值为'C',则输出结果是 。

4.111 以下程序段的运行结果是 。

4.112 根据以下函数关系,对输入的每个x值,计算出相应的y值。请分析程序填空。

4.113 以下程序的运行结果是 。

4.114 下面程序的运行结果是 。

4.115 假设奖金税率如下(a代表奖金,r代表税率)

以下程序对输入的一个奖金数,求税率和应交税款以及实得奖金数(扣除奖金税后)。请分析程序填空。

4.116 某个自动加油站有'a','b','c'三种汽油,单价分别为1.50,1.35,1.18(元/千克),也提供了“自己加”和“协助加”两个服务等级。这样用户可以得到5%或10%的优惠。本程序针对用户输入加油量a,汽油品种b和服务类型c('f'--自动,'m'--自己,'e'--协助),输出应付款m。请分析程序填空。

4.117 以下程序计算某年某月有几天。其中判别闰年的条件是:能被4整除但不能被100整除的年是闰年,能被400整除的年也是闰年。请分析程序填空。

*4.118 以下程序用以计算y年m1月d1日与同年的m2月d2日之间的天数(m2>=m1),并打印计算结果。若m1=m2且d1=d2则算一天。请分析程序填空。

4.119 编制程序,要求输入整数a和b,若a2+b2大于100,则输出a2+b2百位以上的数字,否则输出两数之和。

4.120 试编程判断输入的正整数是否既是5又是7的整数倍,若是输出yes,否则输出no。

4.121 请编程序,根据以下函数关系,对输入的每个x值,计算出相应的y值。

4.122 输入一个整数,判断它能否被3,5,7整除,并输出以下信息之一:

(1)能同时被3,5,7整除

(2)能被其中两数整除(要指出哪两个)。

(3)能被其中一个数整除(要指出哪一个)。

(4)不能被任何一个整除。

4.123 将以下程序段改用非嵌套的if语句实现。

4.125 将以下程序段改用嵌套的if语句实现。

4.126 请将以下语句改写成为switch语句。

则下面描述中正确的是 。

C)循环体语句一次也不执行 D)循环体语句执行一次

A)运行程序段后输出0 B)运行程序段后输出1

C)循环的控制表达式不正确 D)程序段执行无限次

5.4下面程序段的运行结果是 。

5.5 下面程序段的运行结果是 。

5.6下面程序段的运行结果是 。

A)其中循环控制表达式与0等价 B)其中循环控制表达式与'0'等价

C)其中循环控制表达式是不合法的 D)以上说法都不对

参考分析:printf的返回值为数值1,恒真,故与B等价。

5.8 下面程序的功能是将从键盘输入的一对数,由小到大排序输出。当输入一对相等数时结束循环,请选择填空。

5.9下面程序的功能是从键盘输入的一组字符中统计出大写字母的个数m和小写字母的个数n,并输出m,n中的较大者

参考答案:【1】A【2】D

5.10下面程序的功能是将小写字母变成对应大写字母后的第二个字母,其中y变成A,z变成B。请选择填空。

参考答案:【1】D【2】 C

5.11下面程序的功能是在输入一批正整数中求出最大者,输入0结束循环,请选择填空 。

5.12 下面程序的运行结果是 。

5.13若运行以下程序时,从键盘输入2473(表示回车),则下面程序的运行结果是 。

A)do-while的循环至少无条件执行一次。

B)while循环控制条件比do-while的循环控制条件严格。

C)do-while允许从外部转入到循环体内。

D)do-while的循环体不能是复合语句。

5.15 以下能正确计算10!的程序段是 。

A)是死循环 B)循环执行两次

C)循环执行一次 D)有语法错误

5.17 以下描述中正确的是 。

A)由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句。

C)在do-while循环体中,一定要有能使while后面表达式的值变为零("假")的操作。

5.18 若有语句如下,则程序段的输出是 。

*5.19下面程序的功能是计算正整数2345的各位数字平方和。

参考答案:【1】B 【2】C

5.20 下面程序是从键盘输入学号,然后输出学号中百位数是3的学号,输入0时结束循环。请选择填空。

参考答案:【1】B 【2】C

5.21 等比数列的第一项a=1,公比q=2,下面程序的功能是求满足前n项和小于100的最大n,请选择填空。

参考答案:【1】B 【2】D

5.22 下面程序的功能是把316表示为两个加数的和,使两个加数分别能被13和11整除。请选择填空。

5.23 下面程序的运行结果是 。

5.24若运行以下程序时,从键盘输入Adescriptor(表示回车),则下面程序的运行结果是 。

5.25 下面程序的运行结果是 。

5.26下面有关for循环的正确描述是 。

A)for循环只能用于循环次数已经确定的情况

B)for循环是先执行循环体语句,后判断表达式

C)在for循环中,不能用break语句跳出循环体

D)for循环的循环体可以包括多条语句,但必须用花括号括起来

5.28 若i为整型变量,则以下循环执行次数是 。

5.29 以下for循环的执行次数是 。

5.30 以下不是无限循环的语句为 。

5.31下面程序段的运行结果是 。

5.32下面程序段的运行结果是 。

*5.33以下不是无限循环的语句为 。

5.35 有一堆零件(100到200之间),如果分成4个零件一组则多出2个零件;若分成7个零件一组,则多3个零件;若分成9个零件一组,则多出5个零件。下面程序是求这堆零件总数,请选择填空。

5.36 下面程序的功能是计算1至50中是7的倍数的数值之和,请选择填空。

5.37 下面程序的功能是计算1至10之间的奇数之和和偶数之和。请选择填空。

参考答案:【1】B 【2】CD

参考分析:奇数累加和根据题目的要求多计算了11,需要从累加和中去除,但退出循环后b变量的值也是11,故【2】中的D也正确。

5.38 下面程序的运行结果是 。

5.39 下面程序的运行结果是 。

5.40 下面程序段的功能是计算1000!的末尾含有多少个零。请选择填空。(提示:只要计算出1000!中含有因子5的个数即可)

5.41 下面程序的功能是求算式xyz+yzz=532中x,y,z的值(其中xyz和yzz分别表示一个三位数),请选择填空。

参考答案:【1】CB 【2】D

参考分析:【1】由于z不需要作为百位数,因此可以为0。若更进一步考虑到z为两个数的末尾,2倍的z不可能为0,故z也不可能为0,所以B也应当正确。

**5.42 下面程序是对输出一个正整数等差数列的前十项,此数列前四项之和及积分别是26和880,请选择填空。

参考答案:【1】C【2】A

5.43 下面程序的运行结果是 。

5.44 以下正确的描述是 。

A)continue语句的作用是结束整个循环的执行。

B)只能在循环体内和switch语句体内使用break语句。

C)在循环体内使用break语句或continue语句的作用相同。

D)从多层循环嵌套中退出时,只能使用goto语句。

C)printf函数永远也不执行 D)最多允许输出100个非负整数

5.46下面程序段 。

C)是死循环 D)含有不合法的控制表达式

5.47 以下是死循环的程序段是 。

5.48 以下描述正确的是 。

A)goto语句只能用于退出多层循环。

C)只能用continue语句来中止本次循环。

D)在循环中break语句不能独立出现。

5.49 与下面程序段等价的是 。

**5.50 下面程序的功能是将从键盘输入的偶数写成两个素数之和。请选择填空。

5.51下面程序的运行结果是 。

5.52 若运行以下程序时,从键盘输入3.6 2.4,则下面程序的运行结果是 。

5.53下面程序的运行结果是 。

5.54下面程序的运行结果是 。

5.55下面程序的运行结果是 。

5.56下面程序的运行结果是 。

5.57 下面程序段是从键盘输入的字符中统计数字字符的个数,当输入换行符时结束循环。请分析程序填空。

5.58 下面程序的功能是用公式π2/6≈1/12+1/22+1/32+...+1/n2求π的近似值,直到最后一项的值小于10-6为止,请分析程序填空。

5.59 有1020个西瓜,第一天卖一半多两个,以后每天卖剩下的一半多两个,问几天以后能卖完?请分析程序填空。

5.60 下面程序的功能是用“辗转相除法”求两个正整数的最大公约数。请分析程序填空。

5.61 执行以下程序时输入right?,则下面程序的运行结果是 。

5.62下面程序的运行结果是 。

参考分析:本题是计算21+22+...+27之和。

5.63当运行以下程序,用户输入China# 程序的运行结果是 。

5.64 执行下面程序段后,k值是 。

5.65 下面程序段中循环体的执行次数是 。

5.66下面程序段的运行结果是 。

5.67下面程序段的运行结果是 。

5.68 下面的程序是用do while语句求1至1000之间满足“用3除余2;用5除余3;用7除余2"的数,且一行只打印五个数。请分析程序填空。

5.69 下面程序的功能是统计正整数的各位数字中零的个数,并求各位数字中的最大者。请分析程序填空。

5.70 等差数列的第一项a=2,公差d=3,下面程序的功能是在前n项和中,输出能被4整除的所有数的和。请分析程序填空。

*5.71 下面程序的功能是求1111的个、十、百位上的数字之和。请分析程序填空。

参考分析:本题各位数的分离,没有什么新意,一个十进制大数的人为“高位溢出”这种技巧,值得学习和模仿。

5.72 当运行以下程序时,从键盘输入1 2 3 4 5 -1,则下面程序的运行结果是 。

5.73下面程序的运行结果是 。

5.74下面程序的运行结果是 。

5.75 当从键盘输入-1 0,则以下程序的运行结果是 。

5.76下面程序段是找出整数的所有因子,请分析程序填空。

5.77 鸡兔同笼,头30,脚90,下面程序段计算鸡兔各有多少只。请分析程序填空。

5.78 下面程序段的运行结果是 。

参考答案:【1】1 【2】3

5.81 以下程序是用梯形法求sin(x)*cos(x)的定积分。求定积分的公式为:

5.82 以下程序的功能是根据公式e=1+1/1!+1/2!+...1/n!求e的近似值,精度要求为10-6。请分析程序填空。

*5.83 下面程序的运行结果是 。

*5.84下面程序的运行结果是 。

参考分析:由于在程序中改变了循环变量的值,导致循环只能循环2次。

5.85下面程序的运行结果是 。

5.86 下面程序的功能是求出用数字0至9可以组成多少个不重复的三位偶数。请分析程序填空。

5.87 下面程序的功能是输出1至100之间每位数的乘积大于每位数的和的数,请分析程序填空。

*5.88 下面程序的功能是求1000以内的所有完全数。说明:一个数如果恰好等于它的因子之和(除自身外),则称该数为完全数。例如:6=1+2+3。

5.89 下面程序的功能是完成用一元人民币兑换一分、两分、五分零币的所有兑换方案。请分析程序填空。

5.90 下面程序的功能是从三个红球、五个白球、六个黑球中任意取出八个球,且其中必须有白球,输出所有可能的方案。请分析程序填空。

*5.91 若从键盘输入65 14,则下面程序的运行结果是 。

参考分析:这是一种计算两个整型数最大公约数的一种算法。

5.92 下面程序的运行结果是 。

5.93 下面程序的运行结果是 。

5.94下面程序的运行结果是 。

5.95下面程序的运行结果是 。

5.96 下面程序段的运行结果是 。

5.97 若用0至9之间不同的三个数构成一个三位数,下面程序将统计出共有多少种方法。请分析程序填空。

5.98 下面程序的功能是计算100至1000之间有多少个数其各位数字之和是5。请分析程序填空。

5.99 下面程序的功能是从键盘输入的10个整数中,找出第一个能被7整除的数。若找到,打印此数后退出循环;若未找到,打印“not exist”。请分析程序填空。

5.100 下面程序的功能是输出100以内个位数为6且能被3整除的所有数。请分析程序填空。

5.101 下面程序的运行结果是 。

5.102下面程序的运行结果是 。

5.103下面程序的运行结果是 。

5.104下面程序的运行结果是 。

5.105 每个苹果0.8元,第一天买2个苹果,第二天开始买前一天的2倍,直至购买的苹果个数达到不超过100的最大值。编写程序求每天平均花多少钱。

5.106 编写程序,找出1至99之间的全部同构数。同构数是这样一组数:它出现在平方数的右边。例如,5是25右边的数,25是625右边的数,5和25就是同构数。

5.107 编写程序,求一个整数任意次方的最后三位数。即求xy值的最后三位数,要求x,y从键盘输入。

5.108 编写程序,从键盘输入6名学生的五门成绩,分别统计出每个学生的平均成绩。

6.1在c语言中,引用数组元素时,其数组下标的数据类型是 。

A)整型常量 B)整型表达式

C)整型常量或整型表达式 D)任何类型的表达式

参考分析:严格的说法应当是常量表达式。

6.2以下对一维数组a的正确说明是 。

6.3若有说明:int a[10];则对数组元素的正确引用是 。

6.4 在C语言中,一维数组的定义方式为:类型说明符 数组名 。

A)[常量表达式] B)[整型表达式]

C)[整型表达式]或[整型常量] D)[整型常量]

6.5 以下能对一维数组a进行正确初始化的语句是 。

参考分析:本题题目设计有问题,D也是正确的。

6.6 以下对二维数组a的正确说明是 。

6.7若有说明:int a[3][4];则对a数组元素的正确引用是 。

参考分析:在实际应用中a[2][4]这种应用方式实质上访问的是a[3][0],这是越界访问。

参考分析:a[0][4]实质上访问的是a[1][0],严格意义上并不非法。

6.9 以下能对二维数组a进行正确初始化的语句是 。

6.10以下不能对二维数组a进行正确初始化的说明是 。

C)数组中各元素都可以得到初值,但其值不一定为0

D)数组中每个元素均可得到初值0

A)数组a的每个元素都可得到初值0

B)二维数组a的第一维大小为1

C)因为二维数组a中第二维大小的值除初值个数的商为0,故数组a的行数为1

D)只有元素a[0][0]和a[0][1]可得到初值0,其余元素均得不到初值0

A)可在程序的运行阶段得到初值0

B)可在程序的编译阶段得到初值0

C)不能得到确定的初值

D)可在程序的编译或运行阶段得到初值0

6.14 以下各组选项中,均能正确定义二维实型数组a的选项是 。

6.15 下面程序有错误的行是 (行前数字表示行号)。

A)第2行有错误 B)第6行有错误

C)第7行有错误 D)没有错误

参考答案:习题集中答案为A,实质上应当选择D

6.16下面程序有错误的行是 (行前数字表示行号)。

A)没有错误 B)第3行有错误

C)第5行有错误 D)第7行有错误

6.17下面程序有错误的行是 (行前数字表示行号)。

6.18下面程序有错误的行是 (行前数字表示行号)。

6.19 若二维数组a有m列,则计算任一元素a[i][j]在数组中位置的公式为(假设a[0][0]位于数组的第一个位置上) 。

6.21 以下不正确的定义语句是 。

6.23 若二维数组a有m列,则在a[i][j]前的元素个数为 。

6.25以下程序段的作用是 。

A)对数组a进行插入排序(升序)

B)对数组a进行插入排序(降序)

C)对数组a进行选择排序(升序)

D)对数组a进行选择排序(降序)

6.26 以下正确的定义语句是 。

6.27 下面程序的运行结果是 。

6.28 下面程序的运行结果是 。

*6.29下面是对s的初始化,其中不正确的是 。

*6.30下面程序段的运行结果是 。

*6.31对两个数组a和b进行如下初始化

则以下叙述正确的是 。

A)a与b数组完全相同 B)a与b数组长度相同

C)a和b中都存放字符串 D)a数组比b数组长度长

6.32有两个字符数组a、b,则以下正确的输入语句是 。

6.33有字符数组a[80]和b[80],则正确的输出语句是 。

*6.34 下面程序段的运行结果是 。

6.35有下面程序段,上机运行,将 。

*6.36下面程序段的运行结果是 。

6.37 判断字符串a和b是否相等,应当使用 。

6.38判断字符串s1是否大于字符串s2,应当使用 。

6.39下面程序段输出两个字符串中对应相等的字符。请分析程序填空。

6.40 下面描述正确的是 。

A)两个字符串包含的字符个数相同时,才能比较字符串

B)字符个数多的字符串比字符个数少的字符串大

6.41 下面对C语言字符数组的描述中错误的是 。

A)字符数组可以存放字符串

B)字符数组的字符串可以整体输入、输出

C)可以在赋值语句中通过赋值运算符对字符数组整体赋值

D)不可以用关系运算符对字符数组中的字符串进行比较

***6.42 有已排好序的字符串a,下面的程序是将字符串s中的每个字符按升序的规律插入到a中。请选择填空。

参考答案:【1】B 【2】B

参考分析:向有序数据中插入数据关键在于两点,一是查找插入位置——查找插入位置注意两个问题,插入的数据与有序数组中数据的大小关系和注意防止向右越界。再一个是有序数组元素后移时自后向前。

***6.43下面程序的功能是将已按升序排好序的两个字符串a和b中的字符,按升序归并到字符串c中。请分析程序填空。

参考答案:【1】A 【2】D 【3】A

参考分析:归并排序的要点是将两个数组a和b的下标逐次后移,存放的是那个数组的元素,就移动那个数组的下标,而目标数组c则每次循环都要移动,当a,b数组其中一个到达结束标志后,再将没到达结束标志的数组中剩余的数据全部写到目的数组中。

***6.44下面程序的功能是将字符串s中所有的字符'c'删除。

参考分析:删除指定字符的程序要点在于采用双下标,一个下标对数组从头到尾进行逐个扫描,另外一个下标则只有当写入不删除字符时才向后移动。其关键思想就是:s[j++]=s[j]。

*6.45 下面程序的功能是从键盘输入一行字符,统计其中有多少个单词,单词之间用空格分隔。请分析程序填空。

参考分析:判断是不是一个单词的要点就是当前字符不是空格而前一个字符是空格。

6.46 下面程序的运行结果是 。

6.47 当运行以下程序时,从键盘输入:aa bbcc dd则下面程序的运行结果是 。

6.48 当运行以下程序时,从键盘输入abcdef,则下面程序的运行结果是 。

6.49 当运行以下程序时,从键盘输入:AhaMA Aha,则下面程序的运行结果是 。

6.50 下面程序的运行结果是 。

6.51下面程序的运行结果是 。

6.52下面程序的运行结果是 。

6.53 在c语言中,二维数组的定义方式为:类型说明符 数组名[【1】][【2】];

参考答案:【1】【2】常量表达式

6.54 在c语言中,二维数组在内存中的存放顺序是【 】。

参考答案:按行主顺序存放

6.55 若有定义:double x[3][5];则x数组中行下标的下限为【1】,列下标的上限为【2】。

参考答案:【1】0 【2】4

6.56 若二维数组a有m列,则计算任一元素a[i][j]在数组中位置的公式为【 】。(假设a[0][0]位于数组的第一个位置上)

参考答案:【1】0【2】6

6.58 若有以下输入(数之间有空格),则下面程序的运行结果是 。

参考分析:本程序是删除用户所输入的所有奇数。

6.59 下面程序以每行4个数的形式输出a数组,请分析程序填空。

6.60 下面程序将二维数组a的行和列元素互换后存到另一个二维数组b中。请分析程序填空。

6.61 下面程序的运行结果是 。

6.62 下面程序可求出矩阵两条对角线上的元素之和。请分析程序填空。

6.63 下面程序的运行结果是 。

6.64 下面程序可求出矩阵a的主对角线上的元素之和。请分析程序填空。

6.65 以下程序可求出所有的水仙花数。(水仙花数是三位正数,其各位数字的立方和等于该正数,如:407=4*4*4+0*0*0+7*7*7)

6.66下面程序的功能是生成并打印某数列的前20项,该数列第1,2项分别为0和1,以后每个奇数编号的项是前两项之和,偶数编号的项是前两项差的绝对值。生成的20个数存在一维数组x中,并按每行4项的形式输出。

6.67 若有以下输入,则下面程序的运行结果是 。

6.68 下面程序的运行结果是 。

6.69 设数组a包括10个整型元素,下面程序的功能是求出a中各相邻两个元素的和,并将这些和存在数组b中,按每行3个元素的形式输出。请分析程序填空。

6.70 下面程序是将十进制数转换成不超过十六进制的n进制。请分析程序填空。

6.71下面程序的功能是输入5个整数,找出最大数和最小数所在的位置,并把二者对调,然后输出调整后的5个数。

6.72 下面程序的运行结果是 。

6.73 下面程序的运行结果是 。

**6.74 下面程序的功能是给一维数组a任意输入6个整数,假设为7 4 8 9 1 5,然后建立一个具有以下内容的方阵并打印。请分析程序填空。

参考分析:采用二维数组可以采用a[i][j]=a[i-1][(j-1+M)%M]的方式为0行以后的行进行赋值。

**6.75 下面程序的功能是输出以下n*n阶(最大为9阶)方阵。请分析程序填空。(以下例子是6阶方阵)

参考答案:【1】【2】n-i-1

6.76 当从键盘输入18并回车后,下面程序的执行结果是 。

6.77 下面程序的功能是将二维数组a中每个元素向右一列,最后一列换到最左一列,移后的数组存到另一二维数组b中,并按矩阵形式输出a和b。请分析程序填空。

*6.78 下面程序的功能是统计年龄在16-31岁之间的学生人数。请分析程序填空。

6.79 下面程序的功能是检查一个二维数组是否对称(即对所有i和j都有a[i][j]=a[j][i])。请分析程序填空。

6.80 下面程序中的数组a包括10个整数元素,从a中第二个元素起,分别将后项减前项之差存入数组b,并按每行3个元素输出数组b。请分析程序填空。

6.81 下面程序的运行结果是 。

**6.82下面程序的运行结果是 。

else //j不是素数首尾数据互换,尾指针前移

参考分析:该程序对数组设置了头尾两个下标,对数组自前向后检查各元素是否为素数,如果是则输出该元素,头下标后移,继续检查下一个元素;如果不是,则将数组后面的元素与正检查的数组元素互换,尾下标前移,继续检查,直到头下标大于尾下标。

6.83 设数组中的元素均为正整数,以下程序是求a中偶数的个数和偶数的平均值。请分析程序填空。

6.84 以下程序是求矩阵a,b的和,结果存入矩阵c中,并按矩阵形式输出。请分析程序填空。

6.85 以下程序是求矩阵a,b的乘积,结果存入矩阵c中并按矩阵形式输出。请分析程序填空。

6.86 已知以下矩阵:

下面程序的功能是求出y1,y2,y3,y4的值。请分析程序填空。

6.87 以下程序的功能是求数组num中小于零的数据之和。请分析程序填空。

6.88 以下程序的功能是 。

参考答案:求取num数组中大于0的所有数据之和。

6.89 下面程序的运行结果是 。

参考分析:在二维数组中查找最小值及它的下标。

***6.90 若输入52,则下面程序的运行结果是 。

参考分析:本题为典型的折半查找,要点有三:1.循环条件为low<=high;2.查找处理是一个三分支;3.总是把中点的前点作为后点或把中点的后点作为前点。

**6.91 下面程序的运行结果是 。

参考分析:这是折半查找的变形题目,本算法仅计算数组中间元素的下标。计算中点下标时巧妙地利用了数据元素个数的“折半”。

6.92 下面程序用“顺序查找法”查找数组a中是否存在某一关键字。请分析程序填空。

**6.93 下面程序用“快速顺序查找法”查找数组a中是否存在某一关键字。请分析程序填空。

参考分析:如果数组中不存在需要查找的数据,循环条件设置为a[i]!=x无疑会使得对数组的访问产生右越界。将欲查找的数据放到数组的最后位置可以防止查找过程发生右越界。

***6.94 下面程序用插入法对数组a进行降序排序。请分析程序填空。

参考分析:插入排序是一种很重要的排序方法。它的排序思想及相应的技巧需要好好掌握。

6.95 下面程序用“两路合并法”把两个已按升序排列的数组合并成一个升序数组。请分析程序填空。

6.96 下面程序的运行结果是 。

6.97 若输入32458,则下面程序的运行结果是 。

6.99 下面程序的运行结果是 。

6.100 若有以下输入,则下面程序的运行结果是 。

6.101 若有以下输入,则下面程序的运行结果是 。

6.102 下面程序的运行结果是 。

6.103 下面程序的功能是求出矩阵x的上三角元素之积。其中矩阵x的行、列数和元素值均由键盘输入。请分析程序填空。

参考答案:【1】i=0;i

6.104 若有以下输入,则下面程序的运行结果是 。

6.106 下面程序段的运行结果是 。

6.108 下面程序段的运行结果是 。

6.109 下面程序的功能是在一个字符数组中查找一个指定的字符,若数组中含有该字符则输出该字符在数组中第一次出现的位置(下标值);否则输出-1。请分析程序填空。

6.110 下面程序的功能是在三个字符串中找出最小的。请分析程序填空。

6.111 下面程序的功能是从键盘输入一个大写英文字母,要求按字母的顺序打印出相邻的字母,指定的字母在中间。若指定的字母为'Z',则打印YZA;若为A则打印ZAB。请分析程序填空。

6.113 下面程序的功能是将字符串a中下标值为偶数的元素由小到大排序,其他元素不变。请分析程序填空。

6.114 下面程序的功能是在任意的字符串a中将与字符c相等的所有元素下标值分别存放在整型数组b中。请分析程序填空。

6.115 有十个字符串。下面程序的功能是在每个字符串中,找出最大字符按一一对应的顺序放入一维数组中,即第i个字符串中的最大字符放在a[i]中,输出每个字符串中的最大字符及其下标。

6.116 下面程序的运行结果是 。

6.117下面程序的运行结果是 。

6.118下面程序的运行结果是 。

*6.119下面程序的运行结果是 。

*6.120下面程序的运行结果是 。

*6.121 当运行以下程序时,从键盘输入AabD,则运行结果是 。

参考分析:本题是将串中小写字母逆序转换。

*6.122下面程序的运行结果是 。

6.123下面程序的运行结果是 。

*6.124 当运行以下程序时,从键盘输入:

则下面程序的运行结果是 。

参考分析:本题是查找输入的最大字符串(含初始串)。

6.125 当运行以下程序时,从键盘输入:

则下面程序的运行结果是 。

参考分析:本题是查找最后一个大于首字符的字符及其位置。

6.126 从键盘输入若干个整数,其值在0至4范围内,用-1作为输入结束的标志。统计每个整数的个数。

6.127 若有说明:int a[2][3]={{1,2,3},{4,5,6}};现要将a的行和列的元素互换后存到另一个二维数组b中。请编写程序并输出a和b数组中的元素。

6.128 定义一个含有30个整型元素的数组,按顺序分别赋予从2开始的偶数;然后按顺序每五个数求出一个平均值,放在另一个数组中并输出。试编程。

6.129 通过赋初值按行顺序为一个2×3的二维数组赋予2、4、6、...等偶数,然后按列的顺序输出该数组。试编程。

6.130 通过循环按行顺序为一个5×5的二维数组a赋1到25的自然数,然后输出该数组的左下半三角。试编程。

6.131 试编程打印用户指定的n阶顺时针螺旋方阵(n<10)。

6.132 数组a包括10个整数,把a中所有的后项除以前项之商取整后存入数组b,并按每行3个元素的格式输出数组b。试编程。

6.133 从键盘输入一个整数,,用折半查找法找出该数在10个有序整型数组a中的位置。若该数不在a中,则打印出相应信息。试编程。

6.134 从键盘输入两个字符串a和b,要求不用库函数strcat把串b的前五个字符连接到串a中;如果b的长度小于5,则把b的所有元素都连接到a中。试编程。

6.135 从键盘输入一个字符串a,并在串中的最大元素后边插入另外输入的字符串b。试编程。

}


1.下列四组选项中,均不是C语言关健字的选项是(A)。

2.下面四个选项中,均是合法整型常量的选项是(A)。

3.下面四个选项中,均是不合法的转义符的选项是(B)。

4.下面不正确的字符串常量是(A)。

5.以下选项中不合法的用户标识符是(A)。

6.C语言提供的合法关键字是(D)。

7.下列标识符组中,合法的用户标识符为A

8.在C语言中,逻辑值"真"的表示是用(C)。

A)使s的值包含一个字符B)定义不合法,s的值不确定

C)使s的值包含4个字符D)使s的值包含3个字符

10设C语言中,int类型数据占2个字节,则float类型数据占(D)个字节。

12逻辑运算符两侧运算对象的数据类型是(D)。

A)只是0或1B)只能是0或非0正数

C)只能是整型或字符型数据D)可以是任何合法的类型数据

14在C语言中,char型数据在内存中的存储形式是(D)。

15若有以下定义,则能使值为3的表达式是(D)。

16判断char型变量c1是否为小写字母的正确表达式为(D)。

17已知各变量的类型说明如下:

则以下不符合C语言语法的表达式是(A)。

用十进制形式输入有符号整数时,在scanf函数语句里格式字符为(AB)。

在scanf函数语句中可用的修饰符有(ABCD)。

1数据是操作的对象,操作的结果会改变数据的状况。对

2字符型变量用来存放字符常量,注意只能放2个字符。错

3C语言中可以把一个字符串赋给一个字符变量。错

4在C语言中的实型变量分为两种类型,它们是float(实型)和double(双精度实型)。错

5在C语言中,要求参加运算的数必须是整数的运算符是%.对

9getchar函数的功能是接收从键盘输入的一串字符。错

10在变量说明中给变量赋初值的方法是:inta=b=c=10;错

12printf函数是一个标准库函数,它的函数原型在头文件"stdio.h"中。对

13printf函数称为格式输入函数,它的函数原型在头文件"stdio.h"中。错

14在printf函数中,不同系统对输出表列的求值顺序不一定相同,TC是按从右到左进行的。

16逻辑运算符的优先级别高于算术运算符错

1在C语言中,表示逻辑"真"值用【1】.

4若x是int型变量,则执行下面表达式后,x的值为【12】。x=(a=4,6*2)

5若k为int整型变量且赋值7,请写出赋值表达式k*=k+3的运算结果【70】。

6scanf函数是一个标准库函数,它的函数原型在头文件【stdio.h】中。

7getchar函数可以接收【单】个字符,输入数字也按字符处理。

8在语句中,给变量赋值时,赋值语句必须以【分号】结尾。

10设x,y,z均为int型变量,请写出描述"x,y中有一个为负数"的表达式

1下面四个选项中,均是非法常量的选项是(A)。

2下面四个选项中,均是不合法整型常量的选项是(D)。

3下面正确的字符常量是(C)。

4以下每个选项都代表一个常量,其中正确的整型常量是(B)。

5以下选项中不合法的用户标识符是(C)。

6在下列C语言程序中,可以用做变量名的是(B)。

7C语言提供的合法数据关键字是(A)。

8以下符号中不能用作用户标识符的符号是(B)。

9若k为int型变量,则以下语句(C)。

A)一个双精度表达式B)一个整型表达式

C)一种函数调用D)一个不合法的表达式

11在C语言中,int、char和short三种类型数据在内存中所占用的字节数(D)。

A)由用户自己定义B)均为2个字节

C)是任意的D)由所用机器的机器字长决定

12判断char型变量c1是否为小写字母的正确表达式为(D)。

13以下叙述中正确的是(B)。

A.a是实型变量,C语言允许进行以下赋值a=10,因此可以这样说:实型变量中允许存放整

B.在赋值表达式中,赋值号右边即可以是变量也可以是任意表达式

C.执行表达式a=b后,在内存中a和b存储单元中的原有值都将被改变,a的值已由原值改变

为b的值,b的值由原值变为0

D.已有a=3,b=5当执行了表达式a=b,b=a之后,已使a中的值为5,b中的值为3

15下列运算符中,不属于关系运算符的是(C)。

16若希望当A的值为奇数时,表达式的值为真,A的值为偶数时,表达式的值为假,则以下不能

满足要求的表达式是(C)。

17已知各变量的类型说明如下:

则以下符合C语言语法的表达式是(A)。

18若变量已正确定义并赋值,下面符合C语言语法的表达式是(B)。

1用小数或指数形式输入实数时,在scanf函数语句里格式字符为(BCD)。

2可以使用(CD)输入字符型数据。

1C语言中数据有常量与变量之分。

2一般一个字符变量在内存中占一个字节。

3C语言规定,可以在定义变量时,同时使变量初始化。

4把k1、k2定义成基本整型变量,并赋初值0的定义语句是intk1=k2=0;。错

5如果i的原值为3,则:j=++i,j的值为3。错

6凡是表达式都有一个值。

9getchar函数的功能是接收从键盘输入的一个整数。错

12printf函数是一个标准库函数,它的函数原型在头文件"string.h"中。错

13在printf函数中,格式字符d的意义是:以十进制形式输出带符号整数。

14在printf函数中,输出表列的各输出项之间可用冒号分隔。错

1若有以下定义:charc='010';则变量C中包含的字符个数为(1)。

3若a是int型变量、且a的初值为6,则执行下面表达式后,a的值为【60】。a+=a-=a*a

4若x是int型变量,则执行下面表达式后,x的值为【4】。x=a=4,6*2

5若a是int型变量,且a的初值为6,则计算表达式后a的值为【60】。a+=a-=a*a

6scanf函数的地址表列中给出各变量的地址,地址是由【地址运算符"&"】后跟变量名

7使用getchar函数接收字符,若输入多于一个字符时,只接收第【一】个字符。

8C语言的格式输出函数是【printf()】。

1下面四个选项中,均是不合法的用户标识符的选项是(C)。

2下面四个选项中,均是不合法浮点数的选项是(B)。

3下面四个选项中,均是不正确的八进制或十六进制数的选项是(D)。

4以下每个选项都代表一个常量,其中不正确的实型常量是(B)。

5可用作用户标识符的一组标识符是(B)。

6下列标识符组中,合法的用户标识符为(B)。

7(B)是C语言提供的合法的数据类型关键字。

8以下选项中正确的常量是(B)。

9现已定义整型变量inti=1;

10设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为(C

A)包含1个字符B)包含2个字符

C)包含3个字符D)说明不合法,c的值不确定

13以下叙述中正确的是(B)。

A)在C程序中无论是整数还是实数,只要在允许的范围内都能准确无误的表示

B)若在定义语句doublea,b;之后,因为变量a,b已正确定义,因此立刻执行这样的表达式:

C)在C程序中,常量、变量、函数调用,都是表达式的一种

D)在main函数中,变量一经定义,系统将自动赋予初始值

16在C语言中,逻辑值"真"的表示是用(D)。

17以下不正确的叙述是(C)。

A)在C程序中,逗号运算的优先级最低

B)在C程序中,APH和aph是两个不同的变量

C)若a和b类型相同,在计算了赋值表达式a=b后b中的值将放入a中,而b中的值不变

D)当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值

1若在scanf函数语句中没有非格式字符作输入数据的间隔,则可用(ACD)。

A)空格B)逗号C)TABD)回车

2使用scanf函数时,在源程序开头(ABC)。

1C语言规定标识符只能由字母、数字和小数点三种字符组成。

2C语言使字符型数据和整型数据之间可以通用。一个字符数据既可以以字符形式输出,

也可以以整数形式输出。对

3C语言中定义了一个变量,代表内存中的一个地址。对

5由赋值运算符将一个变量和一个表达式连接起来的式子称为"赋值表达式"。对

6设C语言中,一个int型数据在内存中占2个字节,则int数据的取值范围为-。

9scanf函数中,如果格式控制串中有普通字符则输入时也要输入该普通字符。

11printf函数中的格式字符,既可以是大写形式,也可以是小写形式。

12在printf函数中,格式字符"%5c"可用来输出5个字符。

13在printf函数中,格式字符s的意义是:输出单个字符。

14在printf函数中,输出项可以是任意合法的表达式。

15算术运算符的优先级别高于关系运算符

1若x和n均是int型变量,且x的初值为12,n的初值为5,则执行下面表达式后,x的值为

3若a是int型变量,则执行下面表达式后,a的值为【2】。a=25/3%3

4表达式1/3*3的计算结果是【0】。

5若a是int型变量,则计算表达式后a的值为【2】。a=25/3%3

6在输入字符数据时,若"格式控制字符串"中没有非格式字符,则认为所有输入的字符均为

7在scanf函数中,【&a】表示变量a的地址。

9在C语言中,表示逻辑"真"值用【非零数】

12有inta=3,b=4,c=5,x,y;,则以下表达式的值为【0】

1以下符号中不能用作用户标识符的符号是()。

2下面四个选项中,均是合法浮点数的选项是()。

3下面四个选项中,均是正确的八进制或十六进制数的选项是()。

4以下选项中,为C语言合法的关键字是()。

5C语言提供的合法的数据类型关键字是()。

6下列标识符组中,合法的用户标识符为()。

7属于合法的C语言长整型常量的是()。

8列程序的输出结果是()。

9设已定义x为double类型变量

A)输出格式描述符的域宽不够,不能输出B)输出为21.38e+01

12设ch是char型变量,其值为Z,且有下面的表达式,其值为()。

13以下的变量定义中,合法的是()。

15逻辑运算符两侧运算对象的数据类型是()。

A)只是0或1B)只能是0或非0正数

C)只能是整型或字符型数据D)可以是任何类型数据

16下列表达式的值,那一个等于0()。

17以下正确的叙述是()。

A)在C程序中,每行只能写一条语句

B)若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数

C)在C程序中,无论是整数还是实数,都能被准确无误地表示

D)在C程序中,%是只能用于整数运算的运算符

18以下不正确的语句(设有intp,q)是()。

1若输入4位整数到整型变量a中,可用()。

1在C语言中,要求对所有用到的变量先定义,然后才能使用。

2C语言中,字符数据与整型数据可以互相赋值。

3C实型变量分为单精度和双精度两种。

4a1、a2定义成单精度实型变量,并赋初值1的定义语句是floata1=1;a2=1;。

5C语言中逗号运算符又称为"顺序求值运算符"。

7在使用scanf函数之前可以不包含头文件"stdio.h"。

12使用printf函数时,格式控制字符串和各输出项应一一对应。

13在printf函数中,格式字符f的意义是:以小数形式输出单精度实数。

14在printf函数中,转义字符b的作用是退格。

15算术运算符的优先级别高于逻辑运算符

1经过下述赋值后,变量x的数据类型是()。

2已知字母a的ASCII码的十进制代码为97,且设ch为字符型变量,则表达式ch='a'+'8'-'3'

3若s是int型变量,且s=6,则下面表达式的值为【】。

4表达式1.0/2*3的计算结果是【】。

7赋值语句是由赋值表达式加上【】构成的。

8在TC中,printf()函数输出表列的求值顺序是【】。

9设y为int型变量,请写出描述"y是奇数"的表达式【】

12有inta=3,b=4,c=5;,则以下表达式的值为【】

1C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符()。

C)必须为字母或下划线

D)可以是字母、数字和下划线中的任一种字符

2下面四个选项,均是合法转义字符的选项是()。

3下面四个选项中,均是正确的数值常量或字符常量的选项是()。

4以下符号中不能用作用户标识符的是()。

5在C语言中,下列哪个字符为合法的字符常量()。

6下列四个选项中,均是C语言关健字的选项是()。

7不合法的常量是()。

8若a为整型变量,则以下语句()。

A)赋值不合法B)输出值为-2C)输出为不确定值D)输出值为2

A)输出格式描述符的域宽不够,不能输出B)输出为213.83

10用getchar函数可以从键盘读入一个()

A)整型变量表达式值B)实型变量值

C)字符串D)字符或字符型变量值

13设x为int型变量,则执行以下语句段后,x的值为()。

15下列运算符中优先级最高的是()。

16设以下变量均为int类型,则值不等于7的表达式是()。

17以下符合C语言语法的,赋值表达式是()。

18以下使i的运算结果为4的表达式是()。

1下列能正确输入字符数组a的语句是()

2在输入时,字符变量的值不用空格间隔,其输入函数可为()。

1C的字符常量是用双引号括起来的一个字符。

2字符串常量是一对单引号括起来的字符序列。

3设C语言中,一个int型数据在内存中占2个字节,则int型数据的取值范围为-3。

4在C语言中的实型变量分为两种类型,它们是float和double。

7getchar()函数得到的字符可以不赋给任何变量,而作为表达式的一部分。

8scanf函数中无精度控制。

9a+==a=2;是一个合法的赋值语句,赋值后a的值为:2。

10在TC中,printf()函数输出表列的求值顺序是从右到左。

11在printf函数中,"%ld"表示按十进制正整数输出。

13在printf函数中,格式字符c的意义是:输出单个字符。

14在printf函数中,不能使用转义字符。

15关系运算符的优先级别高于逻辑运算符

16C语言中没有逻辑型数据

2若x、i、j和k都是int型变量,则计算下面表达式后,x的值为【】。

3若a是int型变量,则下面表达式的值为【】。

4若k为int整型变量且赋值7,x为double型变量且赋值8.4,赋值表达式x=k的运算结

6使用getchar函数前必须包含头文件【】。

7在变量说明中给同类变量赋初值时,各变量之间用【】隔开。

8以下程序的运行结果是【】。

9设x,y,z均为int型变量,请写出描述"x或y中有一个小于z"的表达式【】

C语言(分支和循环结构)一

1.以下程序输出结果是()

2以下程序的输出结果为()

该程序的输出结果是()

4若i为int型,且有程序如下,则输出结果是()

5若运行时x=12,则运行结果为()

6以下程序的输出结果是()

7若变量都已正确说明,则以下程序段输出为()

9以下不正确的语句为()

输入下列数据后,程序的输出结果是()

11若a、b、c1、c2、x、y、均是整型变量,正确的switch语句是()

12写出下面程序输出结果()

13C语言的for语句中的表达式可以部分或全部省略,但两个()不可省略。但当三个表达

均省略后,因缺少判断条件,循环会无限制地进行下去,形成死循环。

14下面有关for循环的正确描述是()。

A)for循环只能用于循环次数已经确定的情况

B)for循环是先执行循环体语句,后判定表达式

C)在for循环中,不能用break语句跳出循环体

D)for循环体语句中,可以包含多条语句,但要用花括号括起来

A)是死循环B)循环执行2次C)循环执行一次D)有语法错误

16如下的数组中,数组array占用的内存空间是()个字节。

则下面描述正确的是()。

A)while循环执行10次B)循环是无限循环

C)循环体语句一次也不执行D)循环体语句执行一次

18下列程序段的运行结果是()

下面描述正确的是()。

A)其中循环控制表达式与0等价B)其中循环控制表达式与'0'等价

C)其中循环控制表达式是不合法的D)以上说法都不对

20下面程序的运行结果是()。

21以下程序段的输出结果是().

22以下不是无限循环的语句为()。

A.输出的是1B.输出的是1和-2

C.输出的是3和0D.是死循环

24以下不是无限循环的是()

25以下正确的描述是()。

A)continue语句的作用是结束整个循环的执行

B)只能在循环体内和switch语句内使用break语句

C)在循环体内使用break语句或continue语句的作用相同

D)从多层循环嵌套中退出时,只能使用goto语句

26以下程序输出结果为()

27以下程序段中循环体总的执行次数是()

28以下不正确的描述是()

语句不能用于循环语句和switch语句外的任何其他语句

C.在循环语句中使用continue语句是为了结束本次循环,而不是终止整个循环的执行

D.在循环语句中使用break语句是为了使流程跳出循环体,提前结束循环

1else语句总是和靠它最近的if匹配。

3case后只能跟常量,不能跟变量

4break语句的作用就是结束本层循环。

5do-while语句构成的循环不能用其它语句构成的循环来代替。

6用do-while语句构成循环时,只要while后的表达式为0时就结束循环。

7for(表达式1;表达式2;表达式3)中,表达式1和表达式3不能同时都是逗号表达式。

8for循环中,如果表达式2为空,则该循环一定是死循环。

1若a、b均为int型变量,且a=100,则以下的for循环是死循环.

2以下程序的运行结果是【】

3以下程序的运行结果是【】

4以下程序的运行结果是【】

6为了使输出结果t=4,输入量a和b应满足的条件是【】

7下面程序的功能是在输入的一批整数中求出最大者,输入0结束循环。

8执行下面的程序段后,k值是【】。

9等差数列的第一项a=2,公差d=3,下面程序的功能是在前n项和中,输出能被4整除的所

10鸡兔共有30只,脚共有90个,下面程序段是计算鸡兔各有多少只,请填空。

11写出下面程序的运算结果【】。

12下列程序的输出为【】。

1.下列四组选项中,均不是C语言关健字的选项是(A)。

2.下面四个选项中,均是合法整型常量的选项是(A)。

3.下面四个选项中,均是不合法的转义符的选项是(B)。

4.下面不正确的字符串常量是(A)。

5.以下选项中不合法的用户标识符是(A)。

6.C语言提供的合法关键字是(D)。

7.下列标识符组中,合法的用户标识符为A

8.在C语言中,逻辑值"真"的表示是用(C)。

A)使s的值包含一个字符B)定义不合法,s的值不确定

C)使s的值包含4个字符D)使s的值包含3个字符

10设C语言中,int类型数据占2个字节,则float类型数据占(D)个字节。

12逻辑运算符两侧运算对象的数据类型是(D)。

A)只是0或1B)只能是0或非0正数

C)只能是整型或字符型数据D)可以是任何合法的类型数据

14在C语言中,char型数据在内存中的存储形式是(D)。

15若有以下定义,则能使值为3的表达式是(D)。

16判断char型变量c1是否为小写字母的正确表达式为(D)。

17已知各变量的类型说明如下:

则以下不符合C语言语法的表达式是(A)。

用十进制形式输入有符号整数时,在scanf函数语句里格式字符为(AB)。

在scanf函数语句中可用的修饰符有(ABCD)。

1数据是操作的对象,操作的结果会改变数据的状况。对

2字符型变量用来存放字符常量,注意只能放2个字符。错

3C语言中可以把一个字符串赋给一个字符变量。错

4在C语言中的实型变量分为两种类型,它们是float(实型)和double(双精度实型)。错

5在C语言中,要求参加运算的数必须是整数的运算符是%.对

9getchar函数的功能是接收从键盘输入的一串字符。错

10在变量说明中给变量赋初值的方法是:inta=b=c=10;错

12printf函数是一个标准库函数,它的函数原型在头文件"stdio.h"中。对

13printf函数称为格式输入函数,它的函数原型在头文件"stdio.h"中。错

14在printf函数中,不同系统对输出表列的求值顺序不一定相同,TC是按从右到左进行的。

16逻辑运算符的优先级别高于算术运算符错

1在C语言中,表示逻辑"真"值用【1】.

4若x是int型变量,则执行下面表达式后,x的值为【12】。x=(a=4,6*2)

5若k为int整型变量且赋值7,请写出赋值表达式k*=k+3的运算结果【70】。

6scanf函数是一个标准库函数,它的函数原型在头文件【stdio.h】中。

7getchar函数可以接收【单】个字符,输入数字也按字符处理。

8在语句中,给变量赋值时,赋值语句必须以【分号】结尾。

10设x,y,z均为int型变量,请写出描述"x,y中有一个为负数"的表达式

1下面四个选项中,均是非法常量的选项是(A)。

2下面四个选项中,均是不合法整型常量的选项是(D)。

3下面正确的字符常量是(C)。

4以下每个选项都代表一个常量,其中正确的整型常量是(B)。

5以下选项中不合法的用户标识符是(C)。

6在下列C语言程序中,可以用做变量名的是(B)。

7C语言提供的合法数据关键字是(A)。

8以下符号中不能用作用户标识符的符号是(B)。

9若k为int型变量,则以下语句(C)。

A)一个双精度表达式B)一个整型表达式

C)一种函数调用D)一个不合法的表达式

11在C语言中,int、char和short三种类型数据在内存中所占用的字节数(

A)由用户自己定义B)均为2个字节

C)是任意的D)由所用机器的机器字长决定

12判断char型变量c1是否为小写字母的正确表达式为(D)。

13以下叙述中正确的是(B)。

A.a是实型变量,C语言允许进行以下赋值a=10,因此可以这样说:实型变量中允许存放整

B.在赋值表达式中,赋值号右边即可以是变量也可以是任意表达式

C.执行表达式a=b后,在内存中a和b存储单元中的原有值都将被改变,a的值已由原值改变

为b的值,b的值由原值变为0

D.已有a=3,b=5当执行了表达式a=b,b=a之后,已使a中的值为5,b中的值为3

15下列运算符中,不属于关系运算符的是(C)。

16若希望当A的值为奇数时,表达式的值为真,A的值为偶数时,表达式的值为假,则以下不能

满足要求的表达式是(C)。

17已知各变量的类型说明如下:

则以下符合C语言语法的表达式是(A)。

18若变量已正确定义并赋值,下面符合C语言语法的表达式是(B)。

1用小数或指数形式输入实数时,在scanf函数语句里格式字符为(BCD)。

2可以使用(CD)输入字符型数据。

1C语言中数据有常量与变量之分。

2一般一个字符变量在内存中占一个字节。

3C语言规定,可以在定义变量时,同时使变量初始化。

4把k1、k2定义成基本整型变量,并赋初值0的定义语句是intk1=k2=0;。错

5如果i的原值为3,则:j=++i,j的值为3。错

6凡是表达式都有一个值。

9getchar函数的功能是接收从键盘输入的一个整数。错

12printf函数是一个标准库函数,它的函数原型在头文件"string.h"中。错

13在printf函数中,格式字符d的意义是:以十进制形式输出带符号整数。

14在printf函数中,输出表列的各输出项之间可用冒号分隔。错

1若有以下定义:charc='010';则变量C中包含的字符个数为(1)。

3若a是int型变量、且a的初值为6,则执行下面表达式后,a的值为【60】。a+=a-=a*a

4若x是int型变量,则执行下面表达式后,x的值为【4】。x=a=4,6*2

5若a是int型变量,且a的初值为6,则计算表达式后a的值为【60】。a+=a-=a*a

6scanf函数的地址表列中给出各变量的地址,地址是由【地址运算符"&"】后跟变量名

7使用getchar函数接收字符,若输入多于一个字符时,只接收第【一】个字符。

8C语言的格式输出函数是【printf()】。

1下面四个选项中,均是不合法的用户标识符的选项是(C)。

2下面四个选项中,均是不合法浮点数的选项是(B)。

3下面四个选项中,均是不正确的八进制或十六进制数的选项是(D)。

4以下每个选项都代表一个常量,其中不正确的实型常量是(B)。

5可用作用户标识符的一组标识符是(B)。

6下列标识符组中,合法的用户标识符为(B)。

7(B)是C语言提供的合法的数据类型关键字。

8以下选项中正确的常量是(B)。

9现已定义整型变量inti=1;

10设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为(C)。

A)包含1个字符B)包含2个字符

C)包含3个字符D)说明不合法,c的值不确定

13以下叙述中正确的是(B)。

A)在C程序中无论是整数还是实数,只要在允许的范围内都能准确无误的表示

B)若在定义语句doublea,b;之后,因为变量a,b已正确定义,因此立刻执行这样的表达式:

C)在C程序中,常量、变量、函数调用,都是表达式的一种

D)在main函数中,变量一经定义,系统将自动赋予初始值

16在C语言中,逻辑值"真"的表示是用(D)。

17以下不正确的叙述是(C)。

A)在C程序中,逗号运算的优先级最低

B)在C程序中,APH和aph是两个不同的变量

C)若a和b类型相同,在计算了赋值表达式a=b后b中的值将放入a中,而b中的值不变

D)当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值

1若在scanf函数语句中没有非格式字符作输入数据的间隔,则可用(ACD)。

A)空格B)逗号C)TABD)回车

2使用scanf函数时,在源程序开头(ABC)。

1C语言规定标识符只能由字母、数字和小数点三种字符组成。

2C语言使字符型数据和整型数据之间可以通用。一个字符数据既可以以字符形式输出,

也可以以整数形式输出。对

3C语言中定义了一个变量,代表内存中的一个地址。对

5由赋值运算符将一个变量和一个表达式连接起来的式子称为"赋值表达式"。对

6设C语言中,一个int型数据在内存中占2个字节,则int数据的取值范围为-。

9scanf函数中,如果格式控制串中有普通字符则输入时也要输入该普通字符。

11printf函数中的格式字符,既可以是大写形式,也可以是小写形式。

12在printf函数中,格式字符"%5c"可用来输出5个字符。

13在printf函数中,格式字符s的意义是:输出单个字符。

14在printf函数中,输出项可以是任意合法的表达式。

15算术运算符的优先级别高于关系运算符

1若x和n均是int型变量,且x的初值为12,n的初值为5,则执行下面表达式后,x的值为

3若a是int型变量,则执行下面表达式后,a的值为【2】。a=25/3%3

4表达式1/3*3的计算结果是【0】。

5若a是int型变量,则计算表达式后a的值为【2】。a=25/3%3

6在输入字符数据时,若"格式控制字符串"中没有非格式字符,则认为所有输入的字符均为

7在scanf函数中,【&a】表示变量a的地址。

9在C语言中,表示逻辑"真"值用【非零数】

12有inta=3,b=4,c=5,x,y;,则以下表达式的值为【0】

1以下符号中不能用作用户标识符的符号是()。

2下面四个选项中,均是合法浮点数的选项是()。

3下面四个选项中,均是正确的八进制或十六进制数的选项是()。

4以下选项中,为C语言合法的关键字是()。

5C语言提供的合法的数据类型关键字是()。

6下列标识符组中,合法的用户标识符为()。

7属于合法的C语言长整型常量的是()。

8列程序的输出结果是()。

9设已定义x为double类型变量

A)输出格式描述符的域宽不够,不能输出B)输出为21.38e+01

12设ch是char型变量,其值为Z,且有下面的表达式,其值为()。

13以下的变量定义中,合法的是()。

15逻辑运算符两侧运算对象的数据类型是()。

A)只是0或1B)只能是0或非0正数

C)只能是整型或字符型数据D)可以是任何类型数据

16下列表达式的值,那一个等于0()。

17以下正确的叙述是()。

A)在C程序中,每行只能写一条语句

B)若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数

C)在C程序中,无论是整数还是实数,都能被准确无误地表示

D)在C程序中,%是只能用于整数运算的运算符

18以下不正确的语句(设有intp,q)是()。

1若输入4位整数到整型变量a中,可用()。

1在C语言中,要求对所有用到的变量先定义,然后才能使用。

2C语言中,字符数据与整型数据可以互相赋值。

3C实型变量分为单精度和双精度两种。

4a1、a2定义成单精度实型变量,并赋初值1的定义语句是floata1=1;a2=1;。

5C语言中逗号运算符又称为"顺序求值运算符"。

7在使用scanf函数之前可以不包含头文件"stdio.h"。

12使用printf函数时,格式控制字符串和各输出项应一一对应。

13在printf函数中,格式字符f的意义是:以小数形式输出单精度实数。

14在printf函数中,转义字符b的作用是退格。

15算术运算符的优先级别高于逻辑运算符

1经过下述赋值后,变量x的数据类型是()。

2已知字母a的ASCII码的十进制代码为97,且设ch为字符型变量,则表达式ch='a'+'8'-'3'

3若s是int型变量,且s=6,则下面表达式的值为【】。

4表达式1.0/2*3的计算结果是【】。

7赋值语句是由赋值表达式加上【】构成的。

8在TC中,printf()函数输出表列的求值顺序是【】。

9设y为int型变量,请写出描述"y是奇数"的表达式【】

12有inta=3,b=4,c=5;,则以下表达式的值为【】

1C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符(

C)必须为字母或下划线

D)可以是字母、数字和下划线中的任一种字符

2下面四个选项,均是合法转义字符的选项是()。

3下面四个选项中,均是正确的数值常量或字符常量的选项是()。

4以下符号中不能用作用户标识符的是()。

5在C语言中,下列哪个字符为合法的字符常量()。

6下列四个选项中,均是C语言关健字的选项是()。

7不合法的常量是()。

8若a为整型变量,则以下语句()。

A)赋值不合法B)输出值为-2C)输出为不确定值D)输出值为2

A)输出格式描述符的域宽不够,不能输出B)输出为213.83

10用getchar函数可以从键盘读入一个()

A)整型变量表达式值B)实型变量值

C)字符串D)字符或字符型变量值

13设x为int型变量,则执行以下语句段后,x的值为()。

15下列运算符中优先级最高的是()。

16设以下变量均为int类型,则值不等于7的表达式是()。

17以下符合C语言语法的,赋值表达式是()。

18以下使i的运算结果为4的表达式是()。

1下列能正确输入字符数组a的语句是()

2在输入时,字符变量的值不用空格间隔,其输入函数可为()。

1C的字符常量是用双引号括起来的一个字符。

2字符串常量是一对单引号括起来的字符序列。

3设C语言中,一个int型数据在内存中占2个字节,则int型数据的取值范围为-3。

4在C语言中的实型变量分为两种类型,它们是float和double。

7getchar()函数得到的字符可以不赋给任何变量,而作为表达式的一部分。

8scanf函数中无精度控制。

9a+==a=2;是一个合法的赋值语句,赋值后a的值为:2。

10在TC中,printf()函数输出表列的求值顺序是从右到左。

11在printf函数中,"%ld"表示按十进制正整数输出。

13在printf函数中,格式字符c的意义是:输出单个字符。

14在printf函数中,不能使用转义字符。

15关系运算符的优先级别高于逻辑运算符

16C语言中没有逻辑型数据

2若x、i、j和k都是int型变量,则计算下面表达式后,x的值为【】。

3若a是int型变量,则下面表达式的值为【】。

4若k为int整型变量且赋值7,x为double型变量且赋值8.4,赋值表达式x=k的运算结

6使用getchar函数前必须包含头文件【】。

7在变量说明中给同类变量赋初值时,各变量之间用【】隔开。

8以下程序的运行结果是【】。

9设x,y,z均为int型变量,请写出描述"x或y中有一个小于z"的表达式【】

C语言(分支和循环结构)一

1.以下程序输出结果是()

2以下程序的输出结果为()

该程序的输出结果是()

4若i为int型,且有程序如下,则输出结果是()

5若运行时x=12,则运行结果为()

6以下程序的输出结果是()

7若变量都已正确说明,则以下程序段输出为()

9以下不正确的语句为()

输入下列数据后,程序的输出结果是()

11若a、b、c1、c2、x、y、均是整型变量,正确的switch语句是(

12写出下面程序输出结果()

13C语言的for语句中的表达式可以部分或全部省略,但两个()不可省略。但当三个表达

均省略后,因缺少判断条件,循环会无限制地进行下去,形成死循环。

14下面有关for循环的正确描述是()。

A)for循环只能用于循环次数已经确定的情况

B)for循环是先执行循环体语句,后判定表达式

C)在for循环中,不能用break语句跳出循环体

D)for循环体语句中,可以包含多条语句,但要用花括号括起来

A)是死循环B)循环执行2次C)循环执行一次D)有语法错误

16如下的数组中,数组array占用的内存空间是()个字节。

则下面描述正确的是()。

A)while循环执行10次B)循环是无限循环

C)循环体语句一次也不执行D)循环体语句执行一次

18下列程序段的运行结果是()

下面描述正确的是()。

A)其中循环控制表达式与0等价B)其中循环控制表达式与'0'等价

C)其中循环控制表达式是不合法的D)以上说法都不对

20下面程序的运行结果是()。

21以下程序段的输出结果是().

22以下不是无限循环的语句为()。

A.输出的是1B.输出的是1和-2

C.输出的是3和0D.是死循环

24以下不是无限循环的是()

25以下正确的描述是()。

A)continue语句的作用是结束整个循环的执行

B)只能在循环体内和switch语句内使用break语句

C)在循环体内使用break语句或continue语句的作用相同

D)从多层循环嵌套中退出时,只能使用goto语句

26以下程序输出结果为()

27以下程序段中循环体总的执行次数是()

28以下不正确的描述是()

语句不能用于循环语句和switch语句外的任何其他语句

C.在循环语句中使用continue语句是为了结束本次循环,而不是终止整个循环的执行

D.在循环语句中使用break语句是为了使流程跳出循环体,提前结束循环

1else语句总是和靠它最近的if匹配。

3case后只能跟常量,不能跟变量

4break语句的作用就是结束本层循环。

5do-while语句构成的循环不能用其它语句构成的循环来代替。

6用do-while语句构成循环时,只要while后的表达式为0时就结束循环。

7for(表达式1;表达式2;表达式3)中,表达式1和表达式3不能同时都是逗号表达式。

8for循环中,如果表达式2为空,则该循环一定是死循环。

1若a、b均为int型变量,且a=100,则以下的for循环是死循环.

2以下程序的运行结果是【】

3以下程序的运行结果是【】

4以下程序的运行结果是【】

6为了使输出结果t=4,输入量a和b应满足的条件是【】

7下面程序的功能是在输入的一批整数中求出最大者,输入0结束循环。

8执行下面的程序段后,k值是【】。

9等差数列的第一项a=2,公差d=3,下面程序的功能是在前n项和中,输出能被4整除的所

10鸡兔共有30只,脚共有90个,下面程序段是计算鸡兔各有多少只,请填空。

11写出下面程序的运算结果【】。

12下列程序的输出为【】。

C语言(分支和循环结构)二

以下程序的输出结果是()

若执行以下程序时从键盘上输入9,则输出结果是(

若i为int型,且有程序如下,则输出结果是()

在C语言的if语句中,用作判断的表达式为()

A)关系表达式B)逻辑表达式

C)算术表达式D)任意表达式

若变量都已正确说明,则以下程序段输出为()

以下程序的输出结果是()

若w、x、y、z、m均为int型变量,则执行下面语句后的m值是(

若输入B,以下程序的运行结果为()

选择出i的正确结果()

C语言的do_while循环中,循环由do开始,用while结束;而且在while表达式后面的(

不能丢,它表示d0_while循环的结束。

C语言的do_while循环中,循环由do开始,用while结束;而且在while表达式后面的(

不能丢,它表示d0_while循环的结束。

以下程序的输出结果是()。

A.y=0B.无限循环,无结果输出

A)运行程序段后输出0B)运行程序段后输出1

C)程序段中的控制表达式是非法的D)程序段执行无限次

下面程序段的运行结果是()。

以下能正确计算1×2×3×4...×10的程序段是()。

下面程序的运行结果是()。

若i为整型变量,则以下循环执行的次数是()。

下面程序段的运行结果是()。

C.循环次数不定D.是无限循环

下列程序段不是死循环的是()。

D)最多允许输出100个非负整数

以下为死循环的程序段是()。

以下说法中正确的是()。

A)循环体语句执行一次。B)循环执行无限次

C)循环体语句一次也不执行D)循环执行两次

下面程序的运行结果是().

while语句do-while语句无论什么情况下,二者的执行结果都一样。

C语言的while、do-while和for几个循环语句,可以进行相互嵌套。

do-while语句构成的循环只能用break语句退出。

for(;;){循环体}永远是一个死循环。

要使for(表达式1;表达式2;表达式3){循环体}不形成死循环,表达式2一定不能为空。

C语言程序的三种基本结构是嵌套结构、递归结构、顺序结构。

C语言中while与do-while语句的主要区别是do-while的循环体至少无条件执行一次。

以下程序的运行结果是【】

以下程序的运行结果是【】

以下程序的运行结果是【】

若运行时输入:35/,则以下程序的运行结果是【】

当运行下面程序时,从键盘键入right?,则下面程序的运行结果是【】。

下面程序段的运行结果是【】。

当运行以下程序时,从键盘键入12345-1,则下面程序的运行结果是【

下面程序段的运行结果是【】。

以下程序输出结果为【】。

设x和y均为int型变量,则执行下的循环后,y值为【】。

C语言(分支和循环结构)三

该程序的输出结果是()

若i为int型,且有程序如下,则输出结果是()

****D)有语法错误,无输出结果

有程序如下,若由键盘输入70,则输出结果是()

选择运行结果为4的表达式()

A)有语法错不能通过编译B)可以通过编译但不能连接

###以下程序的输出结果是()

以下程序的运行结果是()

}

我要回帖

更多关于 c语言数组求最小值 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信