C语言-模拟题.doc_第1页
C语言-模拟题.doc_第2页
C语言-模拟题.doc_第3页
C语言-模拟题.doc_第4页
C语言-模拟题.doc_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

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

文档简介

C 语言程序设计模拟题一、选择题(共15分,每题 1分 )1C以下叙述中,正确的是 。A. 在C程序中,main函数必须位于程序的最前面B. C程序的每一行只能写一条语句C. C语言本身没有输入输出语句D. 在对一个C程序进行编译的过程中,可发现注释中的拼写错误2A while循环为当型循环,其特点是 。A. 先判断表达式,后执行语句B. 先执行语句,后判断表达式C. 只判断表达式D. 直接执行语句3. B 设有变量定义char str80; 下列 语句能将字符串“shanghai 2011”从键盘输入到数组变量str中。 A. printf(%s,str);B. gets(str);C. scanf(%s,str);D. puts(str);4. B 循环语句中,continue语句的作用是 。A. 终止程序B. 结束本次循环C. 从本循环体内跳出D. 跳出子函数5. B 下列 语句定义p为指向double类型变量x的指针。A. double x, *p=x;B. double x, *p=&x;C. double *p=&x , x;D. double x, p=x;6. D 下面四个程序段中,不能输出23个*号的程序段是 。A. for(int i=0; i0; j-) putchar(*);C. int k=23; while(k0) putchar(*); k-;D. int i=0; while(i23) putchar(*); i+; 7. B以下对结构体变量stu1中成员age的非法引用是 。stuct student int age; int num;stu1, *p=&stu1;A. stu1.ageB. student.ageC. p-ageD. (*p).age8. D 设有变量定义 int x, a=3, b=4; 则语句 x=(a=0)&(b=8); 执行之后各变量的值为 。A. x=0, a=0, b=8B. x=1, a=3, b=4C. x=1, a=0, b=8D. x=0, a=0, b=49A 下列标识符中,不合法的标识符为: 。A. a#bB. _intC. a_10D. Pad10. C 若希望A的值为奇数时,表达式的值为“真”,A的值为偶数时,表达式的值为“假”,则以下不能满足要求的表达式是 。A. A%2=1B. !(A%2=0)C. !(A%2)D. A%211. D 为了判断两个字符串s1和s2是否相等,应当使用_。 A. if (s1=s2 )B. if (s1 = s2 )C. if ( strcpy (s1,s2 ) )D. if ( strcmp( s1,s2) = 0 )12B以下程序段的输出结果为: 。for ( i=4; i1;i- )for ( j=1; ji; j+ ) putchar(#);A. #B. #C. #D. #13 B 设x,y和z是int 型变量,且x=3,y=4,z=5,则下面表达式中值为0的是 。A. y & yB. x=y & y!=zC. x|y+z & y-zD. !(xy) & !z | 114. D 若有变量定义:int a4, *p=a; 则以下对数组a的元素不正确的引用是_。 A. *aB. *(p+1)C. p1D. a415. C设有以下结构体定义及初始化,表达式(stu0.score+stu1.score)/2的结果是_。 struct student int num; float score; stu2=90,91.5,93,92.5;A. 91.0B. 91.5C. 92.0D. 92.5二、填充题(共 26 分,每题 2分)1、表达式strlen (“C2009”) 的值是_5_2、设a=2,b=3,x=3.5,y=2.5, 表达式(float)(a+b)/2+(int)x%2/4 的值为 2.5 3、下面这些运算符中 :%, /, + ,* ,要求运算量是整型的是 % 4、已知: int i=0, j=10, k; 完成 下列循环后,k的 值是 10 for ( ;i=j; i+,j-) k=i+j;5、已知:int a=5; ,计算表达式 a-=a*=a+=a/a 后,变量 a的值 是 0 6、已知:int a=2; ,表达式 a%2+(a=5) 的值 是 5 7、下列运算符中: !, +=, &, %=, | , 优先级相同的是 +=, %= 8、已知 : int a=1, b=0, c=1; 计算表达式 !b|+a&+c的值后,c的值是 1 9、下列函数 fun() 被调用了 3次,a的值 是 4 fun() static int a=1; +a;10、在下列调用函数中,实参的个数是 3 fun( a1, (a2,a3),(a4,a5,a6);11、下列结构变量 m的成员 a 的表示应该是 m.a struct xy int a; double b; m;12、已知: char a=”abcde”,*p; 表达式 *(p+5)的值 为 0 13、函数double fun(double x,int n) 的功能是计算xn,则调用fun函数计算 m=a4+b4-(a+b)3的函数调用语句为 m=fun(a,4)+fun(b,4)-fun(a+b,3) 。三、程序填空(共 30分,每空 3分 ) 1. 程序完成以下功能:对x=1,2,.,10,求函数f(x)=x-10cos(x)-5sin(x)的最大值,并将该值写到新建文件data.txt中。#include #include void main() FILE *p; float f(float),max,x; if(p=fopen(_ ,w)=NULL) /答案:data.txt printf(cannot open FILEn); exit(0); max=f(1); for(x=2;x=10;x+) if(_ f(x) /答案:max max=f(x); fprintf(p,%.3f,max); fclose(_); /答案:pfloat f(float x) _; /答案:double y 或 float y y=x-10*cos(x)-5*sin(x); return y; 2 查找100至999之间所有符合以下条件的数:它是另一数的平方,且至少有两位数是相同的。如数144,它是12的平方,其中有两位4。int main() int n,m,a,b,c; for ( n = 10; n =0。请填空。 void fun(float *sn,int n) float s=0.0,w,f= -1.0; int i=0; for ( i=0; i=n; i+ ) f= *f; /答案:-1 w=f/(2*i+1); s+=w; =s; /答案: *sn4 统计字符换str中字符#与数字字符的个数。#include#includemain() charstr81; _ /答案: int n1=0,n2=0; gets(str); for ( i = 0; stri ! = 0; i+ ) if ( str i= ) n1+; _ /答案:if (stri=0 & stri = 9 ) n2+; printf( #=%d, digit=%dn, n1, n2 );四、编程题(29分)1. 在源程序文件“C:素材test1.c”中,编写程序,完成以下功能,并将test1a.c文件保存到“C:KS”文件夹(9分): n个a输入a(为1-9的整数)、n(为1-16的整数),编程求s=a+aa+aaa+aaa a之值。2. 在源程序文件“C:素材test2.c”中,编写程序,完成以下功能,并将test2c.c文件保存到“C:KS”文件夹(10分): 从键盘上输入一行少于100个字符的字符串,调用函数统计字符串中英文字母的个数,然后输出结果。函数定义如下: int charac( char str )。3. 在源程序文件“C:

温馨提示

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

评论

0/150

提交评论