大学c语言上机题库,上海海事大学(C语言期末)上机题库 (2).doc

本文提供了一份详细的C语言期末上机试题解答,包括填空题、判断题、选择题、程序填空题及程序设计题等多类型题目,覆盖了C语言的基础语法和编程技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

253b171540df25e1b84436cbe50dfc72.gif上海海事大学(C语言期末)上机题库 (2).doc

试卷编号9049 所属语言Turbo C 试卷方案092 模拟试卷总分100分 共有题型5种一、填空 共15题 (共计15分)第1题 (1.0分)C语言表达式3649的值是【1】.答案 1. 1第2题 (1.0分)int a1,b2,c3; 执行语句abc;后a的值是【1】.答案 1. 3第3题 (1.0分)以下程序的输出结果为【1】,include stdio.h mainint a010,j10;printfd,dn,a,j;答案 1. 9,10第4题 (1.0分)执行下列语句的结果是【1】,a3;printfda;printfd,a;答案 1. 4,4第5题 (1.0分)当a1,b2,c3时,执行以下程序段后b【1】.if ac ba; ac; cb;答案 1. 2第6题 (1.0分)假设有条件 int x1,y2,z3;则表达式zxyxy的值是【1】.答案 1. 6第7题 (1.0分)执行下列语句后,b 的十进制值是【1】.int x240,y15,b;char zA;b x y z a ;答案 1. 1第8题 (1.0分)当a3,b2,c1;时,执行以下程序段后 a【1】.ifab ab; ifbc bc;else cb;ca;答案 1. 2第9题 (1.0分)以下程序的输出结果为【1】,include stdio.h mainint a;fora0;a10;a;printfd,a;答案 1. 10第10题 (1.0分)程序段int k10; whilek0 kk-1循环体语句执行【1】次.答案 1. 0第11题 (1.0分)以下程序段要求从键盘输入字符,当输入字母为Y 时,执行循环体,则括号内应填写【1】.chgetchar; whilech Y/*在括号中填写*/chgetchar;答案 1. 第12题 (1.0分)以下do-while语句中循环体的执行次数是【1】. a10; b0; do b2; a-2b; while a0;答案 1. 3第13题 (1.0分)C语言中,数组元素的下标下限为【1】.答案 1. 0第14题 (1.0分)如果函数不要求带回值,可用【1】来定义函数返回值为空.答案 1. void*第15题 (1.0分)C语言源程序的基本单位是【1】.答案 1. 函数二、判断 共15题 (共计15分)第1题 (1.0分)ab4c6 是一个合法的赋值表达式. 答案Y第2题 (1.0分)在C语言中,变量必需先定义后使用 答案Y*第3题 (1.0分)语句 printff,1.0/3;输出为 0.333333. 答案N第4题 (1.0分) 答案N第5题 (1.0分)在switch-case语句中,必须使用default语句. 答案N第6题 (1.0分)关系运算符的优先级高于算术运算符并且低于赋值运算符.答案N*第7题 (1.0分)C语言中的for语句可以用于循环次数已经确定的情况,但是不能用于循环次数不确定而只给出循环结束条件的情况.答案N*第8题 (1.0分)do-while循语句scanf7.2f,是一个合法的scanf函数. 环是先判断循环条件表达式,后执行循环体;while循环是先执行循环体,后判断循环条件表达式.答案N第9题 (1.0分)在定义二维数组时,可以将该数组的两个维数全部省略答案N第10题 (1.0分)任何数组的下标都是从0开始;答案Y*第11题 (1.0分)C语言中只能逐个引用数组元素而不能一次引用整个数组.答案Y第12题 (1.0分)数组中的元素类型不能不同答案Y第13题 (1.0分)通过return语句,函数可以带回一个或一个以上的返回值.答案N第14题 (1.0分)如果函数值的类型和return语句中表达式的值不一致,则以函数类型为准.答案Y*第15题 (1.0分)C程序中有调用关系的所有函数必须放在同一个源程序文件中.答案N三、单项选择 共20题 (共计40分)第1题 (2.0分)下列程序的输出结果是.main printfdn,null;A0B变量无定义C-1D1答案B第2题 (2.0分)用下列语句定义a,b,c,然后执行ba、cbb,则b,c的值是. long a0 xffffff; int b; char c;A0ffffff 和0 x61B-1和98C-1和97D指向同一地址答案C第3题 (2.0分)已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用八进制表示的字符常量101是.A字符AB字符aC字符eD非法的常量答案A第4题 (2.0分)若ch为char型变量,k为int型变量已知字符a的ASCII十进制代码为97,则以下程序段的执行结果是.cha; k12; printfx,och,ch; printfkdn,k;A因变量类型与格式描述符的类型不匹配,输出无定值B输出项与格式描述符个数不符,输出为零值或不定值C61,141,k12D61,141,kd 答案C第5题 (2.0分)若a是float型变量,b是unsigned型变量,以下输入语句中合法的是.Ascanf6.2fd,Bscanffn,Cscanff3o,Dscanfff,答案C第6题 (2.0分)以下程序的输出结果为.mainint i010,j10; printfd,dn,i,j;A11,10B9,10C010,9D10,9答案B第7题 (2.0分)int a1,b2,c3;ifacba;ac;cb;则c的值为.A1B2C3D不一定答案B第8题 (2.0分)下列各m的值中,能使m32m53m72为真的是.A8B23C17D6答案B第9题 (2.0分)以下运算符中,优先级最高的运算符是.ABCD,答案B第10题 (2.0分)设j和k都是int类型,则for循环语句 forj0,k0;j9k876;j scanfd,.A最多执行10次B最多执行9次C是无限循环D循环体一次也不执行答案A第11题 (2.0分)下面有关 for 循环的正确描述是.Afor 循环只能用于循环次数已经确定的情况Bfor 循环是先执行循环循环体语句,后判断表达式C在 for 循环中,不能用 break 语句跳出循环体Dfor 循环的循环体语句中,可以包含多条语句,但必须用花括号括起来答案D第12题 (2.0分)以下程序的运行结果是.main int n; forn1;n10;n ifn30 continue; printfd,n; A12457810B369C12D1234567890答案A第13题 (2.0分)以下程序段的输出结果为.fori4;i1;iforj1;ji;jputchar;A无BCD答案B*第14题 (2.0分)设j和k都是int类型,则for循环语句. forj0,k0;j9k876;j scanfd,A最多执行10次B最多执行9次C是无限循环D循环体一次也不执行 答案A第15题 (2.0分)在C语言中,为了结束由while语句构成的循环,while后一对圆括号中表达式的值应该为.A0B1CTrueD非0答案A第16题 (2.0分)以下对一维整型数组a的正确说明是.Aint a10;Bint n10,an;Cint n; scanfd, int an;Ddefine SIZE 10 换行 int aSIZE;答案D第17题 (2.0分)*在C语言中,引用数组元素时,其数组下标的数据类型允许是.A整型常量B整型表达式C整型常量或整型表达式D任何类型的表达式答案C第18题 (2.0分)以下不能正确定义二维数组的选项是.Aint a221,2;Bint a21,2,3,4;Cint a221,2,3;Dint a21,2,3,4;答案D第19题 (2.0分)若有说明 int a340;则下面正确的叙述是.A只有元素a00可得到初值0B此说明语句不正确C数组a中各元素都可得到初值,但其值不一定为0D数组a中每个元素均可得到初值0答案D第20题 (2.0分)以下数组定义中不正确的是.Aint a23;Bint b30,1,2,3;Cint c1001000;Dint d31,2,1,2,3,1,2,3,4;答案D四、程序填空 共2题 (共计12分)第1题 (6.0分)/*-【程序填空】-题目从读入的整数数据中,统计大于零的整数个数和小于零的 整数个数。用输入零来结束输入,程序中用变量i统计大于 零的整数个数,用变量j统计小于零的整数个数。-*/include stdio.hmainint k,n,i,j; printfEnter INT number,with 0 to endn; ij0; scanfd, whilen0/*SPACE*/ ifn0i【】;/*SPACE*/ ifn0j【】;/*SPACE*/ scanfd,【】; printfi4dn,i,j;答案 1. i 1 2. j 1 3. fori0;iN-1;i scanfd, fori0;iN-1;i /*SPACE*/ 【】/*SPACE*/ forji1; 【】;j ifajak kj;/*SPACE*/ if【】tai;aiak;akt; printfoutput the sorted arrayn; fori0;iN-1;i printf5d,ai; printfn; 答案 1. define N 10 2. ki; 3. jN 或 Nj 或 jN-1 或 N-1j 4. k i 五、程序设计 共3题 (共计18分)*第1题 (6.0分)/*【程序设计】题目编写函数fun求123 n的和,在 main函数中由键盘输入n值,并输出运算结果。请 编写fun函数。 例如若n值为20,则结果为268040729。注意部分源程序给出如下。请勿改动主函数main和其 它函数中的任何内容,仅在函数fun的花括号中填 入所编写的若干语句。*/includestdio.hfloat funint n/Program End /main int i,n; long int result; scanfd, resultfunn; printfldn,result; yzj;yzjFILE *IN,*OUT;int i;int iIN;long int iOUT;IN1.in,r;ifINNULLprintfPlease Verify The Currernt DirIt May Be Changed;OUT1.out,w;ifOUTNULLprintfPlease Verify The Current Dir It May Be Changed;fori0;i10;i fscanfIN,d, iOUTfuniIN; fprintfOUT,ldn,iOUT;fcloseIN;fcloseOUT;答案int i;float f1,s0;fori1;in;i ff*i; ssf; return s;第2题 (6.0分)/*【程序设计】题目编写函数fun其功能是根据整型形参m, 计算如下公式的值 y1/51/61/71/81/91/10.1/m5 例如若m9,则应输出1.168229注意部分源程序给出如下。请勿改动主函数main 和其它函数中的任何内容,仅在函数fun的花 括号中填入所编写的若干语句。*/include stdio.h double funint m /Program/ / End / main int n; clrscr; printfEnter n ; scanfd, printfnThe result is 1fn, funn; getch; yzj; yzjFILE *IN,*OUT;int s,i ;int t;float o;INin.dat,r;ifINNULLprintfRead File Error;OUTout.dat,w;ifOUTNULLprintfWrite File Error;fori0;i5;i fscanfIN,d, ofunt; fprintfOUT,fn,o;fcloseIN;fcloseOUT;答案 double y0; int i; fori0; im; i y1.0/i5; returny; 第3题 (6.0分)/*【程序设计】题目编写函数fun,函数的功能是求给定正整数m以 内的素数之和。例如当m20时,函数值为77。注意部分源程序给出如下。请勿改动主函数main和其 它函数中的任何内容,仅在函数fun的花括号中填 入所编写的若干语句。*/include stdio.hint funint m/Program End /mainint y;yfun20;printfydn,y;yzj;yzjFILE *IN,*OUT;int iIN,iOUT,i;IN20.in,r;ifINNULLprintfPlease Verify The Currernt DirIt May Be Changed;OUT20.out,w;ifOUTNULLprintfPlease Verify The Current Dir It May Be Changed;fori0;i10;i fscanfIN,d, iOUTfuniIN; fprintfOUT,dn,iOUT;fcloseIN;fcloseOUT;答案int i,k,s0; fori2;im;i fork2;ki;k ifik0break; ifkissi; return s;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值