c语言题库
- 格式:doc
- 大小:57.00 KB
- 文档页数:12
试卷编号:8619所属语言:C语言试卷方案:研究生2013试卷总分:90分共有题型:5种一、填空共10题(共计20分)第1题(2.0分)题号:1125程序段int k=10; while(k=0) k=k-1循环体语句执行【1】次.答案:=======(答案1)=======第2题(2.0分)题号:1121c语言表达式!(4>=6)&&(3<=7)的值是【1】.答案:=======(答案1)=======1第3题(2.0分)题号:1521已知a=13,b=6,a/b的十进制数值为【1】.答案:=======(答案1)=======2第4题(2.0分)题号:1168设a,b,t 为整型变量,初值为a=7,b=9,执行完语句t=(a>b)?a:b后,t 的值是【1】. 答案:=======(答案1)=======9第5题(2.0分)题号:1581假设有条件 int x=1,y=2,z=3;则表达式z+=x>y?++x:++y的值是【1】.答案:=======(答案1)=======6第6题(2.0分)题号:1524下列程序的输出是【1】,main(){int a=011;printf("%d\n",++a);}答案:=======(答案1)=======10第7题(2.0分)题号:656int x; x=-3+4%-5*3, 则x的值为【1】.答案:=======(答案1)=======9第8题(2.0分)题号:1172若x和n均是int型变量,且x和n的初值均为5,则计算表达式 x+=n++ 后x的值为【1】,n的值为【2】.答案:=======(答案1)=======10=======(答案2)=======6第9题(2.0分)题号:540若有以下定义和语句:int a[5]={1,3,5,7,9},*p;p=&a[2];则++(*p)的值是【1】.答案:=======(答案1)=======6第10题(2.0分)题号:1540假设所有变量都为整型,表达式(a=2,b=5,a>b?a++:b++,a+b)的值是【1】.答案:=======(答案1)=======8二、单项选择共20题(共计40分)第1题(2.0分)题号:3565下列关于单目运算符++、--的叙述中正确的是______。
A:它们的运算对象可以是任何变量和常量B:它们的运算对象可以是char型变量和int型变量,但不能是float型变量C:它们的运算对象可以是int型变量,但不能是double型变量和float型变量D:它们的运算对象可以是char型变量、int型变量和float型变量答案:D第2题(2.0分)题号:585以下选项中合法的用户标识符是()。
A:longB:_2TestC:3DmaxD:A.dat答案:B第3题(2.0分)题号:142以下程序的输出结果为()。
main(){int i=010,j=10;printf("%d,%d\n",++i,j--);}A:11,10B:9,10C:010,9D:10,9答案:B第4题(2.0分)题号:126下列程序的输出结果是()。
main(){int a=011;printf("%d\n",++a);}A:12B:11C:10D:9答案:C第5题(2.0分)题号:663以下不正确的说法是:C语言规定()。
A:实参可以是常量,变量或表达式B:形参可以是常量,变量或表达式C:实参可以为任何类型D:形参应与其对应的实参类型一致答案:B第6题(2.0分)题号:578设C语言中,一个int型数据在内存中占2个字节,则unsigned int 型数据的取值范围为()。
A:0--255B:0--32767C:0--65535D:0--2147483647答案:C第7题(2.0分)题号:3115以下关于long、int和short类型数据占用内存大小的叙述中正确的是A:均占4个字节B:根据数据的大小来决定所占内存的字节数C:由用户自己定义D:由C语言编译系统决定答案:D第8题(2.0分)题号:658若使用一维数组名作函数实参,则以下正确的说法是()。
A:必须在主调函数中说明此数组的大小B:实参数组类型与形参数组类型可以不匹配C:在被调用函数中,不需要考虑形参数组的大小D:实参数组名与形参数组名必须一致答案:A第9题(2.0分)题号:591设有 int x=11; 则表达式 (x++ * 1/3) 的值是()。
A:3B:4C:11D:12答案:A第10题(2.0分)题号:693以下各选项企图说明一种新的类型名,其中正确的是()。
A:typedef v1 int;B:typedef v2=int;C:typedef int v3;D:typedef v4: int;答案:C第11题(2.0分)题号:100以下标识符中,不能作为合法的C用户定义标识符的是()。
A:putcharB:_doubleC:_123D:INT答案:A第12题(2.0分)题号:642在C语言中,一维数组的定义方式为:类型说明符数组名()。
A:[常量表达式]B:[整型表达式]C:[整型常量]或[整型表达式]D:[整型常量]答案:D第13题(2.0分)题号:639以下能正确定义数组并正确赋初值的语句是()。
A:int N=5,b[N][N];B:int a[1][2]={{1},{3}};C:int c[2][]={{1,2},{3,4}};D:int d[3][2]={{1,2},{34}};答案:D第14题(2.0分)题号:537在定义构造数据类型时,不能()。
A:说明变量B:说明存储类型C:初始化D:末尾不写分号答案:D第15题(2.0分)题号:540指针变量p进行自加运算(即执行p++;)后,地址偏移值为2,则其数据类型为()。
A:intB:floatC:doubleD:char答案:A第16题(2.0分)题号:3558设a、b、c、d、m、n均为int型变量,且a=5、b=6、c=7、d=8、m=2、n=2,则逻辑表达式(m=a>b)&&(n=c>d)运算后,n的值为______。
A:0B:1C:2D:3答案:C第17题(2.0分)题号:139a,b为整型变量,二者均不为0,以下关系表达式中恒成立的是()。
A:a*b/a*b==1B:a/b*b/a==1C:a/b*b+a%b==aD:a/b*b==a答案:C第18题(2.0分)题号:511求平方根函数的函数名为()。
A:cosB:absC:powD:sqrt答案:D第19题(2.0分)题号:3105以下程序的执行结果是main(){ int x = 0, s = 0;while( !x != 0 ) s += ++x;printf( "%d ",s ); }A:0B:1C:语法错误D:.无限循环答案:B第20题(2.0分)题号:199若有int a[][]={{1,2},{3,4}}; 则*(a+1),*(*a+1)的含义分别为()。
A:非法,2B:&a[1][0],2C:&a[0][1],3D:a[0][0],4答案:B三、程序填空共1题(共计10分)第1题(10.0分)题号:484/*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:识别输入的字符串,每个单词输出一行-------------------------------------------------------*/#include <stdio.h>#include <string.h>void main(){int c;int inspace;/***********SPACE***********/【?】;while((c = getchar()) != '\n'){if(c == ' ' || c == '\t' || c == '\n'){/***********SPACE***********/if(【?】){inspace = 1;putchar('\n');}}else{inspace = 0;/***********SPACE***********/【?】;}}}答案:=======(答案1)=======inspace = 0=======(答案2)=======inspace == 0=======(答案3)=======putchar(c)四、程序改错共1题(共计10分)第1题(10.0分)题号:378/*------------------------------------------------------ 【程序改错】--------------------------------------------------------功能:读入一个英文文本行,将其中每个单词的第一个字母改成大写,然后输出此文本行(这里的“单词”是指由空格隔开的字符串)。
例如:若输入:“i am a student to take the examination.”,则应输出:“i Am A Student To Take The Examination.”。
------------------------------------------------------*/#include <ctype.h>#include <string.h>#include <stdio.h>/**********FOUND**********/upfst ( char p ){int k=0;/**********FOUND**********/for ( ; p; p++ )if ( k ){if ( *p == ' ') k = 0;}/**********FOUND**********/else if ( *p == ' ' ){k = 1;*p = toupper( *p );}}main( ){char chrstr[81];printf( "\nPlease enter an English text line: " ); gets( chrstr );printf( "\n\nBefore changing:\n %s", chrstr );upfst( chrstr );printf( "\nAfter changing:\n %s\n", chrstr );}答案:=======(答案1)=======upfst(char *p)=======(答案2)=======for ( ; *p; p++ )=======(答案3)=======else if ( *p != ' ' )五、程序设计共1题(共计10分)第1题(10.0分)题号:389/*------------------------------------------------ 【程序设计】--------------------------------------------------功能:编写函数求表达式的和(n的值由主函数输入)。