高级语言程序设计练习题2015_第1页
高级语言程序设计练习题2015_第2页
高级语言程序设计练习题2015_第3页
高级语言程序设计练习题2015_第4页
高级语言程序设计练习题2015_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、高级语言程序设计练习题一填空题1. 以下条件表达式可计算1+|a|的值,填空完成语句:a>=0 ?(1+a):( 1-a ) 2. 函数max定义的首部为:int max(int x,int n),该函数完成实现寻找长度为n的数组x中的最大元素。若在主函数中有定义:int c,a10;并要求函数调用后,变量c存放数组a中的最大元素,则函数调用语句应为:( c=max(a,10) )3. 若有int i=5; 则循环语句while(i > = 1) i - -;执行后,i的值为 ( 0 )。4. 能正确表示逻辑关系:“0a10”的C语言表达式是( a>=0&&a

2、<10 )。5. 设int a23 = 2,3;则数组元素(a10 )的值为3。6. 表达式 (int)(3.0/2.0)的值是( 1 )。7. 有定义: int x=3, y=2; 执行x/=y+1; 语句后x的值为( 1 ) 。8. 有定义: int x=2, y=0; 表达式 (!x|y) 的值为( 0 )。9. 有定义:int i=5; 则循环语句while(i>=1) i=i-2; 执行后变量i的值为( -1 )。10. 已知 A Z 的ASCII码为6590,当执行int x= D+5; 语句后x的值为( 73 )。11. 如果在调用一个函数过程中,又调用另一个函数,称

3、为函数的( 嵌套 )调用。如果在调用一个函数的过程中又直接或间接地调用该函数本身,称为函数的(递归 )调用。12. 若有语句:int b2=1,2,3; 则数组b的元素a11的值是( 0 )。13. 能正确表示数学表达式的C语言表达式是( 2a/(c*(b+c) )。二. 选择题(在每题的四个备选答案中,选出一个正确的答案)1. 以下不能定义为变量名的是:B(A) sanf (B) void (C) _2com (D) Go2. 以下选项中非法的字符常量是:B(A) (B)181 (C) 0 (D) xAA3. 有以下程序: int main() D int k=2,i=2,m ; m=i*=

4、k+; printf(“%d,%dn”,m,i); return 0;执行程序后的输出结果是:(A) 6,6 (B) 4,3 (C) 6,4 (D) 4,44. 设x,y,t均为int型变量,则执行语句: x=y=3;t=+x|+y;后,t的值为:B(A) 不定值 (B) 1 (C) 3 (D) 45. 若有下列定义语句:long x;double y; float z; 执行程序时输入10,2.5,3.6,那么以下输入语句中能正确为变量赋值的是: A (A) scanf("%ld%lf%f", &x,&y,&z); (B)scanf("%

5、d%f%f",&x,&y,&z);(C)scanf("%ld,%lf,%f", &x,&y,&z);(D)scanf("%ld,%lf,%lf",&x,&y,&z);6. 以下叙述中不正确的是: D(A) 在不同的函数中可以使用相同名字的变量 (B) 函数中的形式参数是局部变量(C) 在一个函数内定义的变量只在本函数范围内有效 (D) 在一个函数内的复合语句中定义的变量在本函数范围内有效7. 已有数组定义int a23=1,2,3,4;则a12的值为:A(A) 0 (B)4

6、 (C) 3 (D) 28. 在整个程序运行期间,某局部变量始终占据固定地存储单元,则其存储类型为:B(A)auto (B) static (C) register (D) extern9. 下列关于C函数的叙述中,正确的是:c(A) 每个函数至少要具有一个参数(B) 每个函数都必须有返回值(C) 每个C程序中必须有一个main函数(D) 函数不能自己调用自己10. 有定义: int k=0,n; 则以下四个赋值语句中变量n的值与其他三个赋值语句不同的是:AA) n=k+;B) n=k+=1;C) n= +kD) n=k+111. 在C语言中,合法的字符常量是: B A) 084' B

7、) x43' C) ab' D) “0”12. 为表示关系 xyz,应使用的C表达式是:BA) (x>=y) and (y>=z)B) (x>=y) && (y>=z)C) x>=y>=zD) (x>=y) & (y>=z)13. 下列运算符中优先级最高的是:CA) / B) && C) ! D) =14. 若用数组名作为函数调用时的实参,则实际上传递给形参的是:AA) 数组首地址 B) 数组的第一个元素值C) 数组中全部元素的值 D) 数组元素的个数15. 语句 while(x%y); 括

8、号中的表达式等价于: cA) x%y=0 B) x/y!=0 C) x%y!=0 D) x=y16. 温度华氏和摄氏的关系是: 。已知:float C,F;由华氏求摄氏的正确的C赋值表达式是:DA) C=5/9(F-32) B) C=5*(F-32)/9 C) C=5/9*(F-32) D) 三个表达式都正确17. 以下叙述中正确的是:BA) break语句只能用于switch语句体中。B) break语句只能用于循环体中。C) continue语句只能用于switch语句体中。D) continue语句只能用于循环体中。 18. 下列程序的输出结果是:int i,s=0;for(i=1;i&

9、lt;=10;i+) if(i%3!=0) continue; s+=i; printf(“%d”,s); AA) 18 B) 20 C) 0 D) 1三. 程序分析题:阅读下列程序,写出程序执行结果1int main() int a; float x=3.2,y=1.3; a=(int)x%2*y; printf(“%d,%4.2f”,a,x); 1,3.20 return 0; 2. int main( ) int x=1,a=0,b=0; switch(x) case 0: b+ ;break ;case 1: a+ ; case 2: a+ ;b+ ; printf(“%d,%d”,a

10、,b); 2,1return 0;8 3.void inv(int x, int n) int t,i,j; for(i=0;i<=(n-1)/2;i+) j=n-1-i; t=xi; xi=xj; xj=t; int main() int i,a6=1,2,3,4,5,6 ; inv(a,6); for(i=0;i<6;i+) printf(“%d,”,ai); printf("n"); return 0; 6,5,4,3,2,14. int main int i,j;for(i=1;i<6;i+)for(j=1;j<i;j+)printf(“%4

11、d”,i*j); printf(“n”);return 0; 23 64 8 125 10 15 20四. 程序填空:1、下面的程序功能是:输出x,y,z三个数中的最小值,请填空使程序完整。#include <stdio.h>void main ( ) int x=4,y=5,z=8 ; int u,v; u = x<y ? x:y ; v = u<z ? u:z ; printf ("%dn",v);2、下面的程序功能是:计算输入整数的各位数字之和。例如整数1987各位数字之和是1+9+8+7,等于25。请填空。#include <stdio

12、.h>void main()int i,k=0,sum;printf("Enter a integer:");scanf("%d",&i); sum=0 ;while(i!=0) k=i%10 ;sum += k; i=i/10 ;printf("sum is %dn",sum);3、 下面的程序功能是:输出所有个位数为6,且能被3整除的2位数。请填空使程序完 整。#include <stdio.h>int main() int t, i=10; while( i<=99 ) t=i%10 ; if( t

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论