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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

C语言上机题库1.docx

1、C语言上机题库1一、选择题1.下列变量说明语句中,正确的是()。A、char a;b;c;B、char:a b c;C、int x;z;D、int x,z;2.设以下变量均为int类型,则值不等于7的表达式是()。A、(x=6,x+1,y=6,x+y)B、(x=y=6,x+y,y+1)C、(y=6,y+1,x=y,x+1)D、(x=y=6,x+y,x+1)3.x,y,z,t均为整型变量,则执行以下语句后,t的值为:()x=y=z=1;t=+x|+y&+z;A、0B、1C、2D、不定值4.如果int a=2,b=3,c=0,下列描述正确的是()。A、a&bc的结果为假B、!a!=(b!=c)表达

2、式的值为1C、a|(b=c)执行后b的值为0D、ab!=c和a(b!=c)的执行顺序是一样的5.从键盘输入的整数中找出最小值min,输入0时结束.请在A处填写正确语句()。#include stdio.hmain() int min=0,a; do scanf(%d,&a); if(mina) min=a; while(_A_); printf(%d,min);A、a=0B、a=0C、a0&a0D、a!=06.设有如下程序段: int k=10; while(k=0) k-;则下述说明中正确的是().A、循环体一次也不执行B、循环体执行一次C、死循环D、循环体执行10次7.static cha

3、r str10=China;数组元素个数为()。A、6B、9C、5D、108.函数调用:strcat(strcpy(str1,str2),str3)的功能是()。A、将串str1复制到串str2中后再连接到串str3之后B、将串str2连接到串str1之后再将串str1复制到串str3中C、将串str1连接到串str2之后再复制到串str3之后D、将串str2复制到串str1中后再将串str3连接到串str1之后9.C语言程序中必须有的函数是()。A、#include stdio.hB、mainC、printfD、scanf10.程序运行结束后,屏幕上输出值为().static int x=1

4、0;main( ) int x=3; f( ); x- -; printf(%d,x); f( ) x+; A、10B、2C、11D、311.file1.c中有命令,#include ,若file2.c中有全局静态变量a,则().A、a在file1.c中应用extern说明.B、a在file1.c中有效,不必用extern说明.C、a在file1.c中不生效D、a在file1.c和file2.c中均不生效.12.若有说明:int n=2,*p=&n,*q=p;,则以下非法的赋值语句是()。A、*p=*q;B、n=*q;C、p=n;D、p=q;13.以下程序的输出结果是(). main() ch

