2012秋季C语言程序设计复习题
更新时间:2024-03-01 05:08:01 阅读量: 综合文库 文档下载
- c语言程序设计答案推荐度:
- 相关推荐
2012秋季开大软件学院《C语言程序设计》复习题
一、填空题。(每小题1分,共计63分) 1、(计算机语言)是人与计算机进行交流的语言,是非自然语言的一种形式。 2、计算机语言大体分为(机器语言)、(汇编语言)、(高级语言)与(面向对象的语言)四种。
3、用(机器语言)编写的程序,计算机能够直接识别和执行,执行效率很高。 4、机器语言与(汇编语言)被称为低级语言。 5、最早的高级语言主要用于(科学计算)。
6、高级语言的翻译方式通常分为(编译)和(解释)两种方式。 7、(算法)是程序设计的灵魂,计算机语言只是其具体表示形式。 8、算法的常用表示方法有(自然语言)、(伪代码)、(程序流程图)、N-S图与PAD图等方法。
9、现代程序一般都具有(顺序结构)、(分支结构)、(循环结构)三种基本结构。 10、C语言程序中的错误一般分为(语法错误)、(语义错误)和(逻辑错误)三类。
11、模块化程序设计中,程序模块的设计原则是:功能的(单一性),模块的(有效性),模块的(可维护性)与(可测试性)。
12、结构化程序设计采用(自顶向下,逐步求精)的设计方法。 13、每一个C程序都必须有一个(main())函数。
14、C语言的输入和输出操作都是由库函数(scanf())和(printf())等来完成的。
15、C语言的标识符只能由(字母)、(数字)、(下划线)组成,第一个字符必须为(字母)或(下划线)。
16、在程序运行过程中,其值不能被修改的固定量称为(常量),可以改变的量叫(变量)。
17、数字0123在C语言中代表(八)进制数,它相当于十进制数的(83),而数字0X123在C语言中代表(十六)进制数,它相当于十进制数的(291)。 18、C语言中,整型变量可分为(基本整型)、(短整型)、(长整型)、(无符号整型)四种类型。
19、一个字符型变量在内存中占(一个)字节,它可以参加任何(整型)运算。 20、C语言中,逻辑表达式的运算结果为1时代表(真),结果为0时代表(假)。 21、BREAK语句只能用在(switch)语句和(循环)语句中表示退出或跳出当前程序段。
22、C语言的三种逻辑运算符按优先级次序依次是(!)、(&&)和(||)。 23、被重复执行的语句部分称为(循环体)。 24、一个良好的结构化程序应该只有一个(入口),且只有一个(出口),所以一般不允许出现(死循环)。
25、continue语句的作用是结束(本次循环),忽略其(后面的语句),回到(循环的开头)进行下一次循环判定。 26、(下标)用来标识元素在数组中的顺序号,因此数组元素也被称为(下标)变量。
27、数组声明的方括号中给出的是数组的(长度),而数组元素中的下标是该元
素在数组中的(位置)标识。
二、判断题。(每小题1分,共计20分)
1、在C语言中可以直接使用数组名输入输出字符串。(√)
2、使用%S格式输出字符串时,输出字符中不包括结束标志“\\0”。(√) 3、数组的初始化工作是在编译阶段进行的。(√)
4、使用int a[n]声明数组时,n可以是任意整型变量。(X)
5、break语句可以强制退出所有循环,直接执行最外层循环外的后续语句。(X) 6、for循环、while循环与do while循环均可相互交叉嵌套多层使用。(X) 7、while循环与do while循环完全可以进行功能互换,没有任何区别。(X) 8、while循环的循环体可以是单语句、空语句或多条语句。(√) 9、累加器变量与累乘器变量的初始值均为1。(X)
10、如果switch语句中只有一个case语句,则可以省略花括号。(√) 11、switch语句组中,多个case语句可以共用一组执行语句。(√) 12、三目运算符?:的功能相当于一个双分支if…else语句的功能。(√) 13、用%C格式控制符输入字符型数据时必须要用单引号把字符括起来。(X) 14、强制类型转换可以强制改变变量原来的数据类型。(X) 15、赋值运算符与所有复合赋值运算符的运算结合性相反。(X) 16、C语言的全部功能都是由函数实现的。(√) 17、二维数组是按列存取数组元素的。(X)
18、for循环的三个表达式必须至少有一个不能为空。(X) 19、else总是与距离它最近的if语句相配对。(√) 20、变量必须先声明后使用。(√)
三、单项选择题。(每小题1分,共计20分)
1、在32位计算机中,一个字长所占的字节数为( c ) A. 1 B. 2 C. 4 D. 8
2、与十进制数511等值的十六进制数为( a ) A. 1FF B. 2FF C. 1FE D. 2FE
3、在计算机系统中,存储一个汉字的国标码所需要的字节数为( b ) A. 1 B. 2 C. 3 D. 4 4、+100的补码是( d )
A. 01100000 B. 00000001 C. 11111111 D. 01100100 5、在C语言中,下列说法中错误的是( d )
A. 函数定义可以分为两个部分:函数说明部分和函数体 B. 主函数可以调用任何非主函数
C. 任何非主函数可以调用其他任何非主函数 D. 程序可以从任何函数开始执行
6、假设所有变量都是整型,则表达式(x=2,y=5,y++,x+y)的值是( b ) A. 7 B. 8 C. 6 D. 2
7、设a为5,执行下列计算后,b的值不为2的是( c ) A. b=a/2 B. b=6-(--a) C. b=a%2 D. b=a<3?3:2 8、在以下一组运算符中,优先级最高的运算符是( a ) A. % B. = C. <= D. &&
9、使用“scanf(“x=%f,y=%f”,&x,&y)”语句,要使x,y均为1.25,正确的输入是( c )
A. 1.25,1.25 B. 1.25 1.25 C. x=1.25,y=1.25 D.x=1.25 y=1.25 10、设x、y、z、t均为int型变量,则执行以下语句后,t的值为( b ) x=y=z=1;t=++x||++y&&++z;
A. 0 B. 1 C. 2 D.不定值
11、putchar函数可以向终端输出一个( d )
A.整型变量表达式值 B.字符串 C. 实型变量值 D.字符或字符型变量值 12、已有定义int a=-2;和输出语句:printf(“%8lx”,a);以下正确的叙述是( d )
A.整型变量的输出格式符只有%d一种
B.%x是格式符的一种,它可以适用于任何一种类型的数据 C.%x的输出类型为八进制
D.%8lx不是错误的格式符,其中数字8规定了输出字段的宽度
13、为了避免嵌套的if—else语句的二义性,C语言规定else总是与( c )组成配对关系。
A. 缩排位置相同的if B. 在其之前未配对的if C. 在其之前未配对的最近的if D. 同一行上的if 14、设a=5,b=6,c=7,d=8,m=2,n=2,则执行(m=a>b)&&(n=c>d)后n的值为( b ) A. 1 B. 2 C. 3 D. 4 15、执行以下语句后,Y的值为( a ) int x,y,z; x=y=z=0;
if(++x||++y&&++z) y=0; else y=1;
A. 0 B. 1 C. 2 D. 不确定 16、以下程序的运行结果是( c ) #include “stdio.h” main() {
int a=1;
if(a++>1) printf(“%d\\n”,a); else printf(“%d\\n”,a- -); }
A. 0 B. 1 C. 2 D. 3 17、下列语句中错误的是( b )
A. while(x=y) 5; B. do x++ while(x= =10); C. while(0) D. do 2;while(a= =b); 18、设有循环语句“for(i= -1;i<4;i++) i++;”,其循环体执行的次数是( c ) A.无限 B.0 C.3 D.4
19、循环语句while(!E)中的表达式!E等价于( d )
A. E!=0 B. E!=1 C. E= =1 D. E= =0 20、以下程序段 ( c ) x= -1; do
{x=x*x;}
while(!x);
A.是死循环 B.循环执行0次 C.循环执行一次 D.有语法错误 四、程序阅读题。(每小题1分,共计8分)
1、以下程序运行后的输出结果是( 3 ) main() {
int p=30;
printf(“%d\\n”,(p/3?p/10:p%3)); }
2、以下程序运行后的输出结果是( yes ) main() {
int a=1,b=3,c=5;
if(c=a+b) printf(“yes\\n”); else printf(“no\\n”); }
3、有以下程序,其运行后输出的结果是:( 1 ) main() {
int p,a=5;
if(p=a!0) printf(“%d\\n”,p); else printf(“%d\\n”,p+2); }
4、以下程序运行后的输出结果是( 20,0 ) main() {
int x=10,y=20,t=0; if(x= =y)t=x;x=y;y=t; printf(“%d,%d\\n”,x,y); }
5、若从键盘输入58,则以下程序输出的结果是( 585858 ) main() {
int a;
scanf(“%d”,&a);
if(a>50)printf(“%d”,a); if(a>40)printf(“%d”,a); if(a>30)printf(“%d”,a); }
6、以下程序运行后输出结果是( 132 ) main() {
int i=0,n=0,k=0; for(i=9;i<=11;i++)
switch(i/10) {
case 0:m++;n++;break; case 10:n++;break; default:k++;n++; }
printf(“%d%d%d\\n”,m,n,k); }
7、以下程序运行后的输出结果是( 17 ) main() {
int x=15;
while(x>10 && x<50) {
x++;
if(x/3) {x++;break;} else continue; }
printf(“%d\\n”,x); }
8、如下程序,若输入一组数据1 3 4 5 7 9 2 4 6 8 99,则其输出结果是 ( 1 2 3 4 5 6 7 8 9 99 ) # include
int a[10]; int i,j,k,t;
printf(“请输入10个整数:\\n”);
for(i=0;i<10;i++) scanf(“%d”,&a[i]); for(i=0;i<10;i++) {
k=i;
for(j=i+1;j<10;j++) if(a[j]
printf(“最终数据是:\\n”); for(i=0;i<10;i++) printf(“M”,a[i]); printf(“\\n”); }
五、补充程序题。(每小题1分,共计6分)
1、以下程序的功能是计算s=1+12+123+12345,请补充完整。 main()
{
int t=0,s=0,i; for(i=1;i<=5;i++)
{t=i+( 10*t );s=s+t;} printf(“s=%d\\n”,s); }
2、以下程序的功能是输出如下形式的方阵,请补充完整。 13 14 15 16 9 10 11 12 5 6 7 8 1 2 3 4 main() {
int i,j,x;
for(j=4;j( <0 );j- -) {
for(i=1;i<=4;i++) {
x=(j-1)*4+( i ); printf(“M”,x);
}
printf(“\\n”); } }
3、以下程序实现输入10个整数,找出其中的最大值并输出,请补充完整。 # include
int a[10],i=0,max=0;
printf(“请输入10个整数:\\n”); for(i=0;i<10;i++)
scanf(“%d”,( &a[i] )); max=a[0];
for(i=1;i<10;i++)
if( a[i]>max ) max=a[i]; printf(“Max=%d\\n”,max); }
4、下列程序完成输入一个实数,若该数大于等于0,则输出1,否则输出-1,要求用条件运算符求解,请补充完整。 # include
double x; int y;
printf(“请输入X的值:”); scanf(“%lf”,&x);
y=( x>=0?1:-1 ); printf(“y=%d\\n”,y); }
六、编程题。(每小题1分,共计8分)
1、输入一个4X4的矩阵,输出该矩阵并求其对角线元素之和。 参考答案:
#include
main() {
int i=0,j=0,sum=0; int a[4][4]={0};
printf(\请输入16个整数:\\n\ for(i=0;i<4;i++) for(j=0;j<4;j++)
scanf(\
printf(\该矩阵为:\\n\ for(i=0;i<4;i++) {
for(j=0;j<4;j++)
printf(\ printf(\ }
for(i=0;i<4;i++) for(j=0;j<4;j++)
if(i==j ||i+j==3) sum+=a[i][j];
printf(\该矩阵对角线元素的和为:%d\\n\}
2、输入10个整数,用冒泡法进行排序。 参考答案:
# include
Main() {
int a[10]; int i,j,t;
printf(“请输入10个整数:\\n”); for(i=0;i<10;i++) scanf(“%d”,&a[i]);
for(i=0;i<10;i++)
for(j=0;j<10-i;j++)
if(a[j]>a[j+1]) {
t=a[j];a[j]=a[j+1];a[j+1]=t; }
printf(“这10个数依次是:\\n”);
for(i=0;i<10;i++) printf(“M”,a[i]); printf(“\\n”); }
3、编程输出从公元1000年至2000年间所有闰年的年号,每输出三个年号换一行。
参考答案:
#include
main() {
int i=0,j=0;
for(i=1000;i<=2000;i++) {
if(i%4==0 && i0!=0 || i@0==0) {
printf(\ j++;
if(j%3==0) {
printf(\ j=0; } } } }
4、输出所有的“水仙花”数。所谓“水仙花”数是指一个3位正整数,其各位数字立方和等于该数本身。 参考答案:
#include
main() {
int a,b,c,i;
for(i=111;i<=999;i++) {
a=i;
b=(i/10); c=i/100;
if(i==a*a*a+b*b*b+c*c*c) printf(\ } }
5、编程输出九九乘法表 参考答案:
# include
main() {
int i,j;
for(i=1;i<=9;i++) {
for(j=1;j<=i;j++)
printf(“- X -”,i,j,i*j); printf(“\\n”); } }
6、编程求1+2+3+…+100的和,要求使用三种循环分别进行编写。 参考答案: while循环编程
# include
int i,sum=0; i=1;
while(i<=100) {
sum=sum+i; i=i+1; }
printf(“sum=%d”,sum); }
do while循环编程 # include
int i,sum=0; i=1; do {
sum=sum+i; i=i+1;
}while(i<=100);
printf(“sum=%d”,sum); }
for循环编程
# include
int i,sum=0;
for(i=1;i<=100;i++) sum=sum+i;
printf(“sum=%d”,sum); }
7、按托运规则,行李不超过50公斤时运费为0.15元/公斤,如果超过50公斤,则超过部分的运费为0,22元/公斤,现有行李W公斤,试编程计算所需运费。 参考答案:
#include
main() {
int weight; double money;
printf(\请输入行李的重量:\\n\ scanf(\
if(weight<50)
money=weight*0.15; else
money=50*0.15+(weight-50)*0.22;
printf(\你的行李%d公斤,应付运费:%.2f元\\n\
}
8、编程实现打印输出一个“*”符号构成的三角形图形。(图形如下) *
*** ***** ******* *********
参考答案:
# include
int i,j,k;
for(i=1;i<=5;i++) {
for(j=1;j<=5-i;j++) printf(“ “); for(k=1;k<=2*i-1;k++) printf(“*”); printf(“\\n”); } }
一、填空题。(每空1分,共计10分) 二、判断题。(每小题2分,共计20分)
三、单项选择题。(每小题2分,共计20分) 四、程序阅读题。(每小题3分,共计15分) 五、补充程序题。(每空5分,共计15分) 六、编程题。(每小题15+5分,共计20分)
}
8、编程实现打印输出一个“*”符号构成的三角形图形。(图形如下) *
*** ***** ******* *********
参考答案:
# include
int i,j,k;
for(i=1;i<=5;i++) {
for(j=1;j<=5-i;j++) printf(“ “); for(k=1;k<=2*i-1;k++) printf(“*”); printf(“\\n”); } }
一、填空题。(每空1分,共计10分) 二、判断题。(每小题2分,共计20分)
三、单项选择题。(每小题2分,共计20分) 四、程序阅读题。(每小题3分,共计15分) 五、补充程序题。(每空5分,共计15分) 六、编程题。(每小题15+5分,共计20分)
正在阅读:
2012秋季C语言程序设计复习题03-01
财务会计习题集含参考答案05-02
使用.net的SerialPort串口监控控件接收串口数据06-25
人民版历史必修三专题五学案04-17
信息论课程设计报告05-01
后勤部门绩效考核办法10-24
护理带教述职报告03-29
华为集团激励机制存在的问题及对策11-23
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 复习题
- 程序设计
- 秋季
- 语言
- 2012