ImageVerifierCode 换一换
格式:DOCX , 页数:18 ,大小:22.19KB ,
资源ID:6334424      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6334424.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(信息工程学院C语言复习资料.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

信息工程学院C语言复习资料.docx

1、信息工程学院C语言复习资料一、单项选择题 1. C语言的运算符按运算对象的数目可以分为 _。A) 单目运算一种 B) 单目和双目运算符C) 单目、双目和三目运算符 D) 单目、双目、三目运算和四目运算符2. C语言表达式2/5*10的值是 _ 。A) 0.04 B) 4 C) 4.0 D) 03. 已知变量f和i的类型说明如下:float f=12.34; int i; 则以下符合C语言语法的表达式是 _ 。A) i=(int)f%5 B) i=int(f)%5C) i=f%5 D) i=(int f)%54. 能正确表示数学式1x5的C语言表达式是 _ 。A) 1 =x =1)&(x=1 )

2、&(x=5) D) (1 =x)5. 设变量c的数据类型是char,i的数据类型是int,f的数据类型是float,则C语言表达式c*i+c*f-i+100值的数据类型为_ 。A) int B) float C) char D) 不确定6. 在下列选项中,合法的C语言用户标识符的是 _ 。A) int B)sin C)if D)i+j7. C程序的执行从_ 开始。A) 程序中的第个语句 B) 程序中的第个函数C) 名为main 的函数 D) 包含文件的第个函数8. 凡在C语言函数中未指定存储类别的变量,其隐含的存储类别为 _ 。A) 自动(auto) B) 静态(static) C) 字符串

3、D) 字符或字符型变量值11. 在C语言中,以下错误的描述是 _ 。A) break语句不能用于循环语句和switch语句外的任何其它语句B) 在switch语句中使用break语句或continue语句的作用相同C) 在循环语句中使用continue语句是为了结束本次循环,而不是终止整个循环D) 在循环语句中使用break语句是为了使流程跳出循环体,提前结束循环12. 在C语言中,数组作为函数的形参,函数调用时,若用数组名作为函数的实参,则实际上传递给形参的是 _ 。A) 数组首地址 B) 数组的第一个元素值C) 数组中全部元素的值 D) 数组元素的个数13. C语言编译系统对宏命令是 _

4、。A) 在程序运行时进行替换处理B) 在程序连接时进行处理C) 和源程序中其它C语句同时进行编译D) 在对源程序中其它成份正式编译之前进行处理14. 设 x、y为整型变量且已赋值,将其中较大的值输出的、正确的 if 语句是 _ 。A) if ( x y ) printf ( “ %d ” , x ); B) if ( x y ) printf ( “ %d ” , x ); printf ( “ %d ” , y );C) if ( x y ) ; printf ( “ %d ” , x ); else printf ( “ %d ” , y ); D) if ( x y ) printf (

5、 “ %d ” , x ); else printf ( “ %d ” , y ); 15. 对以下程序段描述正确的是 _ 。int x=10;while(x) x=x/4;A) 不执行循环体 B) 循环体执行一次 C) 循环体执行二次 D) 死循环16. 在C语言中,引用数组元素时,对数组下标的数据类型以下说法错误的是_。A) 数组下标可以用整型常量 B) 数组下标可以用整型变量 C) 数组下标可以用任意类型的表达式 D) 数组下标可以用整型表达式17. 以下C函数的功能是 _ 。int fun(int x,int y) int z=0; z=xy?x:y; return z; A) 返回x

6、 和y二者中的最大值 B) 返回x 和y二者中的最小值C) 返回一个不确定的值 D) 返回函数值018. 定义数组:int s10; 则数组元素下标的取值_ 。A) 最小值为1,最大值为10 B) 最小值为0,最大值为10 C) 最小值为0,最大值为9 D) 最小值为1,最大值为919. 定义int i, s45; 则不能表示数组第3行第3列元素值的是_ 。A) * ( * ( x) )+ 3 B) x 3 3 C) * ( * ( x + 3 ) + 3 ) D) * ( x 3 + 3 ) 20. 以下C函数的类型是 _ 。fun (float f) printf ( “ %f n ” ,

7、 f ) ; A) int B) float C) void D) 无法确定 21. 设char *s1,s2255=“programing” ; 以下操作正确的是 _ 。A) *s1 = “function”; B) s2=“function”;s1=s2; C) s1 = “function”;s2=s1; D) *s2=P;s1 =s2 ; 22. 设有下列语句:struct student int num, age; ;struct student stu3=6001,20,6003,21,6005,19;struct student *p=stu; 则下面的C语言表达式中,值为600

