C语言试题1.docx
- 文档编号:2917564
- 上传时间:2022-11-16
- 格式:DOCX
- 页数:12
- 大小:19.02KB
C语言试题1.docx
《C语言试题1.docx》由会员分享,可在线阅读,更多相关《C语言试题1.docx(12页珍藏版)》请在冰豆网上搜索。
C语言试题1
《高级程序设计基础(C语言)》考试题一
一、选择题(共20题,每题2分)
1.当a=1,b=3,c=5,d=4时,执行完下面一段程序后x的值是()。
if(a
if(c else if(a if(b elsex=3; elsex=6; elsex=7; A)1 B)2 C)3 D) 6 2.以下程序的输出结果是()。 main() { intx=2,y=-1,z=2; if(x if(y<0) z=0; else z=z+1; printf(“%d\n”,z); } A)3 B)2 C)1 D)0 3.若运行时给变量x输入12,则以下程序的运行结果是()。 main() { intx,y; scanf(“%d”,&x); y=x>12? x+10: x-12; printf(“%d\n”,y); } A)0 B)22 C)12 D)10 4.设有程序段 int k=10; while (k=0) k=k—1; 则下面描述中正确的是() A) while循环执行10次 B)循环是无限循环 C)循环体语句一次也不执行 D)循环体语句执行一次 5.下面程序的功能是计算: 至50中是7的倍数的数值之和,请选择填空。 #include main() {int i,sum=0; for(i=1;i<=50;i++) if( () ) sum+=i; printf("%d",sum); } A)(int)(i/7)==i/7 B)(int)i/7==i/7 C) i%7=0 D) i%7==0 6.下面程序段的运行结果是 a=1;b=2;c=2; while(a { t=a; a=b; b=t; c--; } printf("%d,%d,%d",a,6,c); A)1,2,0 B)2,1,0 C)1,2,1 D)2,1,1 7.下面程序的功能是计算1至10之间的奇数之和及偶数之和。 请选择填空 #include main() {int a,b,c,i; a=c=0; for(i=0;i<=10;i+=2) {a+=i; () ; c+=b; } printf("偶数之和=%d\n",a); printf("奇数之和=%d\n",c-11), } A)b=i-- B)b=i+1 C)b=i++ D)b=i-1 7.下面程序段: for (t=1; t<=100;t++) { scanf("%d",&x); if(x<0) continue; printf("%3d",t); } A)当x<0时整个循环结束 B)x>=0时什么也不输出 C)printf函数永远也不执行 D)最多允许输出100个非负整数 8.下面程序的运行结果是: #include"stdio.h" main() {inti; for(i=1;i<=5;i++) {if(i%2)printf("*"); elsecontinue; printf("#"); } printf("#");} A)*#*#$ B) #*#*#*$ C)*#*#$ D)#*#*$ 9.设有程序段 intk=10; while(k=5) k=k-1; 则下面描述正确的是 A)while循环执行10次 B)是死循环 C)循环语句一次也不执行 D)循环体语句执行一次 10.当已存在一个abc.txt文件时,执行函数fopen(“abc.txt”,“r+”)的功能是( )。 A.打开abc.txt文件,清除原有内容 B.打开abc.txt文件,只能写入新的内容 C.打开abc.txt文件,只能读取原有内容 D.打开abc.txt文件,可以读取和写入新的内容 11.fopen()函数的mode取值”r”和”w”时,它们之间的差别是( )。 A.”r”可向文件写入,”w”不可向文件写入 B.”r”不可向文件写入,”w”可向文件写入 C.”r”不可由文件读出,”w”可由文件读出 D.文件不存在时,”r”建立新文件,”w”出错 12.以下对一维数组a的正确说明是( ) (A)inta(10); (B)intn=10,a[n]; (C)intn;scanf(“%d”,&n); inta[n]; (D)#defineSIZE10 inta[SIZE]; 13.对以下说明语句的正确理解是( ) inta[10]={6,7,8,9,10}; (A)将5个初值依次赋给a[1]至a[5] (B)将5个初值依次赋给a[0]至a[4] (C)将5个初值依次赋给a[6]至a[10] (D)因为数组长度与初值的个数不相同,所以此语句不正确 14.下面程序的运行结果是( ) charc[5]={‘a’,’b’,’\0’,’c’,’\0’}; printf(“%s”,c); (A)ab (B)abc (C)abc+乱码 (D)ab\0c\0 15.对两个数组a和b进行如下初始化 chara[]=”ABCDEF”; charb[]={‘A’,’B’,’C’,’D’,’E’,’F’}; 则以下叙述正确的是 ( ) (A)a与b数组完全相同 (B)a与b长度相同 (C)a和b中都存放字符串 (D)a数组比b数组的长度长 16.下面是对s的初始化,其中不正确的是( ) (A)chars[5]={“abc”}; (B)chars[5]={‘a’,’b’,’c’}; (C)chars[5]=””; (D)chars[5]=”abcdef”; 17.以下程序运行的结果是( ) chars[6]; s=”abcd”; printf(“%s\n”,s); (A)”abcd” (B)abcd (C)abcd+乱码 (D)编译出错 18.若有说明语句charu[]=”Microsoft”,则数组的大小是( ) (A)100 (B)80 (C)10 (D)9 19.以下不正确的定义语句是( ) (A)doubley[5]={2.0,4.0,6.0,8.0,10.0}; (B)inty[5]={0,1,3,5,7,9}; (C)charc[]={‘1’,’2’,’7’,’4’,’5’}; (D)charc[]={“abcdf”}; 20.当执行下面的程序时,如果输入ABC,则输出结果是( ) A)ABC6789 B)ABC67 C)12345ABC6 D)ABC456789 #include"stdio.h" #include"string.h" main() {charss[10]="1,2,3,4,5"; gets(ss);strcat(ss,"6789");printf("%s\n",ss); } 二、分析程序题(共10题,每题3分) 1、以下程序的输出结果是() main() { intx=10,y=10; printf("%d%d\n",x--,--y); } 2、以下程序的输出结果是() main() { inta=32,b=66; printf("%c\n",a+b); } 3、若运行时输入: 16<回车>,则以下程序的运行结果是( )。 #include main() { intage; printf(“Inputyourage: “); scanf(“%d”,&age); if(age>=18) printf(“your$4.5yuan/hour”); else printf(“Your$3.0yuan/hour”); } 4、以下程序的执行结果是__________。 typedefstruct{ inty[4]; charz[8]; }MYTYPE; main(){ MYTYPEa={{2,3,5,6},"Tom"}; puts(a.z); } 5、有如下结构体类型说明: structtest{ char a[20]; doubleb; structtest*next; }; 如果head,p,q都是该类型的指针变量且三者按head-p-q的顺序构成了一个链表,现在要求我们仅用两条条语句从该链表中删除p并释放p所占的空间,那么这两条语句正确的形式是________________。 6、以下程序的输出结果是( )。 #include func(inta) { intb;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 试题