《C语言程序设计》题库A及答案

发布时间:2023-11-29 10:11:16浏览次数:52
[试题分类]:C 语言程序设计1. 下列关于 C 语言中 main 函数位置的叙述中,正确的是A. 必须在程序的最后B. 必须在程序的开始处C. 可以在程序中的任意位置D. 必须在系统调用的库函数后面答案:C2. 若有定义“int i; oat f; double d;”,则表达式“10+d+i*f”的数据类型为A. intB. oatC. doubleD. 不确定答案:C3. 若有定义“int x=11;”,则表达式“(x++*1/3) ”的值是A. 12B. 11C. 4D. 3答案:D4. 若有定义“int a=1,b=2,c=3,d=4;”,则表达式“a<b?a:c<d?c:d”的值是A. 1B. 2C. 3D. 4答案:A1 5. 若 有 定 义 “ int i,j;” , 执 行 语 句 “ for (i=0,j=1; i<=j+1; i+=2,j--) printf("%d",i);”时的循环次数是A. 3B. 2C. 1D. 0答案:C6. 若有定义“int n=4;”,则执行语句“while(n--) printf("%d",n--);”后的输出结果是A. 20B. 31C. 210D. 321答案:B7. 若有定义“char a[]="xyz",b[]={'x','y','z'};”,则下列叙述中正确的是A. 数组 a 的长度大于数组 b 的长度B. 数组 a 的长度小于数组 b 的长度C. 数组 a 和数组 b 的长度相同D. 数组 a 和数组 b 等价答案:A8. {若 有 定 义 “ int aa[4][4]=\{\{1,2,3,4\},\{5,6,7,8\},\{3,9,10,2\},\{4,2,9,6\}\}, i,s=0;”,则执行下列语句后,变量 s 的值是 for(i=0;i<4;i++) s+=aa[i][0]; }A. 202 B. 19C. 13D. 11答案:C9. 下列各函数首部中,正确的是A. void play(var :Integer,var b:Integer)B. void play(int a,b)C. Sub play(a as integer,b as integer)D. void play(int a,int b)答案:D10. 若有定义“int n=2,*p=&n,*q=p; ”,则下列选项中,非法的赋值语句是A. p=n;B. p=q;C. n=*q;D. *p=*q;答案:A11. 若有定义“int *p[3]; ”,则下列叙述中正确的是A. 定义了一个类型为 int 的指针变量 p,该变量具有三个指针B. 定义了一个名为*p 的整型数组,该数组含有三个 int 类型元素C. 定义了一个指向一维数组的指针变量 p,该一维数组应具有三个 int 类型元素D. 定义了一个指针数组 p,该数组含有三个元素,各元素都是基类型为 int 的指针答案:D12. {若有如下定义: struct student\{ int num; int age; \} stu[3]=\{\{1001,20\} , \{1002,19\} , \{1003,21\}\} , *p=stu;3 则下列表达式中,值为 1002 的是}A. p++->numB. (p++)->ageC. (*++p).numD. (*p).num答案:C13. 下列选项中,可以作为函数 fopen 中第一个参数的是A. "c:\\user\\text.txt"B. c:\user\text.txtC. "c:\user\text.txt"D. c:user\text.txt答案:A14. 若 y 是 int 型变量,则判断 y 为偶数的关系表达式为__________。答案:(y%2)==0 或!(y%2)或(y%2)!=115. 下列语句序列执行后的输出结果是__________。int x=10,y=10; printf("%d,%d\n",--x, y--);答案:9,1016. 下列语句序列执行后的输出结果是__________。int m=5;if(m++>5) printf("%d\n",m);else printf("%d\n",--m);答案:517. {下列语句序列执行后,变量 x 和 a 的值分别是  (1)    和  (2)    。int x=3,y=6,a=0;while(x++!=(y-=1)) \{4 a+=1; if(y<x) break;\}}答案:(1) 5 (2) 118. {下列语句序列执行后的输出结果是__________。 for(int i=1; i<6; i++) \{ if(!(i%2)) \{ printf("#"); continue; \} printf("*"); \}}答案:*#*#*19. {若有定义“int a[ ]=\{1,2,3,4,5,6,7,8,9,0,},*p; ”,则执行语句序列“p=a;printf("%d", *(p+9)); ”后的输出结果是    。}答案:020. 函数调用语句“func((exp1,exp2),(exp3,exp4,exp5));”中含有__________个实参。答案:221. {若有定义: struct \{ int x; int y; \} d[2]=\{\{1,3\}, \{2,7\}\};则执行语句“printf("%d", d[0].y*d[1].y/d[0].x);”的结果是     。5 }答案:2122. C 语言是一种结构化程序设计语言。答案:√23. C 语言中不区分英文字符的大小写。答案:×24. C 语言的逻辑表达式中只允许出现逻辑型数据。答案:×25. C 语言本身不提供输入输出语句,但可以通过输入输出函数实现数据的输入输出。答案:√26. 若有定义“char s[]="hello";”,则数组 s 中有 6 个元素。答案:√27. 函数返回值类型与 return 表达式类型不一致时,以 return 表达式类型为准。答案:×28. 在二维数组 a[3][4]中,a+1 与 a[1]都是第一行的首址。答案:√29. C 语言中,以“r”方式不能打开并不存在的文件。答案:√6 30. {请写出下列程序的输出结果。#include <stdio.h>int main() \{ char str[]="ab*AB%cd#CD$";int i;for(i=0;str[i]!='\0';i++) if('A'<=str[i]&&str[i]<='Z') putchar(str[i]); else if('a'<= str[i]&& str[i]<='z') putchar(str[i]-32);return 0;\}}答案:ABABCDCD31. {请写出下列程序的输出结果。#include <stdio.h>void func(int a,int b) \{ static int m=0,i=2; i+=m+1;m=i+a+b; printf("%d,%d,",i,m); \}int main() \{ int k=4,m=1; func(k,m);func(k,m); return 0;\}}答案:3,8,12,17,7
文档格式: docx,价格: 5下载文档
返回顶部