5、ar str =ABCD,*p=str;printf(%dn,*(p+3);A、68B、不确定的值C、字符D的地址D、014.使用共用体变量,不可以().A、同时访问所有成员B、进行动态管理C、节省存储空间D、简化程序设计15.以下字符中不是转义字符的是()。A、cB、bC、D、a16.设a=12,且a定义为整型变量。执行语句a+=a-=a*=a;后a的值为()。A、0B、144C、132D、1217.已定义float x=1.25,y=3.37;根据下面的输出结果,正确的输出语句是().y+x=4.62,y-x=2.12A、printf(y+x=%6.2f,y-x=%6.2fn,y+x,y-

6、x);B、printf(y+x=%f,y-x=%fn,y+x,y-x);C、printf(y+x=%.2f,y-x=%.2fn,y+x,y-x);D、printf(y+x=%5.2f,y=%5.2fn,y+x,y-x);18.执行下面程序段后,b的值为().int s=35;char t=A;int b;b=(s&4)&(ta);A、1B、3C、2D、019.若k是整型,则以下程序段的执行结果是:() k=-3; if(k=0) printf(#) else printf(&);A、#B、有语法错误,无结果C、&D、#&20.设j和k都是int类型,则下面的for循环语句()。 for(j=0

7、,k=0;j=9&k!=876;j+) scanf(%d,&k);A、最多执行9次B、是无限循环C、循环体一次也不执行D、最多执行10次21.以下正确的描述是().A、只能在循环体内和switch语句内使用break语句B、continue语句的作用是终止整个循环的执行C、从多层嵌套的外层循环中退出时,只能使用goto语句D、在循环体内使用break和continue语句的作用相同22.以下能对一维数组a进行正确初始化的语句是()。A、int a10=;B、int a=0;C、int a10=10*1;D、int a10=(0,0,0,0,0)23.以下正确的说法是().A、函数的类型决定返回

8、值的类型B、定义函数时,形参的类型说明可以放在函数体内C、return后面不能为表达式D、如果形参与实参的类型不一致,以实参类型为准24.以下程序的输出结果为()。int func(int x,int y) return(x+y); main() int a=1,b=2,c=3,d=4,e=5; printf(%dn,func(a+b,b+c,c+a),(d+e); A、9B、15C、13D、函数调用出错25.以下正确的说法是()。A、用户若需调用标准库函数,调用前不必使用预编译命令将该函数所在文件包括到用户源文件中,系统自动去调B、用户若需调用标准库函数,调用前必须重新定义C、系统根本不允许

9、用户重新定义标准库函数D、用户可以重新定义标准库函数,若如此,该函数将失去原有含义26.在#include命令中,文件名可用双引号或尖括号括起来,对于二者的下列说法中正确的是().A、用尖括号时,直接按系统标准方式检索文件目录.B、用双引号时,直接按系统标准方式检索文件目录.C、用双括号和尖括号时,都不检查源文件所在的文件目录.D、以上说法都不对.27.当说明一个结构体变量时系统分配给它的内存是()。A、成员中占内存量最大者所需的容量B、结构中第一个成员所需内存量C、结构中最后一个成员所需内存量D、各成员所需内存量的总和28.以下程序段给数组所有的元素输入数据,请选择正确答案填入()。#inc

10、lude main() int a10,i=0; while(ib) s=b; s=s*s; printf(%dn, s);A、13B、9C、16D、1534.执行下面程序段后,i的值是().int i=10;switch(i)case 9: i+=1; case 10: i-; case 11: i*=3; case 12: +i;A、28B、10C、9D、2735.以下不是无限循环的语句为()。A、while(1)x+;B、for(;x+=i);C、for(i=10;i-) sum+=i;D、for(y=0,x=1;x+y;x=i+) i=x;36.下面程序段运行的结果是().x=-1;d

11、o x=x*x; while (!x);A、循环执行一次B、有语法错误C、死循环D、循环执行两次37.若有说明:int a3=1,2,3,4,5,6,7;则a数组第一维的大小是()。A、3B、无确定值C、4D、238.若定义int a12=1,2,3,4,5,6,7,8,9,10,11,12;char c=a,d,g;则数值为4的表达式是 ().A、a4B、ag-cC、ad-cD、ad-c39.以下叙述中正确的是()。A、可以在一个函数中定义另一个函数B、main()函数必须放在其它函数之前C、构成C程序的基本单位是函数D、所有被调用的函数一定要在调用之前进行定义40.下述函数的功能是().i

12、nt fun(char *x) char *y=x; while(*y+); return y-x-1; A、比较两个字符串的大小B、求字符串存放位置C、求字符串的长度D、将字符串x连接到字符串y后面41.在执行文件包含命令时,下列说法正确的是().A、作为一个源程序编译,得到一个目标文件.B、一个 include 命令可指定多个被包含文件.C、在编译时作为两个文件联结.D、被包含的文件可以是源文件或目标文件.42.在说明语句:int *f();中,标识符f代表的是()。A、一个返回值为指针型的函数名B、一个用于指向函数的指针变量C、一个用于指向一维数组的行指针D、一个用于指向整型数据的指针变

13、量43.下面程序的输出结果应该是(). char s =ABCD; main() char *p; for ( p=s;pc) b=a; a=c; c=b;4.若输入字符串:abcde,则以下while循环体将执行 _0_ 次. while(ch=getchar()=e) printf(*);5.字符串的结束标志是_.6.如果函数不要求返回值,可用_来定义函数为空类型.7.将函数funl 的入口地址赋给指针变量p的语句是_.8.设有以下共用体类型说明和变量定义,则变量d在内存所占字节数是 _。 union stud short int num; char name8;float score3;

14、 double ave; d,stu3;9.设a、b、c为整型数, 且a=2、b=3、c=4, 则执行完以下语句: a*=16+(b+)-(+c); 后,a的值是 _.10.若所用变量都已正确定义,请填写以下程序段的输出结果_. for(i=1;i=6)&(3=7)的值是_.12.设x和y均为int型变量,则以下for循环中的scanf语句最多可执行的次数是_. for (x=0,y=0;y!=123&xb?a:(cd?c:d)的值为4. 7.已知a=3,b=4,c=5.则逻辑表达式a+bc & b=c值为0. 8.do-while循环由do开始,while结束,循环体可能一次也不做。 9.对

15、于for(表达式1;表达式2;表达式3)语句来说,continue语句意味着转去执行表达式2. 10.在do-while循环中,任何情况下都不能省略while. 11.对静态变量的初始化不是在编译阶段完成的. 12.定义 int x5,n;则x=x+n;或x+;都是正确的. 13.语句 char ch12=C Program;与语句 char ch =C Program;具有不同的赋初值功能. 14.数组名作为函数调用时的实参,实际上传递给形参的是数组第一个元素的值. 15.变量根据其作用域的范围可以分作局部变量和全局变量. 16.当变量的存储类型定义缺省时,系统默认为变量的存储类型为auto

16、类型,分配在静态区. 17.若有宏定义:#define S(a,b) t=a;a=b;b=t由于变量t没定义,所以此宏定义是错误的。 18.设有如下定义:int *p; *p=100;则 printf(%d,p); 的输出结果是100. 19.使几个不同的变量共占同一段内存的结构,称为结构体类型. 20.在打开文件时,必须说明文件的使用方式,wb+表示以读/写方式打开一个二进制文件. 21.在C程序中,%作为运算符时,是只能用于整数运算。 22.若有 int i=10,j=2;则执行完i*=j+8;后的值为28。 23.格式字符%g选用%e或%f格式中输出宽度较长的一种格式输出实数. 24.c

17、har c6=abcde; printf(%3s, c)表示输出的字段的宽度为3位,如果被输出的数据的位数大于3,只输出3位数. 25.设x=1,y=2,z=3,则逻辑表达式x-yz&y!=z的值为0. 26.运算符的级别由高向低依次为!-算术运算符-关系运算符-逻辑运算符-赋值运算符. 27.已知a=3,b=4,c=5,则逻辑表达式!(ab) & !c|1的值为1. 28.for循环语句只能用于循环次数确定的情况下. 29.break语句能够终止当前进行的多层循环. 30.for循环的三个表达式都可以省略. 31.下列程序段是否正确: int a10; . a+; 32.定义一维数组的形式为

18、:类型说明数组名表达式,其中表达式必须是整型常量. 33.字符串Da lian在内存中的存储长度是7. 34.数组名作为函数调用时的实参,实际上传递给形参的是数组第一个元素的值. 35.字符处理函数strcpy(str1,str2)的功能是把字符串1接到字符串2的后面. 36.静态局部变量是在编译时被初始化的,故它只被赋初值一次. 37.被包含文件是在编译时先单独生成目标文件,然后连接到可执行文件中去. 38.假设有int a10, *p;则p=&a0与p=a等价。 39.typedef可以定义生成新的数据类型. 40.用fopen(file,r+);打开的文件file可以进行修改。 41.若

19、 a=3,b=2,c=1 则关系表达式(ab)=c 的值为真。 42.整型变量在全部范围内可以用字符格式输出. 43.已知a=3,b=4,c=5,则逻辑表达式!(a+b)+c-1 & b+c/2的值为0. 44.语句if(ab) printf(%d,a); else printf(%d,b);可以用条件表达式ab?a:b取代. 45.已知a=4,b=2,c=3,d=5,表达式ab?a:cd?c:d的值为4. 46.continue语句对于while和do-while循环来说,意味着转去计算While表达式. 47.for语句的循环体至少执行一次. 48.定义char s9;gets(s);若输

20、入的字符串是Turbo c(代表按回车键操作) 则输入给数组s中的字符个数是7. 49.对静态数组的初始化是在编译阶段完成的. (正确)50.C语言中,通过函数调用只能获得一个返回值. (错误)51.字符处理函数strcpy(str1,str2)的功能是把字符串1接到字符串2的后面. 52.被包含文件是在编译时先单独生成目标文件,然后连接到可执行文件中去. 53.char *p=girl;的含义是定义字符型指针变量p,p的值是字符串girl。 54.对于不同类型的数据,若想合成一个有机的整体,可以引用结构体进行定义。 55.函数的返回值可以通过函数中的return语句获得。 四、程序设计1.功

21、能:用do-while语句求1100的累计和。-*/#include stdio.hlong int fun(int n) /*Begin*/* End */ 2.功能:编写程序,实现矩阵(3行3列)的转置(即行列互换) 例如:输入下面的矩阵: 100 200 300 400 500 600 700 800 900 程序输出: 100 400 700 200 500 800 300 600 900 #include stdio.hvoid fun(int array33) /*Begin*/ /* End */ 3.功能:把20个随机数存入一个数组,然后输出该数组中的 最小值。其中确定最小值的

22、下标的操作在fun函数中 实现,请给出该函数的定义。-*/#include stdio.h#include stdlib.h#define VSIZE 20 int vectorVSIZE ; int fun(int list,int size) /*Begin*/ /* End */ 4.功能:求k!(k13),所求阶乘的值作为函数值返回。 (要求使用递归)-*/#include stdio.h#include conio.h long fun(int k) /*Begin*/ /* End */ 5.功能:将字符串中的小写字母转换为对应的大写字母, 其它字符不变。-*/#include string.h#include stdio.hvoid change(char str) /*Begin*

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

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