
2019年大学C语言期末考试题库500道答案题1.多项选择题1.如果存在以下所有区块,所有区块都已分配(c大于s = s + 1; B等于上面的块函数的赋值语句是______. 2.有已定义的语句: intx,y ;,如果要传递scanf(“%d,%d”,&x,&y);语句使变量获取数据11,并且变量获取值12. 在以下四组输入形式中,错误为___A___. A,11 12B,11、12C,11、12D,11,12 3.以下程序的输出结果为(inti = 010,j = 10; 9,94. 以下程序的功能需要计算: s = 1 + 1/2 + 1/3 + ... + 1/10 main()s = 1.0; for(n = 10; n> 1; n--)s = s + 1 / n; printf(“%6.4f \ n”,s);程序运行后输出结果错误,导致错误结果是___C___. A,s = 1.0; D,printf(“%6.4f \ n”,s); 5.有以下程序main()知识点: 程序分析6. re是以下程序main(){int num [4] [4] = {{1,2,3,4},{5,6,7,8},{9,10,11,12},{ 13,14,15,16}},i,j; printf(“%4d”,num [i] [j]); printf(“ \ n”); 1112 16程序的下划线应填写___ B ___.
A,i-1 C,i + 1D,4-i 7.对于指针类型变量p和相同类型的数组a,无法执行的操作为(8.以下内容的输出结果程序是___B___. main()printf(“%c”,i + 32); printf(“ \ n”); A.编译失败,没有输出B,aceg C,acegi D,abcdefghi9. 如果变量a为类型为int的语句,并执行以下语句: a ='A'+ 1.6 ;,正确的语句为______. 的值是浮点类型C,并且该值不允许将字符类型和浮点数相加点类型是字符“ A”的ASCII值加110. 存在以下程序main()11. B2.A 3.D 4.C 5.D 6.B 7.C 2.填写空白问题12. 13.需要连续地通过while循环读入字符,并在读入字母时结束循环. 如果正确定义了变量,则以下正确的块是___A___. A,While((ch = getchar())!='N'printf(“%c”,ch)B,而(ch = getchar()!='N'printf(“%c”,ch)C,而(ch = getchar())=='N'printf(“%c”,ch); D,while((ch = getchar())=='N'printf(“%c”,ch); 14.下面程序的运行结果是___ D ___.

main()elseprintf(“#A. 存在语法错误,无法编译B,输出* C,可以编译,但无法连接,因此无法运行. D,输出#15. 有以下程序main()s + = i + 1; printf(“%d \ n”,s);执行该程序后的输出结果为___D___. A,自然数1〜9 B的累加和,自然数之和1〜10 C,自然数1〜9 D中的奇数之和,自然数1〜10 16中的偶数之和. 如果在执行以下程序时从键盘输入9,则输出结果是__B__. main()scanf(“%d”,&n); if(n ++ = 10 a = 10 a5 || x #include main()elsebreak;如果从键盘输入了3.62.4(代表回车)在运行时,输出结果为___B___. A,1.500000 B,1.600000 C,2.000000 D,2.40000028. 在C语言程序中,以下语句正确(函数定义和函数调用可以嵌套29.892130. 在C中语言,一对父母使用if语句后的语句决定分支流的表达式为(可以是任何表达式31. A)10,10 8,832. A)17 5333. A)34.如果存在以下定义和语句,则值为12的表达式为(structwc {int a; int * b;} * p; int x0 [] = {11,12} ,x1 [] = {31,32};静态结构wc x [2] = {100,x0,300,x1}; 35.假设已知员工记录的描述如下,变量w是“ 1993年10月25日”,以下正确的“生日”分配方法是(structworker charname [20]; char sex; struct birth {int day; int month; int year;} a; structworker day = 25; month = 10; year = 1993; w.birth.day = 25; w.birth.month = 10; w.birth.year = 1993; w.day = 25; w.month = 10; w.year = 1993; waday = 25; wamonth = 10; wayear = 1993; 36.编写以下程序操作结果main()p = fun(i,i +1); printf(“%d \ n”,p); intfun(i nt a,int elsef = -1; return -1(2)键盘输入abcdef #include void fun(voidmain(#include #define voidmain(#include int return(a + b + 1))voidmain(unsignedfun6(unsigned num)k * = num; num / = 10; while(num);返回voidmain(unsignedn = 26; printf(“%d \ n”,fu n6(n)); #include int max(int a,int t = max(x,y); m = max(t,z); printf(“%d”,m); intmax(int a,int return(a ); else return(b);如果在运行期间输入: 10、15、9输出: ___ 15如果在运行期间输入: 300,129,300,则输出: ___ 300 37. B)w.birth.day = 25; w .birth.month = 10; w.birth.year = 1993; 38. D)birth.day = 25; birth.month = 10; birth.year = 1993; 39.下面程序的输出是(intk1 = 1,k2 = 2,k3 = 3,x = 15; if(!k1)elseif(k2)if(k3)x = 4; else 40.设a为整数变量,执行语句-26441.f1(int staticint chars1 * 10 + =“ java”,s2 * 10 + =“ basic”,s * 10 +; printf(“%d”, f1(a)); printf(“ \ n”); if(strcmp(s1,s2))strcpy(s,s1); puts(s);} printf(“%d,%s \ n”,strlen( s2),strcat(s2,s1)); inta [6] = {10,6,23,-90,0,3},i; invert(a,0,5); printf(“%d,”, a * i +); printf(“ \ n”); invert(int * s,int i,int 43.只有两种类型的C语言文件(ASCII代码文件和二进制文件)44.两个指针变量不能(指向相同的地址45. )设置int x = 1,y = 1;表达式(!x || y--)的值为___ B ___.
D,-146. 以下程序的输出结果为(不确定值47. 令a为int变量,执行以下赋值语句后,a的值为(a = 125.534; a =(int)125.521%4; 125.534,2, 2048. 以下程序的输出结果是(inta = 011; printf(“%d \ n”,a); 49.有以下程序#include main()charch1,ch2; int n1,n2; ch1 = getchar(); ch2 = getchar(); n1 = ch1-'0'; n2 = n1 * 10 +(ch2-'0'); printf(“%d \ n”,n2);程序运行时输入: 12,执行后输出结果是______. 答案: 12知识点: 数据输入50.以下程序段的输出结果是______. int printf(“%o \ n”,i);答案: 11 51. 以下程序的输出结果是______ Main s + = a [i] [i] + a [i] [3-i-1]; printf(“%d \ n”,s);答案: 3052. 提供了程序段,下面的描述是正确的: intk = 10; while(k = 0)k = k-1;循环体语句执行一次53.假设y是一个int变量,请写一个关系表达式t帽子判断y为______的奇数.

回答: y%2 54.以下函数调用语句包含()个实际参数. func((e1,e2),(e3,e4,e5));语法错误55. 运行以下程序后,输出结果为______. main()printf(“%d \ n”,c);其他printf(“%d \ n”,b);答案: 156. 如果已经正确定义和分配了变量x和y,则符合C语言语法的以下表达式为___A___. B,x + 1 = yC,x = x + 10 = x + y D,double(x)/ 10知识点: 算术表达式57. 以下程序的输出结果为(#defineADD(x)d = 70058. 如果存在以下程序段,则值为6的表达式为(structst {int n; struct st * next;};静态struct st59. 已知指针p指向(图1)a [1],然后执行语句* p ++;在* p A,20B,30 C,21 D,31 1020 30 40 50 60之后. 列的数组可以写为float a [5,6]; 61.以下内容的输出结果程序是(C).A,15 B,100 C,10 D,150#定义MIN(x,y)voidmain()i = 10; j = 15; k = 10 * MIN(i,j); printf( “%d \ n”,k); 62.如果有定义: intx,* pb;下面的正确表达式是(A)A,pb =&x B,pb = x C,* pb =&x D,* pb = * x 63.在以下选项中,合法的C语言关键字是__D ____.
A,VAR B,cher C,整数D,默认知识点: 常量,变量和标识符64. 以下程序的输出结果是(B)A. 因变量未定义并且输出不确定值#includevoid main ()printf(“%d \ n”,NULL);-65.以下变量是双精度类型,并且已正确分配,并且不能正确表示数字表达式. 知识点: 算术表达式66.以下程序的输出是___A___. main()p = func(k,m); printf(“%d,”,p); p = func(k,m); printf(“%d \ n”,p); func(inta,int staticint A,8,17B,8,16 C,8,20 D,8,8 67.下面程序的输出是(B)A,5,2,3 B,-5,- 12,-7 C,-5,-12,-17 D,5,-2,-7 #include void sub(int x,int y,int {* z = yx;} void main()sub(10, 5,&a); sub(7,a《c语言》试题,&b); sub(a,b,&c); 68.以下函数调用语句包含()个实际参数. func((e1,e2),(e3,e4,e5) ));语法错误69. 如果存在定义: int a = 8,b = 5,c ;,则在执行语句c = a / b + 0.4;之后,c知识点: 算术表达式70. 根据数组描述,元素的下标分别为(inta [12] = {1,2,3,4,5,6,7,8,9,10,11,12}; 0 ,1271. 有一个定义语句static int 2,0,072. 以下程序的输出是__C ____.
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/jisuanjixue/article-288066-1.html
让那些光棍跟你爸合伙用你妈