8、3的是 _ 。A) +(p-num) B) (p+)-numC) (*p+).num D) (*+p).num23. 已有定义 int ( * p ) ( ) ; 则指针 p 可以 _ 。A) 代表函数的返回值 B) 指向函数的入口地址C) 代表函数的类型 D) 代表函数返回值的类型24. 若用下列语句输出26个大写英文字母:(1) for(a=A;a=A;a-) printf(%c,a);(3) for(a=A;a=Z;) printf(%c,a+);(4) for(a=A;a+=Z;) printf(%c,a);以下说法正确的是_ 。A) 全都能输出 B) 只有前三个语句可以输出C) 只有

9、前两个语句可以输出 D) 只有第一个语句可以输出25. 设以下程序用来求三个元素的数组中,第1个元素与第3个元素之和。void main() int a3=3*0, i; for(i=1;i3;i+) scanf(%d,ai); for(i=1;ib)&(n=cd)后n的值为_。A) 1 B) 2 C) 3 D) 436以下程序执行后j的值是_。void main() int p8=11,12,13,14,15,16,17,18,i=0,j=0; while(i8) if(pi%2) j+=pi; i+; printf(%dn,j);A) 42 B) 45 C) 56 D) 6037以下能正确

10、定义一维数组的选项是_。A) int a5=0,1,2,3,4,5; B) char a=0,1,2,3,4,5;C) char a=A,B,C; D) int a5=0123;39以下程序的输出结果是_。void f(int *x,int *y) int t; t=*x; *x=*y; *y=t; void main() int a8=1,2,3,4,5,6,7,8,i,*p,*q; p=a; q=&a7; while(p=q) f(p,q); p+; q-; for(i=0;i8;i+) printf(%d ,ai);A) 8 2 3 4 5 6 7 1 B) 5 6 7 8 1 2 3

11、4 C) 1 2 3 4 5 6 7 8 D) 8 7 6 5 4 3 2 140已有定义 int ( * p ) ( ); ,则指针p可以 _ 。A) 代表函数的返回值 B) 指向函数的入口地址C) 代表函数的类型 D) 代表函数返回值的类型43以下程序执行后sum的值是_。void main()int i,sum=0;for(i=1;i6;i+) sum+=i;printf(“%dn”,sum);A) 15 B) 14 C) 不确定 D) 044以下程序的输出结果是_。 void main() int a=1,b;for(b=1;b=8) break; if(a%2=1)a+=5;cont

12、inue; a-=3; printf(%dn,b);A) 3 B) 4 C) 5 D) 645以下程序的输出结果是_。 void main() char s=159,*p; p=s; printf(%c,*p+); printf(%c,*p+);A) 15 B) 16 C) 12 D) 59 46若执行fopen函数时发生错误,则函数返回值是_。A) EOF B) 0 C) 1 D) 地址值47以下能正确定义二维数组的是_。A) int a3; B) int a3=22*3;C) int a3=1; D) int a23=1,2,3,4;48下面函数的功能是_。int fun(char *a,

13、 char *b) while(*a!=0)&(*b!=0)&(*a= =*b) a+; b+; return (*a-*b);A) 计算a和b所指字符串的长度之差 B) 将b所指字符串连接到a所指字符串中 C) 将b所指字符串连接到a所指字符串后面D) 比较a和b所指字符串的大小49设有以下语句typedef struct S int g; char h;T;则下面叙述中正确的是 _。A) 可用S定义结构体变量 B) 可以用T定义结构体变量C) S是struct类型的变量 D) T是struct S类型的变量50以下程序运行后的输出结果是_ #define S(x) 4*x*x+1void

14、main()int i=6,j=8; printf(%dn,S(i+j); A) 81 B) 785 C) 402 D) 40151有以下程序void main() char a =a,b,c,d, e, f, g,h,0; int i,j;i=sizeof(a); j=strlen(a);printf(“%d,%db”i,j);程序运行后的输出结果是 _。A) 9,9 B) 8,9 C) 1,8 D) 9,852若x和y代表整型数,以下表达式中不能正确表示数学关系|x-y|10的是 _。A) abs(x-y)-10& x-y10C) (x-y)10 D) (x-y)*(x-y)100 53若

