C语言程序设计练习题整理.docx
- 文档编号:25545766
- 上传时间:2023-06-09
- 格式:DOCX
- 页数:21
- 大小:24.55KB
C语言程序设计练习题整理.docx
《C语言程序设计练习题整理.docx》由会员分享,可在线阅读,更多相关《C语言程序设计练习题整理.docx(21页珍藏版)》请在冰豆网上搜索。
C语言程序设计练习题整理
第1章C语言初步
一、选择题:
1、C语言是在()语言的基础上产生的。
A.AB.BC.DD.E
2、在C语言中,每个语句必须以()结束。
A.回车符B.冒号C.逗号D.分号
3、标识符和关键字间,要用()隔开。
A.回车符B.冒号C.空格D.分号
4、以下不是C语言的特点的是()
A.C语言简洁、紧凑
B.能够编制出功能复杂的程序
C.C语言可以直接对硬件进行操作
D.C语言移植性好
5、以下不正确的C语言标识符是()。
A.ABCB.abcC.a_bcD.ab.c
6、以下正确的c语言标识符是()。
A.%xB.a十bC.a123D.test!
7、一个c程序的执行是从().
A.main()函数开始,直到main()函数结束
B.第一个函数开始,直到最后一个函数结束
C.第一个语句开始,直到最后一个语句结束
D.main()函数开始,直到最后一个函数结束
8、一个c程序是由()。
A.一个主程序和若干子程序组成
B.一个或多个函数组成
C.若干过程组成
D.若干子程序组成
9、编辑程序的功能是()。
A.建立并修改程序B.将c源程序编译成目标程序
C.调试程序D.命令计算机执行指定的操作
10、用C语言编写的源文件经过编译,若没有产生编译错误,则系统将()。
A.生成可执行目标文件B.生成目标文件
C.输出运行结果D.自动保存源文件
11、下列说法中正确的是()。
A.由于C源程序是高级语言程序,因此一定要在TC软件中输入
B.由C源程序是字符流组成,因此可以作为文本文件在任何文本编辑的软件中输入
C.由于C程序是高级语言程序,因此输入后即可执行
D.由于C程序是高级语言程序,因此它由命令组成
12、C语言程序的基本单位是()。
A.过程B.函数C.子程序D.标识符
13、下列说法中正确的是()。
A.C语言程序由主函数和0个或多个函数组成
B.C语言程序由主程序和子程序组成
C.C语言程序由子程序组成
D.C语言程序由过程组成
14、下列说法中错误的是()。
A.主函数可以分为两个部分:
主函数说明部分和主函数体
B.主函数可以调用任何非主函数的其他函数
C.任何非主函数可以调用其他任何非主函数
D.程序可以从任何非主函数开始执行
二、填空题
1、C语言是一种“______”,既具有______的特点又具有______的特点;既适合于开发______又适合于编写______。
2、在C语言中,输入操作是由库函数完成的,输出函数是由库函数______完成的。
3、C程序的基本单位是______。
4、每个源程序有且只有一个______函数,系统总是从该函数开始执行C语言程序。
5、C语言的程序中有特殊含义的英语单词称为______。
6、C语言中,标识符的定义规则是______。
7、C语言程序的注释可以出现在程序中的任何地方,它总是以______符号作为开始标记,以______符号作为结束标记。
三、程序设计题
1.编写一个C语言应用程序,其功能是显示以下图形。
#
##
###
####
#####
2.编写C语言程序,运行后输出以下信息。
**************************
欢迎进入C语言的天地!
**************************
3.编写一个程序,在屏幕上输出你的姓名。
第2章数据类型、运算符与表达式
一、选择题:
1、下列数据中属于“字符串常量”的是()
A.ABCB.“ABC”C.‘abc’D.‘a’
2、在PC机中,’\n’在内存占用的字节数是()
A.1B.2C.3D.4
3、字符串”ABC”在内存占用的字节数是()
A.3B.4C.6D.8
4、在C语言中,合法的长整形常数是()
A.0LB.7654321C.0.07654321D.2.3456e10
5、char型常量在内存中存放的是()
A.ASCII值B.BCD码值
C.内码值D.十进制代码值
6、设m,n,a,b,c,d均为0,执行(m=n==b)||(n=c==d)后,m,n的值是()
A.0,0B.0,1C.1,0D.1,1
7、设a为5,执行下列语句后,b的值不为2的是()
A.b=a/2B.b=6-(--a)C.b=a%2D.b=a>3?
2:
4
8、执行语句”x=(a=3,b=a--)后,x,a,b的值依次为()
A.3,3,2B.3,2,2C.3,2,3D.2,3,2
9、设整形变量m,n,a,b均为1,执行”(m=a>b)&&(n=a>=b)”后m,n的值是()
A.0,0B.0,1C.1,0D.1,1
10、设有inta=3;则执行语句a+=a-=a*a;后a的值是()
A.3B.0C.9D.-12
11、在以下一组运算符中,优先级最高的运算符是()
A.<=B.=C.%D.&&
12、若已定义x和y为double类型,则表达式x=1,y=x+3/2的值是()
A.1B.2C.2.0D.2.5
13、设a=1,b=2,c=3,d=4,则表达式a
a:
c a: d的结果是() A.4B.3C.2D.1 14、下列表达式中符合C语言语法的赋值表达式是() A.a=7+b+c=a+7B.a=7+b++=a+7 C.a=(7+b,b++,a+7)D.a=7+b,c=a+7 15、若有chara;intb;floatc;doubled;则表达式a*b+d-c值的类型是() A.floatB.intC.charD.double 16、表达式10! =9的值是() A.trueB.非零值C.0D.1 二、填空题 1、在内存中存储”A”要占用个字节,存储’A’要占用个字节。 2、C语言中符号常量的定义方法是。 3、定义变量的完整格式为。 4、C语言中的逻辑值“真”是用表示的,逻辑值“假”是用表示的。 5、符号常量的定义方法是。 6、无符号基本整型的数据类型符为,双精度实型数据类型符为,字符型数据类型符为。 7、运算符: +、++、&&、<=中,优先级最高的是,最低的是。 8、设a=3,b=2,c=1,则a>b的值为,a>b>c的值为。 9、若a=10,b=20,则表达式! a 10、若intx=1,y=2;则表达式1.0+x/y的值为。 11、若int型变量x=y=z=5;若执行x-=y–z后x=;若执行x%=y+z后x=;若执行x=(y>z)? x+2: x–2,3,2后x=; 12、表述20 13、设floatx=2.5,y=4.7;inta=7;,表达式x+a%3*(int)(x+y)%2/4的值为。 14、判断变量a、b的值均不为0的逻辑表达式为。 15、求解赋值表达式a=(b=10)%(c=6),表达式值、a、b、c的值依次为。 16、求解逗号表达式x=a=3,6*a后,表达式值、x、a的值依次为。 17、数学式a/(b*c)的C语言表达式。 三、程序设计题 1、编写一个程序,将大写字母转换为小写字母。 2、编写程序,从键盘输入梯形的上下底边长度和高,计算梯形的面积。 3、编写程序,从键盘输入某学生的四科成绩,求出总分和平均分,找出最高分和最低分。 4、编写摄氏温度、华氏温度转换程序。 要求: 从键盘输入一个摄氏温度,屏幕就显示对应的华氏温度,输出取两位小数。 转换公式: F=(C+32)×9/5 四、程序改错题 1、以下程序的功能是,输入长方形的两边长(边长可以取整数和实数),输出它的面积和周长。 #include main { inta,b,s,l; scanf("%d,%d",&a,&b); s=a*b; l=a+b; printf("l=%f,s=%f\n",l); } 2、以下程序的功能是,输入两个数,求最大值。 #include mian() { inta,b;c; scanf("%d%d",a,&b); c=max(a,b); printf("max=%d"c); } intmax(intx,inty) {return(x>y? x: y)} 3、以下程序的功能是,输入三个数,求平均值。 include main() { inta,b; floataverage; printf("pleaseinputa,b,c: "); scanf("%d%d",&a,&b,&c); prinf("a=%d,b=%d,c=%d\n",a,b,c); average=(a+b+c)/3.0; printf("average=%.2d\n",average); 第4章程序结构 一、选择题: 1、若charc=’A’;则c=(c>=’A’&&c<=’Z’)? (c+32): c的值是() A.‘A’B.‘a’C.‘Z’D.‘z’ 2、设x,y,z,t均为int型变量,则执行以下语句后,t的值为() x=y=z=1;t=++x||++y&&++z; A.不定值B.2C.1D.0 3、执行以下语句后x的值是() a=b=c=0;x=35; if(! a)x--;elseif(b);if(c)x=3;elsex=4; A.34B.4C.35D.3 4、下面的程序段所表示的数学函数关系是() y=-1; if(x! =0)if(x>0)y=1;elsey=0; A.y=-1(x<0);0(x=0);1(x>0) B.y=1(x<0);-1(x=0);0(x>0) C.y=0(x<0);-1(x=0);1(x>0) D.y=-1(x<0);1(x=0);0(x>0) 5、若有整型变量i,j;则以下程序段中内循环体的执行次数为() for(i=5;i;i++) for(j=0;j<4;j++){...} A.20B.24C.25D.30 6、假定a和b为int型变量,则执行以下语句后b的值为() a=1;b=10; do{b-=a;a++;} while(b--<0); A.9B.-2C.-1D.8 7、在C语言中,下列说法中正确的是() A.不能使用”do语句while(条件)”的循环 B.”do语句while(条件)”的循环必须使用”break”语句退出循环 C.”do语句while(条件)”的循环中,当条件为非0时结束循环 D.”do语句while(条件)”的循环中,当条件为0时结束循环 8、若abcd都是int类型变量且初值为0,以下选项中不正确的赋值语句是()。 A.a=b=c=100;B.d++;C.c+b;D.d=(c=22)-(b++); 9、若变量已正确定义,要将a和b中的数进行交换,下面不正确的语句是()。 A.a=a+b,b=a-b,a=a-b; B.t=a,a=b,b=t; C.a=t;t=b;b=a; D.t=b;b=a;a=t; 10、以下关于if语句的错误描述是( )。 A.条件表达式可以是任意的表达式 B.条件表达式只能是关系表达式或逻辑表达式 C.条件表达式的括号不可省 D.与else配对的if语句是其之前最近的未配对的if语句 11、执行了以下程序段后,x,w的值为()。 intx=0,y=1,z=2,w; if(x++)w=x; elseif(x++&&y>=1)w=y; elseif(x++&&z>1)w=z; A.0,1B.1,1C.2,1D.3,2 12、对于下面①,②两个循环语句,()是正确的描述。 ①while (1); ②for(;;); A.①②都是无限循环B.①是无限循环,②错误 C.①循环一次,②错误D.①②皆错误 二、填空题 1、结构化程序设计规定的三种基本结构是结构,结构和结构。 2、以下两条if语句可合并成一条if语句为。 if(a<=b)x=1; elsey=2; if(a>b)printf(“****y=%d\n”,y); elseprintf(“####x=%d\n”,x); 3、设i,j,k均为型变量,则执行如下语句后,k的值为。 for(i=0,j=10;i<=j;i++,j--)k=i+j; 三、程序分析题 1、阅读程序,写出运行结果() #include"stdio.h" main() { floata,b,area; scanf("%f%f",&a,&b); area=a*b; printf("area=%f\n",area); } 2↙3↙ 2、阅读程序,写出运行结果() #include"stdio.h" main() { charc1,c2,c3; c1='a'; c2='b'; c1=c1-32; c2=c2-32; printf("\n%c%c\n",c1,c2); } 3、阅读程序,写出运行结果() #include"stdio.h" main() { intx,a; x=(a=3,6*3); printf("%d,%d\n",a,x); x=a=3,6*a; printf("%d,%d\n",a,x); } 4、阅读程序,写出运行结果() main() { inty=9; for(;y>0;y--) if(y%3==0){printf(“%d”,--y);cintinue;} } 5、阅读程序,写出运行结果() #include main() { inta=3,b=8,c=5,t; if(a>b){t=a;a=b;b=t;} if(a>c){t=a;a=c;c=t;} if(b>c){t=b;b=c;c=t;} printf("2: a=%d,b=%d,c=%d\n",a,b,c); } 6、阅读程序,写出运行结果() #include main() {intc1=0,c2=0,score; scanf("%d",&score); if(score>=60) { printf("及格"); c1=c1+1; } else { printf("不及格"); c2=c2+1; } } 86↙ 7、阅读程序,写出运行结果() #include main() { printf("***\n"); printf("***"); printf("***\n"); } 8、阅读程序,写出运行结果() #include main() { inti,s; i=1;s=0; while(i<=3) { s=s+i; i=i+1; } printf("%d",s); } 9、阅读程序,写出运行结果() #include main() { inti,j; for(i=1;i<=3;i++) {printf("*\n");} } 10、阅读程序,写出运行结果() #include main() {inta=1; while(a<=2) {printf("欢迎光临! "); a=a+1; } } 11、阅读程序,写出运行结果() #include main() { inta[5],i,min,max; for(i=0;i<5;i++) scanf("%d",&a[i]); min=max=a[0]; for(i=1;i<5;i++) {if(a[i] printf("Mininumvalueis%d\n",min); } 6↙5↙9↙3↙7↙ 12、阅读程序,写出运行结果() #include main() { inta[5]={1,2,3,4,5},i; for(i=0;i<5;i++) {printf("%4d",a[i]);} } 13、阅读程序,写出运行结果() #include #include func(inta,intb); main() { intk=4,m=1,p; p=func(k,m); printf("%d",p); } func(inta,intb) {intm; m=a+b; return(m); } 四、程序设计题 1、编程序,输入一个整数,输出其符号(若≥0,输出1;若≤0,输出-1)。 2、编程序,输入三个数,输出其中最小值。 第5章数组 一、选择题: 1、若有以下说明,则数值为4的表达式是() inta[12]={1,2,3,4,5,6,7,8,9,10,11,12}; charc=‘a‘,d,g; A.a[g–c]B.a[4]C.a[‘d’-‘c’]D.a[‘d’–c] 2、设有定义: chars[12]={“string”};则printf(“%d\n”,strlen(s));的输出是() A.6B.7C.11D.12 3、若有以下数组定义: inta[10]={1,2,3,4,5,6,7,8,9,10}; 则关于语句printf(“%d“,a[10]);正确的说法是()。 A.正确执行并输出10B.能够执行但输出0 C.语法错误,不能执行D.虽然能够执行,但输出结果不确定 4、下列语句中,正确的是() A.chara[3][]={‘abc’,‘1’};B.chara[][3]={“abc”,“1”};; C.chara[3][]={‘a’,“1”};D.chara[3][]={“a”,“1”}; 5、合法的数组定义是() A.inta[]={“string”};B.inta[5]={0,1,2,3,4,5}; C.chara={“string”};D.chara[]={0,1,2,3,4,5}; 6、关于数组定义,以下说法不正确的是()。 A.定义数组时,可以只为其中的部分元素赋值; B.多维数组在定义时只能省略第一维的长度; C.多维数组在定义时不能省略的是第一维的长度; D.局部数组在定义时也可以赋初值; 7、数组名作为参数传递给函数,作为实在参数的数组名被子处理为()。 A.该数组的长度B.该数组元素个数 C.该数组各元素的值D.该数组的首地址 二、填空题 1、若在程序中用到putchar()函数时,应在程序开头写上包含命令(),若在程序中用到strlen()函数时,应在程序开头写上包含命令()。 2、下面程序的功能是输出a数组中最大元素的下标,请填空。 main() { intk,p; inta[]={1,-9,7,2,-10,3}; for(p=0,k=p;p<6;p++) if(a[p]>a[k]) printf(“%d\n”,k); } 四、程序设计题 1、编程序,输入单精度型一维数组a[10],计算并输出a数组中所有元素的平均值。 2、有一个数组,内放10个数,编程找出其中最小的数及其下标。 第6章函数 一、选择题: 1、C语言中函数的隐含存储类型是() A.autoB.staticC.externD.无存储类型 2、以下对C语言函数的有关描述中,正确的是() A.调用函数时只能把实参的值传送给形参,形参值不能传送给实参 B.C函数既可以嵌套定义又可以递归调用 C.函数必须有返回值,否则不能使用函数 D.C程序中有调用关系的所有函数必须放在同一个源程序文件中 3、C语言中函数返回值的数据类型是由()决定。 A.主调函数的类型B.定义函数时指定的类型 C.return语句中表达式的类型D.声明函数时的类型 4、下列程序的输出结果是() intm=13; intfun(intx,iny) {intm=3; return(x*y-m); } main() {inta=7,b=5; printf(“%d”,fun(a,b)/m); } A.1B.2C.7D.10 5、以下程序的输出结果是() intd=1; voidfun(intn) {longs; intd=5; d+=n++; printf(“%d\t”,d);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 练习题 整理