C++期中测验试卷2
C期中测验答案
《程序设计语言C》期中测验学号:姓名:(考试时间:45分钟)一、单项选择题(每小题 3 分,共30 分)1. C 语言程序中可以对程序进行注释,注释部分必须用符号_C_括起来。
A、…{… 和‟}‟B、…[…和‟]‟C、“/*”和”*/”D、“*/”和”/*”2. 下列运算符中,优先级最低的是_D____。
A、*B、!=C、+D、=3. 若变量已正确定义,表达式(j=3, j++) 的值是_A__ 。
A、3B、4C、5D、04. 已知字符…a‟ 的ASCII码为97 ,执行下列语句的输出是_D____。
printf ("%d, %c", ‟b‟, ‟b‟+1 ) ;A、98, bB、语句不合法C、98, 99D、98, c5. 要调用数学函数时,在#include命令行中应包含_C____。
A、<stdio.h>B、<string.h>C、<math.h>D、<ctype.h>6. 判断i和j至少有一个值为非0的表达式是_A____。
A、i!=0 || j!=0B、i*j!=0C、!(i==0 || j==0)D、i&&j7. 若a是基本整型变量,c是单精度实型变量,输入语句___D___是错误的。
A、scanf(”%d,%f”, &a, &c);B、scanf(”d=%d, c=%f”, &a, &c);C、scanf(”%d%f”, &a, &c);D、scanf(”%d%f”, a, c);8. 有输入语句:scanf(“a=%d:b=%d:c=%d”,&a,&b,&c);为使变量a的值为1,b为3,c为2,从键盘输入数据的正确形式应当是 B 。
A、132<回车>B、a=l:b=3:c=2<回车>C、1,3,2<回车>D、a=1,b=3,c=2<回车>9. 设x,y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0的是 D .A、…x‟&&‟y‟B、x<=yC、x||y+z&&y-zD、!((x<y)&&!z||1)10. 设有程序段int k=10;while (k=0) k=k-1;则下面描述中正确的是 CA) while循环执行10次B) 循环是无限循环C) 循环体语句一次也不执行D) 循环体语句执行一次二、填空题(每小题 3 分,共15 分)1. 写出下列程序段的输出结果。
C语言期中测试卷(含答案)
C语言期中测试卷班级:学号:姓名:一、判断题〔1×10分〕1.在C语言中,一个double型所占字节数为8。
2.strcat的作用是连接两个字符数组中的字符串。
3.在求C语言的表达式时,只需考虑运算符的优先级。
4.在标准C中,变量必须先定义后使用。
5.逗号运算符的求值顺序是从左到右的,逗号表达式的值为第一个表达式的值。
6.在标准C中,以“%〞形式输出的数字共有10位。
7.C语言不直接提供输入输出函数8.一个C程序可以有假设干个C源程序组成,而C源程序可以由假设干个函数和预处理组成。
9.C语言中用于构造化程序设计的三种根本构造是顺序构造、选择构造、循环构造。
10.在标准C中,赋值表达式可以出现在表达式的任何位置。
二、选择题〔2×10分〕第1题:假定a和b为int型变量,那么执行以下语句后b的值为a=1;b=10;do{b-=a;a++;}while(b--<0);A、9B、-2C、-4D、8第2题:以下表达不正确的选项是A、一个C源程序可由一个或多个函数组成B、一个C源程序必须包含一个main函数C、C程序的根本组成单位是函数D、在C程序中,注释说明只能位于一条语句的后面第3题:假设有以下说明,那么数值为4的表达式是:int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};char c='a',d;A、a[d-c]B、a[4]C、a['d'-'c']D、a['d'-c]第4题:下面有关for循环的正确描述是:A、for循环只能用于循环次数已经确定的B、for循环是先执行循环体语句,后判断表达式C、在for循环中,不能用break语句跳出循环体D、for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来第5题:以下符号中,不属于转义字符的是第6题:以下程序的输出结果是# include <># include <>void main(){char str[12]={'s','t','r','i','n','g'};printf("%d\n",strlen(str));}A、6B、7C、12D、13第7题:以下符号可以作为变量名的是:A、+aB、*pC、_DAYD、next day第8题:以下选项中,不属于C语言关键字的是A、ifB、printfC、sizeofD、for第9题:循环for(i=1,j=6; ++i!=--j; ) s=i+j; 将执行A、2次B、3次C、4次D、以上均不是第10题:一个C语言程序是由A、一个主程序和假设干子程序组成B、函数组成C、假设干过程组成D、假设干子程序组成三、程序填空题〔2×10分〕第1题:用π/4≈1 - 1/3 + 1/5 - 1/7 + ……公式求π的近似值。
C语言期中测验试题及答案
{
int a,b,temp;
scanf("%d%d",&a,&b);
temp=a*a+b*b;
if(temp>100)
printf("%d",temp/100);
else
printf("%d",a+b );
return 0;
}
25.编写程序实现:输入任意整数给n后,输出n行由大写字母A开始构成的三角形字符阵列图形。例如,输入整数7时(注意:n不得大于10),程序运行结果如下:
printf("D(60-69):%d\n",D);
printf("E(0-59):%d\n",E);
return 0;
}
scanf(“%d”, m);
for(i=2;i<=m; i++) y-=1.0/i*i;
printf( “the result is: %f\n”, y );
return 0;
}
修改为:
#include<stdio.h>
int main()
{ int m, i;
double y=1.0;
scanf("%d",&m);
C.if(a>b)c=a;a=b;b=c;D.if(a>b){c=a;a=b;b=c;}
12.以下选项中,能用作用户标示符的是C
A.viodB.8_8C._0_D.unsigned
11.有输入语句:int a,b,c; scanf("a=%d,b=%d,c=%d", &a, &b, &c);为使变量a的值为1,b的值为3,c的值为2,从键盘输入数据的正确形式应当是(注:#表示空格)D
C语言期中考试试卷
二、填空题:(10分)
1、在“* != + = ”以运算符中,优先级最低的运算符 是 _____________ 。 2、设ch是 char型变量,其值为 'A',则表达式ch=(ch>='A'&& ch<='Z')? (ch+32):ch 的值是__________。 3、若有说明和语句:int a=25,b=60;b=++a;则b的值 是__________ 。 4、语句的种类有:表达式语句、___________、复合语句、函数语句、 控制语句五种。 5、若k为int型变量且赋值11,请写出运算k++后表达式的值 。 6、将以下表达式max=(a>b)?a:b;写成if-else语句是: ___________________________________。 7、复合语句是用一对 界定的语句块。 8、已知a,b,c是一个十进制数的百位,十位,个位,则该数的表达式是 。 9、一个表达式要构成一个C语句,必须 。 10、scanf()输入数据时,遇到下列情况时该数据认为结束: , 回车,TAB键。
四、写出下列程序的结果:(20分)
1、main() {int x=17,y=26; printf ("%d",y/=(x%=6));} 该程序段的输出结果是________________。 2、main() {float x=2.0,y; if(x<0.0)y=0.0; else if(x<10.0)y=1.0/x; else y=1.0; printf("%f\n",y);} 该程序的输出结果是________________。 3、 main() {int k=8; switch(k) {case 9:k+=1; case 10:k+=1; case 11:k+=1;break; default:k+=1;} printf("%d\n",k);} 该程序的输出结果是________________。
2022.12全国青少年软件编程(C语言)等级考试试卷(二级)
1.数组逆序重放将一个数组中的值按逆序重新存放。
例如,原来的顺序为8,6,5,4,1。
要求改为1,4,5,6,8。
输入输入为两行:第一行数组中元素的个数n(1<n<100),第二行是n个整数,每两个整数之间用空格分隔。
输出输出为一行:输出逆序后数组的整数,每两个整数之间用空格分隔。
样例输入样例输出2.最长最短单词输入1行句子(不多于200个单词,每个单词长度不超过100),只包含字母、空格和逗号。
单词由至少一个连续的字母构成,空格和逗号都是单词间的间隔。
试输出第1个最长的单词和第1个最短单词。
输入一行句子。
输出两行输出:第1行,第一个最长的单词。
第2行,第一个最短的单词。
样例输入样例输出3.计算鞍点给定一个5*5的矩阵,每行只有一个最大值,每列只有一个最小值,寻找这个矩阵的鞍点。
鞍点指的是矩阵中的一个元素,它是所在行的最大值,并且是所在列的最小值。
例如:在下面的例子中(第4行第1列的元素就是鞍点,值为8 )。
11 3 5 6 912 4 7 8 1010 5 6 9 118 6 4 7 215 10 11 20 25输入输入包含一个5行5列的矩阵输出如果存在鞍点,输出鞍点所在的行、列及其值,如果不存在,输出"not found"样例输入样例输出4.病人排队病人登记看病,编写一个程序,将登记的病人按照以下原则排出看病的先后顺序:1. 老年人(年龄 >= 60岁)比非老年人优先看病。
2. 老年人按年龄从大到小的顺序看病,年龄相同的按登记的先后顺序排序。
3. 非老年人按登记的先后顺序看病。
输入第1行,输入一个小于100的正整数,表示病人的个数;后面按照病人登记的先后顺序,每行输入一个病人的信息,包括:一个长度小于10的字符串表示病人的ID(每个病人的ID各不相同且只含数字和字母),一个整数表示病人的年龄,中间用单个空格隔开。
输出按排好的看病顺序输出病人的ID,每行一个。
C程序期中测试卷
浙江科技学院考试试卷浙江科技学院2015 - 2016学年第 2 学期 期中考试试卷 A 卷考试科目 C 语言程序设计 考试方式 闭 完成时限 2小时 拟题人 题库 审核人 批准人 2016年 5月5日 建工 学院 2015 年级 理工科 专业命题:说明:1. 应将全部答案写在答卷纸对应的题号处;否则作无效处理;2. 考试完成后,必须将试卷与答卷同时交回。
一、判断题(本大题共12小题,每题小1分,共12分)1. 在定义数组时,数组的长度可以用整型常量或者整型变量表示。
2. 执行“int x=3,y=4; float z ;z=x/y;”后,z 的值为0.75。
3. C 语言中,关系表达式的值是1和0,分别表示“真”和“假”。
4. else 语句一定要与if 语句配对使用,程序中else 语句的个数一定小于或者等于if 语句的个数。
5. C 语言是一种结构化程序设计语言,结构化程序由顺序、选择、循环三种基本结构组成。
6. 并联电阻的计算公式 2121R R R R +对应的C 语言表达式是R1*R2/R1+R2。
7. 字符常量…A ‟与字符串常量“A ”所占用的存储单元大小不同。
8. break 语句和continue 语句一样都只能用于循环语句。
9. 与语句“if(!x) y=1;”等价的语句是“if(x!=0) y=1;”。
10. 使用do ……while 语句实现循环时,不管条件真假,都将首先无条件的执行一次专业班 学 姓 ………………………………………………………………………装订线……………………………………………………………………………………循环。
二、单选题(本大题共20小题,每题1分,共20分)1.一个C程序总是从()开始执行。
A. 书写顺序的第一个函数B. 书写顺序的第一条执行语句C. 主函数main()D. 不确定2.程序设计一般包含以下4个步骤,其中首先应该完成的是()。
A. 设计数据结构和算法B. 建立数学模型C. 编写程序D. 调试运行程序3.以下不能..正确计算代数式2((0.5))3sin值的C语言表达式是()。
C 期中考试卷答案及评分标准.doc
期中考试卷日期:2009/5/8 地点:东校区A501时间:2:40-3:40pm, 60分钟,满分:100分一、填空题(30分,每空1分,lOmin)1.程序设计的方法大致分为两类:_自顶向下—和—自底向上—。
一类方法将复杂问题分解成多个小的、简单的问题求解,而另一类则将小问题的解组合起来解决复杂的问题。
现实中的程序设计一般是两者的结合。
2.结构化程序是一种单入口单出口的程序,所使用的三种基本控制结构是:_顺序一、一选择一和一循环一3.定义一种程序设计语言必须描述它的语法和语义,其中前者是刻画什么样的符号传是有效单词,而后者描述的是程序语句的含义。
常用于定义前者的方法包括:_BNF—和—语法图—o4.一个C++语言程序是由一个一主函数—再加上若干—类_或一函数—组成。
程序代码要经过一编译_、链接等过程才能运行。
5.数据类型决定了数据的一表示方式_、_取值范围和一可以进行的操作一o6.下列标识符中哪些可以作为程序员自定义的合法标识符?_A_A. _whileB. newC. 3rlD. number3.57.函数有两种声明形式:_引用性声明一和一定义性声明其中前者又称为函数原型,只说明函数的一函数名_、一形参_______ 和—返回值 _______ ;后者又称为函数定义,给出函数体。
&静态变量既可以是局部变量,也可以是全局变量。
静态变量的生存期为一全局寿命—。
当声明为静态全局变量时,其作用域为_文件域—o9.ptr是一个float类型的指针,ptr指向地址2400,地址中存放的值为24。
那么ptr+1的值是一2404, *ptr+l的值是_25 _____ o10.现有声明语句char name[25] = "Sun Yat-sen University",那么sizeof (name)的值为_______________ , strlen(name)的值为B 。
A. 20B.22C. 23D. 21E. 2511.C++类的对象成员的构造函数的调用先于类自身构造函数的执行,而且对象成员构造函数的执行次序取决于:AA.在类中声明的次序B.在初始化列表中的次序二、找错题(15分,每题5分,lOmin)1.给定下述BNF,找出不符合所描述语法的句子:三、简答题(15分,每题5分,lOmin)1.请说明算法、实体和程序之间的关系。
C期中考试(含答案)
计算机基础(二)期中考试卷(含答案)一、选择题(1-15题每题2分,16-25题每题3分,共60分)(1)下列常数中不能作为C语言常量的是【B】A)0xabc B)2.5e-0.2 C)32 D)0747 (2)下列可用于C用户标识符的一组是【B】A)void, define, WORD B)a3_b3, _123, CarC)For, -abc, IFCase D)2a, DO, sizeof(3)C语言中运算对象必须是整型的运算符是【A】A)%= B)/ C)= D)<=(4)已知int x=10, y=3;则执行该语句printf("%d,%d\n",x--,--y);的输出结果是【D】A)10,3 B)9,3 C)9,2 D)10,2(5)short型的数据长度为2个字节,则unsigned short 类型数据的取值范围是【C】A)-127~128 B)0~255 C)0~65535 D)0~32768 (6)已知int x=6,y=2,z;则执行表达式z=x=x>y后,变量z 的值为【B】A)0 B)1 C)4 D)5(7)已知int x=5,y=3;则表达式(x||y)&&78的结果为【A】A)1 B)0 C)5 D)78(8)已知int x=1,y=1;表达式(!x||y--)的值是【B】A)0 B)1 C)2 D)-1(9)已知int i,j;则内循环体的执行次数是【C】for(i=6;i;i--)for(j=0;j<5;j++);A)40 B)35 C)30 D)25(10)已知int x,i,j,k;则计算表达式x=(i=4,j=16,k=32)后,x的值为【C】A)4 B)16 C)32 D)52(11)下列程序段执行后,x的值为【D】int a=14,b=15,x;char c='A';x=(a&&b)&&(c<'B');A)ture B)false C)0 D)1(12)下列表达式中,结果为5的是【B】A)6*5%6 B)5*-2+15 C)5+75%10 D)6+-2/3 (13)已知int k=10;则下列程序的输出结果为【B】do{printf("%d",k--);}while(!k);A)9 B)10 C)10987654321 D)没有输出(14)对以下程序段的描述,正确的是【C】x=-1;do{x=x*x;}while(!x);A)是死循环 B)循环体执行两次C)循环体执行一次 D)有语法错误(15)已知int i,j;则for(i=j=0; i<10&&j<8; i++,j+=3);控制的循环体执行的次数是【C】A)9 B)8 C)3 D)2(16)以下程序输出结果是【A】#include <stdio.h>int main(void){int a=10,b=50,c=30;a=a>30?1:2;b=b>30?1:2;c=c>30?1:2;printf("%d,%d,%d\n",a,b,c);return 0;}A)2,1,2 B)1,2,1 C)1,1,2 D)2,1,1 (17)下列程序的输出结果是【D】#include <stdio.h>int main(void){int a=45,b=40,c=50,d;d=a>30?b:c;switch(d){case 30: printf("%d,",a);case 40: printf("%d,",b);case 50: printf("%d,",c);default: printf("#");}return 0;}A)40,50 B)50,# C)40,# D)40,50,# (18)下列程序的输出结果是【B】#include <stdio.h>int main(void){int a=10,b=10,k;for(k=0;a>8;b=++k)printf("%d,%d,",a--,--b);return 0;}A)10,9,9,8, B)10,9,9,0,C)10,10,9,1, D)9,9,9,1,(19)下列程序的输出结果是【B】#include <stdio.h>int main(void){int a,b,m;for(a=5;a>=1;a--)for(m=0,b=a;b<=5;b++)m=m+a*b;printf("%d\n",m);return 0;}A)30 B)15 C)20 D)1(20)下列程序的输出结果是【A】#include <stdio.h>int main(void){char c;c=('z'-'a')/2+'A';putchar(c);return 0;}A)M B)N C)O D)Q(21)下列程序的输出结果是【D】#include <stdio.h>int main(void){int k=8;switch(k){case 9:k+=1;case 10:k+=1;case 11:k+=1;break;default:k+=1;}printf("%d\n",k);return 0;}A)12 B)11 C)10 D)9(22)下列程序的输出结果是【B】#include <stdio.h>int main(void){int i=6;while(i--)printf("%d",--i);printf("\n");return 0;}A)531 B)420 C)654321 D)死循环(23)下列程序的输出结果是【C】#include <stdio.h>int main(void){int i=1,j=1,k=2;if((j++||k++)&&i++)printf("%d,%d,%d\n",i,j,k);return 0;}A)1,1,2 B)2,2,1 C)2,2,2 D)2,2,3 (24)下列程序的输出结果是【C】#include <stdio.h>int main(void){float x=2.0,y;if(x<0.0) y=0.0;else if(x<10.0) y=1.0/x;else y=1.0;printf("%.2f\n",y);return 0;}A)0.00 B)0.25 C)0.50 D)1.00(25)执行下列程序从键盘上输入5,2,则输出结果是【C】#include <stdio.h>int main(void){int a,b,k;scanf("%d,%d",&a,&b);k=a;if(a<b) k=a%b;else k=b%a;printf("%d\n",k);return 0;}A)5 B)3 C)2 D)0二、编程题(每题10分,共40分)(1)用户输入圆柱体半径r和高h,输出其体积V,要求输出结果小数点后保留2位有效数字。
全国等级考试二级c试题答案
全国等级考试二级c试题答案一、选择题(每题2分,共40分)1. 下列哪个选项是C语言中定义一个整型变量的正确方式?A. int number;B. integer number;C. var number;D. number int;答案:A2. 在C语言中,哪个关键字用于声明一个函数?A. defineB. functionC. voidD. int答案:C3. 若有以下代码段:```cint a = 5, b = 10;a = b;```执行后,变量a的值是多少?A. 5B. 10C. 15D. 0答案:B4. C语言中,用于计算两个数的乘积的运算符是什么?A. +B. -C. *D. /答案:C5. 在C语言中,哪个函数用于输入一个字符?A. scanf()B. printf()C. getchar()D. getc()答案:C6. 若有以下代码段:```cint x = 3;printf("%d", x++);```执行后,输出的结果是多少?A. 2B. 3C. 4D. 5答案:B7. 在C语言中,哪个关键字用于声明一个指针?A. pointerB. ptrC. *D. ref答案:C8. 下列哪个选项是C语言中声明一个浮点型变量的正确方式?A. float number;B. floating number;C. real number;D. decimal number;答案:A9. C语言中,用于计算两个数的和的运算符是什么?A. +B. -C. *D. /答案:A10. 若有以下代码段:```cint a = 5, b = 10;b = a + b;```执行后,变量b的值是多少?A. 5B. 10C. 15D. 20答案:C11. 在C语言中,哪个函数用于输出一个整数?A. scanf()B. printf()C. getchar()D. getc()答案:B12. C语言中,用于计算两个数的差的运算符是什么?A. +B. -C. *D. /答案:B13. 若有以下代码段:```cint x = 3;printf("%d", ++x);```执行后,输出的结果是多少?A. 3B. 4C. 5D. 6答案:B14. 在C语言中,哪个关键字用于声明一个数组?A. arrayB. listC. sequenceD. []答案:D15. C语言中,用于计算两个数的商的运算符是什么?A. +B. -C. *D. /答案:D16. 若有以下代码段:```cint a = 5, b = 10;a = a * b;```执行后,变量a的值是多少?A. 25B. 50C. 100D. 500答案:B17. 在C语言中,哪个函数用于输入一个字符串?A. scanf()B. printf()C. gets()D. fgets()答案:D18. C语言中,用于计算两个数的余数的运算符是什么?A. +B. -C. %D. /答案:C19. 若有以下代码段:```cint x = 3;printf("%d", x--);```执行后,输出的结果是多少?A. 2B. 3C. 4D. 5答案:B20. 在C语言中,哪个关键字用于声明一个结构体?A. structB. typeC. classD. record答案:A二、填空题(每题2分,共20分)1. 在C语言中,用于声明一个字符型变量的关键字是________。
2020C语言期中考试试卷
一、选择题(每题2分,共30 分)1、以下关于C语言说法错误的是:()A、语言简洁紧凑B、C语言不区分大小写C、C程序的三种基本结构是顺序、选择、循环D、C语言可移植性好2、请选出可用作C语言用户标识符的一组标识符()A、void define WORDB、a3_b3 _123 IFC、For -abc aseD、2a DO sizeof3、sizeof(float)是()A、-个双精度型表达式B、-个整型表达式C、-个单精度型表达式D、-个不合法的表达式4、下面四个选项中,均是不合法的浮点数的选项是()A、-e3 .234 1e3B、160. 0.12 e3C、123 2e4.2 .e5D、-.18 123e4 0.05.以下关于运算符优先顺序的描述中正确的是()A、关系运算符<算术运算符<赋值运算符<逻辑运算符B、赋值运算符<逻辑运算符<关系运算符<算术运算符C、算术运算符<关系运算符<赋值运算符<逻辑运算符D、逻辑运算符<关系运算符<算术运算符<赋值运算符6、下面程序的运行结果是()#include<stdio.h>int main(){int i=1,sum=0;do{sum+=i;i++;}while(i<=5)printf("%d",sum);}A、 15B、死循环,没有输出C、21D、有语法错误,不运行7、下列程序的输出结果为()#include<stdio.h>int main(){int m=7,n=4;float a=38.4,b=6.4,x;x=m/2+n*a/b+1/2;printf("%f\n",x);return 0;}A、28.000000B、27.500000C、28.500000D、27.0000008、有以下程序#include<stdio.h>#define N 2#define M N+1#define MUN (M+1)*M/2int main(){printf("%d\n",MUN);return 0;}程序运行后输出结果是()A、8B、9C、5D、69、设x和y均为int型变量,则执行以下的循环后,y的值为()。
《C语言》期中测验试卷及答案
一、填空题(请将答案填在答题卡上。
每题4分,共32分)1.若int a=2,b=3, c=4, d=-1; 则表达式(a>b ? a:b) && c-d的值为 1 。
2.int i=5, j, k; j=i--; k=j; 则 k的值为 5 。
3.假定x和y为 double型,则表达式x=2,y=x+1/2的值是 2.0 。
4.若有代数式x2÷(3x+5y),则正确的C语言表达式为: x*x/(3*x+5*y) 。
5.字符串 "C-Programer" 占用内存 12 字节。
6.程序float x=25.6276; printf("x=%-10.2f",x);执行时输出的结果是:___________________。
(用大写字母U表示空格)。
7.以下程序的输出结果是 c=1,a=-1,b=3 。
main(){int a=-2,b=3, c;c=(a++<=0) && !b<=0;printf("c=%d,a=%d,b=%d\n",c,a,b); }8.执行下面程序段时输出的结果是 i=15 。
int i=5;switch(i){case 5:case 6: i+=10;case 7: break;case 8: i-=10;}printf("i=%d",i);二、单项选择题(每题4分,共32分)1. 在程序中可以用来作为变量名的合法的标识符是: BA、intB、 stu_1tC、 2a1 D #5a52. 下列运算符运算级别最高的是: CA、 &&B、 -=C、!D、 <3.以下程序的输出结果是: Cmain(){ int a=2, b=1;a+=b; b=a--; a=a-b;printf("%d,%d\n", a, b ); }A) 1,2 B) 3,1 C) -1,3 D) 0,34.阅读以下程序:程序运行后,如果从键盘上输人5,则输出结果是: Cmain(){ int x;scanf(‚%d‛,&x);if(x++<5) printf(‚%d‛,x);else printf(‚%d‛,x++); }A)4 B) 5 C) 6 D) 75. 以下正确的描述是: BA、 continue语句的作用是终止整个循环的执行。
C程序设计基础期中测验试题详解
C程序设计基础期中测验试题详解1 / 12————————————————————————————————作者:————————————————————————————————日期:2 / 12《C程序设计基础及实验》课程期中考试试卷参考答案试题一、单选题(每小题2分,共20分)1. 以下正确的字符常量是______。
A.’\412’B.255 C.’\08’D.’\’【解答】A.八进制412超出了8位二进制所能表示的范围03ff;B. 255是一个合法的整数,可以表示一个字节的值;C. 8不是一个合法的八进制数字;D. \是转义字符,\’表示单个单引号字符本身,所以。
字符常量缺少右单引号。
2. 假设有定义:float x=16/5/2.0, y=16/5.0/2; 则x 和y 的值分别为______。
A.1.5 1.6 B.1.6 1.6 C.1.5 1.5 D.1.6 1.5【解答】16/5/2.0 → (16/5)/2.0 → 3/2.0 → 1.516/5.0/2 → (16/5.0)/2 → 3.2/2 → 1.63. 下列语句中,_____ 将输出%d。
A.printf(“%d”); B.printf(“%%d”); C.printf(“\%d”); D.printf(“%%%d”)【解答】A.%d表示输出十进制整型量,但缺少相应的输出表达式,故输出结果是随机值;B.%%表示输出一个%符号本身,d是普通字符,原样输出,所以输出%d;C.\%表示符号%,%d表示输出十进制整型值,故输出结果是随机值;D.%%表示输出符号%本身,%d表示输出十进制整型值。
4. 下列程序段输出结果为_____。
int x=1, y=012;printf(“%d”,y*x++);A.12 B.10 C.20 D.24【解答】x++表达式的值是1,y*x++ → y*1 → y → 012 → 105. 下列程序段输出结果为_____。
计算机国家等级考试二级c试题及答案
计算机国家等级考试二级c试题及答案一、选择题(每题2分,共20分)1. 在C语言中,用于定义一个结构体的关键字是______。
A. structB. unionC. enumD. typedef答案:A2. 下列关于数组的描述中,错误的是______。
A. 数组可以存储相同类型的元素B. 数组的元素在内存中是连续存储的C. 数组的大小在定义时必须确定D. 数组的大小可以根据需要动态改变答案:D3. C语言中,用于字符串比较的函数是______。
A. strcmpB. strcpyC. strcatD. strlen答案:A4. 在C语言中,以下哪个运算符用于取地址?A. *B. &C. %D. #答案:B5. 下列关于函数的描述中,正确的是______。
A. 函数可以没有返回值B. 函数可以有多个返回值C. 函数的返回值类型必须与声明的一致D. 函数的参数可以是任意类型答案:C6. 在C语言中,用于定义指针的关键字是______。
A. intB. charC. floatD. void答案:D7. 下列关于循环的描述中,错误的是______。
A. for循环可以嵌套使用B. while循环可以无限循环C. do-while循环至少执行一次D. break语句可以用于任何循环答案:D8. 在C语言中,以下哪个关键字用于定义一个全局变量?A. staticB. externC. autoD. register答案:B9. 下列关于指针的描述中,错误的是______。
A. 指针可以指向任何类型的数据B. 指针可以作为函数的参数C. 指针可以指向函数D. 指针可以存储字符串答案:D10. 在C语言中,用于定义一个枚举类型的关键字是______。
A. enumB. structC. unionD. typedef答案:A二、填空题(每题2分,共20分)1. 在C语言中,定义一个整型变量的关键字是______。
全国等级考试二级c试题及答案
全国等级考试二级c试题及答案全国等级考试二级C试题及答案1. 选择题:以下哪个选项是C语言中合法的变量名?A. 2variableB. variable2C. variable-nameD. variable_name答案:B2. 填空题:在C语言中,以下代码段的输出结果是什么?```c#include <stdio.h>int main() {int i = 10;printf("%d", i++);return 0;}```输出结果为:103. 简答题:请解释C语言中指针的概念及其用途。
答案:指针是一种特殊的变量,它存储了另一个变量的内存地址。
指针的主要用途包括动态内存分配、数组操作、函数参数传递等,它们使得程序能够更加灵活地处理数据和内存。
4. 编程题:编写一个C语言函数,该函数接受一个整数数组和数组的大小作为参数,返回数组中的最大值。
```cint findMax(int arr[], int size) {int max = arr[0];for (int i = 1; i < size; i++) {if (arr[i] > max) {max = arr[i];}}return max;}```5. 论述题:请论述C语言中结构体(struct)的定义和使用。
答案:结构体是一种用户自定义的数据类型,它允许将多个不同类型的数据项组合成一个单一的数据结构。
定义结构体时,需要使用`struct`关键字,后跟结构体的名称和一对花括号,其中包含结构体成员的定义。
结构体的使用包括声明结构体变量、访问成员、作为函数参数传递等,它在处理复杂数据时非常有用。
6. 多选题:以下哪些是C语言中合法的函数声明?A. void myFunction(int a, int b);B. int myFunction();C. double myFunction(int a);D. void myFunction(int a, double b);答案:A, B, C, D7. 判断题:C语言中的全局变量在整个程序的生命周期内都是有效的。
二年级数学下学期期中测试试题 西南师大版C卷 附答案
二年级数学下学期期中测试试题西南师大版C卷附答案班级:_________ 姓名:_________ 学号:_________(试卷60分钟,满分为100分,卷面分为5分)试卷满分为100分,卷面书写有下列情况,在100分基础上酌情扣1-5分:1.书写字迹潦草,答卷不整洁扣2分。
2.使用修正纸、涂改液、透明胶等纠错扣1分。
3.不规范纠错,乱涂乱画扣2分。
一、按要求填空(本题共计12分)1、仔细填一填。
1、1米=()厘米我的身高约()米()厘米。
2、小刀长()厘米蜡笔长()厘米3、9×7=(),表示(),读作()。
2、把口诀补充完整。
二三( ) 四( )二十四三( )十八三五( ) ( )二得四五五( ) ( )四得八四( )二十二、计算题(本题共计10分)1、口算题。
5×6= 72÷8= 9×9=22+36= 3×3×3=4×7= 18÷6= 8×6= 98-46= 24÷4×9=3×8= 24÷6= 54-6= 72-35= 8×4-22=9×5= 21÷3= 56-7= 47+35= 18-4÷2=2、直接写得数。
3×2=6×6=5×4=4×3=5×2=5×5=1×6=2×6=1×1=4×4=5×1=6×5=5×6+13=4×5-5= 3×4+4=2×3+30=3×5-7= 4×6-4= 2×5+22=6×6-20=三、列竖式计算(本题共计6分)1、用竖式计算,有*的题要验算。
56÷9 514+658 *269+454验算:475-248 804-309 *1000-753验算:四、选一选(本题共计12分)1、通过测量我们发现( )跳得比较远。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
期中测验试卷2、请划出下列程序中的错误点,并说明出错原因:(本大题共10题,每小题3分,共30分)(说明:指编译、或者运行时出的错误。
)1、#include<iostream.h>#include<string.h>class vehicle{ int wheels=4; //error: 不可以这样初始化char color[8]="green"; //error: 不可以这样初始化 public:vehicle(int w,char*c){ wheels=w; strcpy(color,c); }void show(){ cout<<"color: "<<color<<" wheels: "<<wheels<<endl; } };void main(){ vehicle v1(6,"grey"),v2(4,"green");v1.show(); v2.show();}2、#include<iostream.h>class A{ int const x;public:A(int y=0) //error:const的数据成员只能通过初始化列表来初始化{ x=y; }};void main(){ A aa(555); }3、#include<iostream.h>class A{ int a,b;public:virtual A(int aa=0,int bb=0) //error: 构造函数不能定义为虚函数 { a=aa; b=bb;cout<<"A1 class!"<<endl;}virtual void show(){ cout<<"A: a="<<a<<" b="<<b<<endl; }};class B:public A{ public:B(int aa=0,int bb=0):A(aa,bb){ cout<<"A2 class!"<<endl; }void show(){ cout<<"B: "<<endl; }};void main(){ B b; b.show(); }4、#include<iostream.h>#include<string.h>class Person{ protected:char name[10],sex;int age;public:Person(char *n="",char s=' ',int a):sex(s),age(a)//error:{ strcpy(name,n); } //违反缺省值的次序规定void show(){ cout<<name<<””<<sex<<””<<age<<endl; } };void main(){ Person s1("Li si",’m’,20),s2("Zhang san",’w’,19);s1.show(); s2.show();}5、#include "iostream.h"void main(){ const float pi,*fp; //error: const常量pi必须初始化float r=8.9;fp=&r;pi=3.14; //error: pi是const常量,不能做左值cout<<" The circle erea is: "<<pi*r*r<<endl;}6、#include<iostream.h>class Pro{ private: int *p;public:Pro(int &i){ p=new int(i); cout<<"Constractor..."<<endl; } ~ Pro(){ delete p; cout<<"delete p..."<<endl; }void display(){ cout<<*p<<endl; }};void main(){ Pro p1(2003); //error: a(int &i);不能引用到一个常量上p1.display();}7、#include<iostream.h>class A{ protected: int *num;public:A(){ num=new int[10];for(int i=0;i<10;++i){ cout<<"input num["<<i<<"] : "; cin>>num[i]; cout<<endl; } }void show(){ for(int i=0;i<10;++i) cout<<num[i]<<endl; }};class B: public A{ protected: int x;public:B(int xx){ x=xx; }};void main(){ A a,*pa=&a;pa->show();B b1(12),*pb;pb=&a; //error: 派生类的指针不能指向基类的对象pb->show();pa=&b1;pa->show();}8、#include<iostream.h>template<class Type1,class Type2,class Type3>Type3 function(Type1 x1,Type2 x2){ Type3 temp=x1+x2;cout<<x1<<endl;cout<<x2<<endl;return(temp*x1+temp*x2);}void main(){ int x1=100;float x2=1903.5;double y=function(x1,x2); //error: 不能推断出模板函数中的Type3cout<<y<<endl; //模板函数的返回类型参数必须是形参类型之一}9、#include<iostream.h>class B0{ protected: int B0x;public:B0(int xx){ B0x=xx; }void display(){ cout<<"B0::display() B0x="<<B0x<<endl; }};class B1: public B0{ public:int B1x;B1(int x1,int x2):B0(x1),B1x(x2){ }void display(){ cout<<"B1::display() B1x="<<B1x<<endl; }};void main(){ B0 *p;B1 b1(99,77); p=&b1;p->display();cout<<p->B1x<<endl; //error: 父类指针指向子类,通过指针只能访问父类的成员}10、#include<iostream.h>class Date{ public:int year,month,day;Date(int y=1900,int m=1,int d=1){ year=y; month=m; day=d; }void input(){ cin>>year; cin>>month; cin>>day; }};class Student{ int num;char *name;Date birthdate;public:Student(int n,char *na,int y=1900,int m=1,int d=1):birthdate(y,m,d) { num=n; name=na; }void display(){ cout<<num<<" "<<name<<"’birthdate :";cout<<"Date: "<<month<<"-"<<day<<"-"<<year<<endl;//error: 应该birthdat.month, birthdat.day, birthdat.year }};void main(){ Student s1(1,"Smith"),s2(2,"Deitel",1950,12,3);s1.display(); s2.display();}。