15、有说明语句: int c45,(*p)5;p=c; 能正确引用c数组元素的是 _。A) p+1 B) *(p+3) C) *(p+1)+3 D) *(p0+2)54若执行fgetc函数时遇到文件结束符,则函数返回值是_。A) EOF B) 0 C) 1 D) NULL二、程序阅读题1. 源程序如下#includevoid main()int a,b,c,d; unsigned u; a=12;b=-24;u=10; c=a+u;d=b+u; printf(a+u=%d,b+u=%dn,c,d); 程序运行结果为:2. 源程序如下#include void main() int a=10,b=0

16、; if (a!=0) a=a+1;b=b+1; else a=a+2;b=b+2; printf(“%d,%dn,a,b); 程序运行结果为:3. 源程序如下#define V(s) s*s*s#include void main() int volume; volume=V(1);printf(%dt,volume); volume=V(2);printf(%dt,volume); volume=V(1+2);printf(%dn,volume); 程序运行结果为:4. 源程序如下#include void main()char s=12345; void sub_s1(char s,in

17、t n) ; void sub_s2(char s ,int n); sub_s1(s,5);sub_s2(s,6); void sub_s1(char s,int n) int i,j; for(i=0;in;i+) for(j=0;ji;j+) printf(%c,sj%5); printf(n); void sub_s2(char s ,int n) int i,j; for(i=0;in;i+) for( j=i;jn;j+) printf(%c,sj%5); printf(n); 程序运行结果为:5. 源程序如下#include void main() int i,a;int fun

18、(int m); for(i=0;i2;i+) a=fun(4+i);printf(%dn,a); int fun(int m) static int n=0; m/=2;m=m*2; if(m) n=n*m; return (fun(m-2); else return(n+);程序运行结果为:6. 源程序如下#include void main() int i,k=0,s10=1,2,3,4,5,6,7,8,9,10; for(i=0;i=0;i-) if(i%5= =0) printf(“%dt”,si); printf(“%dn”,k);程序运行结果为:7 源程序如下:#include

19、void main() int k=4, m=1, p; p=func(k,m); printf(%d,p); p=func(k,m); printf(%d n,p);int func(int a, int b) static int m=0, i=2; i+=m+1; m=i+a+b; return m;程序运算后的结果为:_。8 源程序如下:void main() int a3=1,2,3,4,5,0,*pa3,i;pa=a;for(i=0;i3;i+)if(i2) pa1i=pa1i-1;else pa1i=1;printf(%dn,a01+a11+a12);程序运算后的结果为:_。9

20、源程序如下:int m(unsigned k) int s=1; do s*=k%10; k/=10; while(k); return s;void main()printf(%d,%dn,m(1234),m(43209); 则程序的输出结果是果是:_。10源程序如下:void main() int a=10,b=20,c; c=(a%b1); printf(%d %d %dn,a,b,c);程序运算后的结果为:_。11. 源程序如下:#include move(char *str, int n) char temp ; int i;temp=strn-1;for(i=n-1; i0;i-)

21、 stri=stri-1;str0=temp; void main()char s50; int n, i, z;scanf(%d,%s,&n, s);z=strlen(s);for(i=1; i=n; i+) move(s,z);printf(%sn,s);若从键盘输入:3, abcde回车,则输出结果是:_。12. 源程序如下:void main() int m=12,n=34;printf(%d%d,m+,+n); printf(%d%d,n+,+m);程序运算后的结果为:_。三、程序填空题1. 以下程序运行时从键盘输入字符串ABCDE按回车键结束输入,要求在下划线上填入合适的内容,使输

22、入字符串中的A和B转换为字符#输出,其它字符输出为*。# include void main ( ) char c ; while( ( c = getchar ( ) ) !=_ ) switch ( c ) case A: case B: putchar(#) ; _; default : putchar( * ) ; 2. 以下程序从键盘输入20个整数存入数组,统计输入非负数的个数,并计算输入的非负整数之和。请填空完成。# include void main ( ) int i, a20,s,n; s=n=0; for ( i = 0 ;i20;i + ) _; for(i=0;i20;

23、i+) if (ai0) _; s+=ai;n+; printf(s=%dt,n=%dn,s,n);3. 以下函数的功能是删除字符串s中所出现的与变量c相同的字符,请填空完成。void fun(char s,char c) int i,j; for(i=j=0;_ ;i+) if(si!=c) _; sj=0;4. 以下程序输出1+2+3+10的和,请填空完成。#include void main()_; i=1; do s=s+i; i+; while_; printf(%dn,s);5. 设fp为文件型指针变量,ch为字符变量,以下程序段从键盘输入字符,然后存入磁盘文件,直到输入一个#为止,请填空完成。(注:#不存入文件中)ch=getchar();

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1