C程序设计(下)第6周上机模拟试卷 (A卷)
- 格式:doc
- 大小:38.50 KB
- 文档页数:2
C++程序设计模拟试卷(六)一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1. 当一个类的某个函数被说明为virtual时,该函数在该类的所有派生类中()A. 都是虚函数B. 只有被重新说明时才是虚函数C. 只有被重新说明为virtual时才是虚函数D. 都不是虚函数2. 以下基类中的成员函数表示纯虚函数的是()A. virtual void vf(int)B. void vf(int)=0C. virtual void vf()=0D. virtual void yf(int){}3. 下面对静态数据成员的描述中,正确的是()A. 静态数据成员可以在类体内进行初始化B. 静态数据成员可以直接用类名或者对象名来调用C. 静态数据成员不能用private控制符修饰D. 静态数据成员不可以被类的对象调用4. 所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体,这实体也就是()A. 类B. 对象C. 函数体D. 数据块5. 类B是类A的公有派生类,类A和类B中都定义了虚函数func(),p是一个指向类A对象的指针,则p->A::func()将()A. 调用类A中的函数func()B. 调用类B中的函数func()C. 根据p所指的对象类型而确定调用类A中或类B中的函数func()D. 既调用类A中函数,也调用类B中的函数6. 在面向对象的程序设计中,首先在问题域中识别出若干个()A. 函数B. 类C. 文件D. 过程7. 在下列成对的表达式中,运算结果类型相同的一对是()A. 7.0/2.0和7.0/2B. 5/2.0和5/2C. 7.0/2和7/2D. 8/2和6.0/2.08. 下列不具有访问权限属性的是()A. 非类成员B. 类成员C. 数据成员D. 函数成员9. 以下有关继承的叙述正确的是()A. 构造函数和析构函数都能被继承B. 派生类是基类的组合C. 派生类对象除了能访问自己的成员以外,不能访问基类中的所有成员D. 基类的公有成员一定能被派生类的对象访问10. 下列有关模板和继承的叙述正确的是()A. 模板和继承都可以派生出一个类系B. 从类系的成员看,模板类系的成员比继承类系的成员较为稳定C. 从动态性能看,继承类系比模板类系具有更多的动态特性D. 相同类模板的不同实例一般没有联系,而派生类各种类之间有兄弟父子等关系11. 适宜采用inline定义函数情况是()A. 函数体含有循环语句B. 函数体含有递归语句C. 函数代码少、频繁调用D. 函数代码多、不常调用12. 要采用动态多态性,说法正确的是()A. 基类指针调用虚函数B. 派生类对象调用虚函数C. 基类对象调用虚函数D. 派生类指针调用虚函数13. C++类体系中,不能被派生类继承的有()A. 转换函数B. 构造函数C. 虚函数D. 静态成员函数14. 下列不是描述类的成员函数的是()A. 构造函数B. 析构函数C. 友元函数D. 拷贝构造函数15. 下列不能作为类的成员的是()A. 自身类对象的指针B. 自身类对象C. 自身类对象的引用D. 另一个类的对象16. 下列不是描述类的成员函数的是()A. 构造函数B. 析构函数C. 友元函数D. 拷贝构造函数17. 关于对象概念的描述中,说法错误的是()A. 对象就是C语言中的结构变量B. 对象代表着正在创建的系统中的一个实体C. 对象是类的一个变量D. 对象之间的信息传递是通过消息进行的18. 派生类的构造函数的成员初始化列表中,不能包含()A. 基类的构造函数B. 基类的对象初始化C. 派生类对象的初始化D. 派生类中一般数据成员的初始化19. 关于new运算符的下列描述中,错误的是()A. 它可以用来动态创建对象和对象数组B. 使用它创建的对象或对象数组可以使用运算符delete删除C. 使用它创建对象时要调用构造函数D. 使用它创建对象数组时必须指定初始值20. 假定一个类的构造函数为A(int aa,int bb){a=aa++;b=a*++bb;},则执行A x(4,5);语句后,x.a和x.b的值分别为()A. 4和5B. 4和20C. 4和24D. 20和5二、填空题(本大题共20小题,每小题1分,共20分)请在每小题的空格中填上正确答案。
—06.30北京理工大学M O O C C语言程序设计(下)网上作业答案第一周编程作业1、求最大公约数和最小公倍数(15分)题目内容:编写程序,在主函数中输入两个正整数 a,b,调用两个函数 fun1() 和 fun2(),分别求 a 和 b 的最大公约数和最小公倍数,在主函数中输出结果。
输入格式:两个正整数输出格式:最大公约数和最小公倍数输入样例:12,40[回车]输出样例:最大公约数:4[回车]最小公倍数:120[回车]时间限制:500ms内存限制:32000kbCode:#include <stdio.h>int fun1(int m,int n){int r;r=m%n;return r==0?n:fun1(n,r);}int fun2(int m,int n){int t;t=m*n/fun1(m,n);return t;}int main(){ int t,m,n;scanf("%d,%d",&m,&n);if(m<n){t=m;m=n;n=t;}printf("最大公约数:%d\n",fun1(m,n));printf("最小公倍数:%d\n",fun2(m,n));return 0;}2、排序并插入(15分)题目内容:编写程序,在主函数中定义一个有10个元素的整型一维数组,用户输入9个数据,调用函数,对数组元素进行从小到大排序后,在函数中输入一个数,插入到数组中正确的位置,并输出。
输入格式:9个整数和1个整数输出格式:10个整数输入样例:2,3,1,5,6,76,89,31,90[回车]7[回车]输出样例:1,2,3,5,6,7,31,76,89,90[回车]时间限制:500ms内存限制:32000kb Code:#include <stdio.h>int main(){int t,j,i,n[10];for(i=0; i<9; i++){scanf("%d", &n[i]);if(i<8) scanf(",");}scanf("%d",&n[9]) ;for(i=0;i<9;i++){for(j=0;j<= 8-i;j++){if(n[j] > n[j+1]){t = n[j];n[j] = n[j+1];n[j+1] = t;}}}for(i=0;i<10;i++){printf("%d",n[i]);if(i<9) printf(",");}return 0;}第二周编程作业1、最大公约数(15分)题目内容:输入两个整数m,n,用递归算法实现计算两个数的最大公约数。
《C#程序设计》考试试卷(A)1.下面()是合法的变量名。
A.accp5.0 B._Csharp C.99s D.Main 2.下面这段代码的输出为()A.进入了if B.进入了if,进入了elseC.进入了else D.进入了if ,进入了else if,进入了else int year = 2046;if (year % 2 == 0){ Console.WriteLine("进入了if"); }else if (year % 3 == 0){ Console.WriteLine("进入了else if"); }else{ Console.WriteLine("进入了else"); }Console.ReadLine();3.下面程序的输出结果是 ( )A)1 B)2 C)4.5 D)4static void Main(string[] args){ int a=5,b =2;float x=4.5f, y=3.0f, u;u=a/3+b*x/y+1/2;Console .WriteLine ("{0}",u);Console.ReadLine();}4.运行下面这段代码的结果为()A.去上课B.去上课,聚餐,逛街,睡觉C.什么都不输出D.编译出错string day = "星期一";switch (day){ case"星期一":case"星期三":case"星期五": Console.Write("去上课");case"星期六": Console.Write(",聚餐");case"星期日": Console.Write(",逛街");default : Console.WriteLine(",睡觉");}Console.ReadLine();5.分析下面这段代码,执行后count的值为()int i, j ,count=0;for(i=0;i<4;i++)for(j=0;j<6;j++) { count++; }A.15 B.24 C.20 D.216.程序运行后的输出结果是( )A)1,1,2 B)2,2,1 C)1,3,2 D)2,2,3static void Main(string[] args){ int i=1,j=2,k=2;if(j++>0||k++>0 &&i++>0)Console .WriteLine ("{0},{1},{2}",i,j,k);Console.ReadLine();}7.若想打印如下图案,下面代码划线处应分别填入()。
C语言程序设计模拟试题一、单项选择题(请把答案填在每个题的括号内,每小题2分,共30分)1.对于一个正常运行的C程序,以下叙述中正确的是()A)程序的执行总是从main函数开始,在main函数结束B)程序的执行总是从程序的第一个函数开始,在main函数结束C)程序的执行总是从main函数开始,在程序的最后一个函数中结束D)程序的执行总是从程序中的第一个函数开始,程序的最后一个函数中结束2.设变量均已正确定义,若要通过scanf("%d%c,%d%c",&a1,&c1,&a2,&c2);语句为变量a1和a2赋数值10和20,为变量c1和c2赋字符'X'和'Y'。
以下所示的输入形式中正确的是()(注:口代表空格字符)A)10X,20Y<回车>B)10口X20口Y<回车>C)10口X<回车>20口Y<回车>D)10X<回车>20Y<回车>3.以下定义语句中正确的是()A)char a='A'b='B';B)float a=b=10.0;C)int a=10,*b=&a;D)float*a,b=&a;4.下列选项中,不能用作标识符的是()A)_main B)a1C)int_2_D)2_int_5.下列选项中,合法的C语言关键字是()A)VAR B)cher C)integer D)default6.为表示关系z≥y≥x,应使用C语言表达式()A)(z>=y>=x)B)(z>=y)AND(y>=x)C)(z>=y)&&(y>=x)D)(z>=y)&(y>=x)7.有以下程序段:int k=0,a=1,b=2;k=a<b?b:a;执行该程序段后,k的值是()A)3B)2C)1D)08.C语言中用于结构化程序设计的三种基本结构是()A)if、switch、break B)顺序结构、选择结构、循环结构C)for、while、do-while D)break、for、continue9.若int i;则语句:for(i=2;i==0;)printf("%d",i--);的循环执行次数是()A)无限次B)0次C)1次D)2次10.在循环结构的循环体中执行break语句,其作用是()A)结束本次循环,进行下次循环B)继续执行break语句之后的循环体中各语句C)跳出该循环体,提前结束循环D)终止程序运行11.已定义int a[10],i;以下能正确为a数组元素进行赋值的语句是()A)for(i=0;i<10;i++)scanf("%d",a[i]);B)for(i=0;i<=10;i++)scanf("%d",a[i]);C)for(i=0;i<10;i++)scanf("%d",&a[i]);D)for(i=1;i<=10;i++)scanf("%d",&a[i]);12.以下能正确定义二维数组的是()A)int a[][3];B)int a[][3]={{2,3},{4}};C)int a[][3]={};D)int a[2][3]={{1},{2},{3,4}};13.s1和s2已正确定义并分别指向两个字符串。
C语言程序设计模拟题(含答案)C语言程序设计试题一、单项选择题(本题共25小题,每小题2分,共50分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其正确答案涂写在答题卡上。
错选、多选或未选均无分。
1. 以下正确的C语言自定义标识符是__A____。
A. _1aB. 2a_C. doD. a.122. 在C语言中,错误的常数表示是___D____。
A. 0LB.-0x6aLC. '6'D. 1.234E3.53. 设int a, x=2; 执行语句a=x>0?3*x:x=10;后,变量x的值是___B____。
A. 1B. 2C. 6D. 104.设有以下程序段:int x=2,y=2,z=0,a;a=++x||++y&&z++;printf("%d,%d,%d\n",x,y,z);执行后输出的结果是___C______。
A. 2, 2, 0B. 3, 3,1C. 3, 2, 0D. 3, 2, 15. 在C语言中,字符串"\\TOP\t\65\""的长度是__B_____。
A. 5 B.7C. 8D. 126. 设float x,由键盘输入:12.45, 能正确读入数据的输入语句是___C_____A_。
A. scanf("%5f",&x)B. scanf("%5d",&x);C. scanf("%f",x);D. scanf("%s",&x);7.逗号表达式a=2*6,a*3,a+5的值是___B______。
A. 12B. 17C.36 D. 418. C语言程序中,整型常量的书写形式不包括___A______。
A. 二进制B. 八进制C. 十进制D. 十六进制9. 在C语言中,下列运算符中结合性属于自右向左的是________B_。
c模拟考试试题及答案一、选择题(每题2分,共20分)1. 在C语言中,以下哪个是合法的变量名?A. 2variableB. variable2C. variable-twoD. variable_two答案:B2. 下列哪个选项不是C语言的基本数据类型?A. intB. floatC. stringD. double答案:C3. 以下代码段的输出结果是什么?```cint a = 10;printf("%d", a++);```A. 10B. 11C. 9D. 编译错误答案:A4. 在C语言中,以下哪个语句可以正确地实现数组元素的初始化?A. int arr[5] = {0, 1, 2};B. int arr[5] = {0, 1, 2, 3, 4};C. int arr[5] = {0};D. int arr[5] = {0, 1, 2, 3};答案:C5. 下列哪个是C语言中的控制语句?A. ifB. switchC. both A and BD. none of the above答案:C6. 在C语言中,以下哪个是正确的函数声明?A. void myFunction(int a, int b);B. int myFunction(int a, int b);C. Both A and BD. None of the above答案:C7. 以下哪个是C语言中的输入函数?A. printf()B. scanf()C. sprintf()D. fprintf()答案:B8. 以下代码段的输出结果是什么?```cfor (int i = 0; i < 5; i++) {printf("%d ", i);}```A. 0 1 2 3 4B. 4 3 2 1 0C. 1 2 3 4 5D. 编译错误答案:A9. 在C语言中,以下哪个是正确的字符串声明?A. char str[10] = "Hello";B. string str = "Hello";C. char str = "Hello";D. string str[10] = "Hello";答案:A10. 以下哪个选项是C语言中的逻辑运算符?A. &&B. ||C. Both A and BD. None of the above答案:C二、填空题(每空2分,共20分)1. 在C语言中,一个基本的数据类型可以是______、______或______。
XXXXX 职业技术学校2018—2019学年第二学期期中考试卷《程序设计VisualBasic 》试卷(闭卷)(A 卷) 出卷人:黄锦云(考试时间:90分钟, 18 级 计算机 专业使用)请将选择题的答案写在下列方框内一、 控件解释(写出以下控件名称(中英文名称))(每题3分,共15分)二、单项选择题(每题3分,共45分)1、在窗体上画一个命令按钮,其名称为Command1,然后编写如下事件过程: Private Sub Command1_Click() a=12345Print Format$(a,"000.00")End Sub程序运行后,单击命令按钮,窗体上显示的是______。
A 123.45B 2345.00C 00123.45D 123452、在窗体上画一个文本框(其名称为Text1)和一个标签(其名称为Label1),程序运行后,如果在文本框中输入指定的信息,则立即在标签中显示相同的内容。
以下可以实现上述操作的事件过程是______。
3、设x=4,y=6,则以下不能在窗体上显示出"A=10"的语句是______。
A Print "A = " x + yB Print "A = " + Str(x+y)C Print "A = " & x + yD Print A = x + y 4、用下面语句定义的数组的元素个数是______。
dim A(-3 to 5) as integer A.8 B.9 C.7 D.65、某人在窗体上画了一个名称为Timer1的计时器和一个名称为Label1的标签,计时器的属性设置为Enabled=True ,Interval=0,并编程如下。
希望在程序运行时,可以每2秒在标签上显示一次系统当前时间。
Private Sub Timer1_Timer() Label1.Caption=Time$End Sub在程序执行时发现未能实现上述目的,那么,他应做的修改是______。
《 C程序设计》考试试题( 120分钟)(闭卷)一、单项选择题(每小题 2分,共60分)1. C语言规定:在一个源程序中,main函数的位置是 _________ 。
A)必须在最开始B)必须在系统调用的库函数的后面C)可以任意D)必须在最后2.下列四组选项中,均不是C语言关键字的选项是 _________ 。
A)define B)getc C)include D)whileIF char scanf gotype printf case pow3.设 int a=3;结果为0的表达式是 _________ 。
A)2%a B)a/=a C)!a D)~a4.执行下面程序片段的结果是 _________ 。
int x=23;do { printf("%d",x--);}while(!x);( A)打印出231 (B)打印出23( C)不打印任何内容(D)陷入死循环5. 设int a=0,b=5,c=2;选择可执行x++的语句是 _________ 。
A)if(a) x++; B)if(a=b) x++;C)if(a =< b) x++; D)if(!(b-c)) x++;6.以下程序的运行结果是 _________ 。
main(){ int k=4,a=3,b=2,c=1;printf("\n%d\n",k<a ? k:c<b ? c:a);A)4 B) 3 C) 2 D)17.以下程序的输出结果是 _________ 。
main( ){ int x=8,y=8; printf("%d%d\n",x--,--y);}A)8 8 B)7 7 C)7 8 D)8 78.C语言中,运算对象必须是整数的运算符是 _________ 。
A)% B)\ C)%和\ D) **9.C语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是 _________ 。
这是往年的一份考试题,因为今年是上机考试,所以参考价值并不大.大家简单看看相关知识点的出题方式即可.《C语言程序设计》模拟试卷一、单项选择题(本大题共20题,每题2 分,共40分)1、若a、b均为int型变量,且a=100,则关于循环语句for(b=100;a==b;++a,++b)printf ( “ ------------“) ;的正确说法是。
A、循环体只执行一次B、死循环C、循环体一次也不执行D、输出-----------2、若x、y、z均为int 型变量,则执行下列语句后的z值为。
x=4; y=2; z=1; z=(x<y)?z :y ; z = (z<y)?z:x;A、1B、4C、2D、33、‘D’ + 32- 2的结果是。
A、’d’B、’d’的ASCⅡ码C、’a’D、’b’的ASCⅡ码4、下面标识符中,合法的用户标识符为。
A、P#AdB、12aC、charD、_int5、语句char str[20];说明str是一个字符串,最多能表示。
A、20个字符B、21个字符C、18个字符D、19个字符6、将整型表达式x+y+z的结果转换成float型变量的方法是。
A、float x+y+zB、(float) x+y+zC、float(x+y+z)D、(float)(x+y+z)7、以下不正确的描述是。
A、使用while和do-while循环时,循环变量初始化的操作应在循环语句之前完成B、while循环是先判断表达式后执行循环体语句C、do-while和for循环均是先执行循环体语句,后判断表达式D、for、while、do-while循环中的循环体均可以由空语句构成8、在循环中使用continue 语句的功能是。
A、使程序的执行跳出continue所在的那一重循环B、使程序执行结束C、跳出包含此continue语句的所有循环D、终止本次循环,继续下次循环9、下面是一个初始化指针的语句:int *px = &a;其中指针变量的名字应该是。
【改错】:在屏幕上输出以下图形(说明:数字之间无空格)。
192288333777444466665555555555#include <stdio.h>void main(){int i,j,k;for(i=1;i<6;i++){for(k=1;k<6-i;k++)printf(" ");for(k=1;k<=i;k++)printf("%d",k); /*$ERROR1$*/j=9; /*$ERROR2$*/k=1;while(k<=j) /*$ERROR3$*/{printf("%d",j);k++;}printf("\n");}}答案:$1$:printf("%d",i);$2$:j=10-i;$3$:while(k<=i)【程序填空】:将长整型数s中每一位上为偶数的数码依次取出,构成一个新数放在t中。
高位仍在高位,低位仍在低位。
#include <stdio.h>void main(){long s=87653142,k,m=0,t=0;while (s>0){k=s%10;if(___) m=m*10+k;}while(___){t=t*10+m%10;m=m/10;}printf("%1d\n",t);}答案:BLANKk1: %2==0BLANK2: s/10BLANK3: m>0【程序设计】:有100匹马驮100担货,大马驮4担,中马驮3担,5匹小马驮1担,问三种马各多少匹?注意:(1)大,中,小马都必须有;(2)问题的只有一种;(3)要求使用循环实现。
#include <stdio.h>void PRINT(int a,int b,int c){FILE *out;printf("big=%d,mid=%d,small=%d\n",a,b,c);if((out=fopen("c:24000101\\RESULT.DAT","w+"))!NULL)fprintf(out,"big=&dp,mid=%dp,small=%dp",a,b,c);fclose(out);}void main(){PRINT(a,b,c);}答案:参考答案一#include <stdio.h>void PRINT(int a,int b,int c){FILE *out;printf("big=%d,mid=%d,small=%d\n",a,b,c);if((out=fopen("result.dat","w+"))!NULL)fprintf(out,"big=&dp,mid=%dp,small=%dp",a,b,c);fclose(out);}void main(){int a,b,c;for(a=1;a<=25;a++)for(b=1;b<=33;b++)for(c=5;c<=100;c=c+5)if(a*4+b*3+C/5==100 && a+b+c==100)PRINT(a,b,c);}参考答案二#include <stdio.h>void PRINT(int a,int b,int c){FILE *out;printf("big=%d,mid=%d,small=%d\n",a,b,c);if((out=fopen("result.dat","w+"))!NULL)fprintf(out,"big=&dp,mid=%dp,small=%dp",a,b,c);fclose(out);}void main(){int a,b,c;for(a=1;a<=25;a++)for(b=5-a%5;b<=33;b+=5)if(c=100-a-b , a*4+b*3+C/5==100)PRINT(a,b,c);}试卷2【改错】:判断从键盘输入的一个三位数是否是水仙花数。
C语⾔程序设计模拟试题3(附答案)《C语⾔程序设计》模拟试卷三⼀、填空题。
(每空2分,共16分)1.在内存中,短整型变量占字节,单精度实型变量占字节,字符型变量占字节。
2.⼀个C语⾔⽂件是由若⼲个组成。
3.设有以下变量定义,并已赋确定的值char w; int x; float y; double z;则表达式:w*x+z-y所求得的数据类型为。
4.若x为int类型,请以最简单的形式写出与逻辑表达式!x等价的C语⾔关系表达式。
5.若有如下图所⽰五个连续的int类型的存储单元并赋值如下图,a[0]的地址⼩于a[4]的地址。
p和s是基类型为int的指针变量。
请对以下问题进⾏填空。
a[0] a[1] a[2] a[3] a[4](1)若p已指向存储单元a[1]。
通过指针p,给s赋值,使s指向最后⼀个存储单元a[4]的语句是。
(2)若指针s指向存储单元a[2],p 指向存储单元a[0],表达式s-p的值是。
⼆、单项选择题。
(每题2分,共40分)1.设有int x=11; 则表达式(x++ * 1/3) 的值是()。
A) 3 B) 4 C) 11 D) 122.下列程序的输出结果是()。
A) 3 B) 3.2 C) 0 D) 3.07main(){double d=3.2; int x,y;x=1.2; y=(x+3.8)/5.0;printf(“%d \n”, d*y);}3.下列程序执⾏后的输出结果是(⼩数点后只写⼀位)()。
A) 6 6 6.0 6.0 B) 6 6 6.7 6.7C) 6 6 6.0 6.7 D) 6 6 6.7 6.0main(){ double d; float f; long l; int i;i=f=l=d=20/3;printf("%d %ld %f %f \n", i,l,f,d);scanf("%d",&d);4.下列变量定义中合法的是()。
C语言程序设计试题集(第1套)一、单项选择题(每题2分,共20分)1、以下叙述不正确的是A)C程序由函数构成B) 一个C程序至少包含一个main函数C) main函数可以调用main函数D) main函数是每个程序执行的起始点2、C程序中能直接让机器执行的文件是A)编辑后的.c源文件B)通过编译的.obj文件C)通过连接的.exe文件D)编辑后的.bak文件3、假设定义变量如下:int x;float y;以下输入语句中哪个是正确的?A)scanf(“%f%d”,&y,&x); B)scanf(“%f%d”, y, x);C)scanf(“%f%f”,&y,&x); D)scanf(“%d%d”,&y,&x);4、已知:int a[][3]={1,2,3,4,5,6};则数组a的第一维的大小是A)2 B)3 C)4 D)无确定值5、.如果switch表达式是char 变量code,下面哪一个case子句是合法的。
A)case “3”:B)case …3‟:C)case 3 : D)case =3:6、能正确表示”x的值在[1,10]和[200,210]范围内”的表达式是A)(x>=1)&&(x<=10)&&(x>=200)&&(x<=210)B) (x>=1) || (x<=10) || (x>=200) || (x<=210)C) (x>=1)&&(x<=10) || (x>=200)&&(x<=210)D) (x>=1) || (x<=10)&&(x>=200) || (x<=210)7、C语言中while和do-while 循环的主要区别是do-while循环至少无条件执行一次,而while循环可能一次也不执行while循环控制条件比do-while循环控制条件严格do-while循环允许从外部转到循环体内,而while循环不允许do-while的循环体可以是复合语句,而while循环不可以是复合语句8、下面哪一项函数的头部是有效的?one(int a int b)int thisone(char x)char another(int a,b)double yetanother9、若有定义char x[ ]= "12345"; char y[ ]={ '1', '2', '3', '4', '5'};则A)x数组与y数组的长度相同B)x数组长度大于y的长度C)x 数组长度小于y数组长度D)x数组等价于y 数组10、二维数组的第一个元素的行下标和列下标是A) 1,1 B)0,1 C)1,0 D) 0,0二、填空题(每空3分,共30分)1、如果a=4, b=3,那么,在执行语句a=b;之后,a、b的值分别是(1)2、语句:if(6>5)printf(“#”);printf(“$”);输出(2)3、for( sum=j=0; j<=10; ++j) sum += j; 循环结束后sum的值等于(3)4、长度为10的int类型数组和长度为3 的double类型数组,哪一个数组占用的内存空间多(4)5、字符数组a)char a[]=“one”;占多少内存字节(5)6、如果ch<…A‟或ch>…Z‟,那么,表达式ch>=…A‟&& ch<=…Z‟的值是(6)7、编写C语句,交换a、b的值(7)8、为了使用库函数getchar(),必须在程序中包含命令(8)9、设int numbers[5]={17,25,30,56,58};编写C的for语句,将数组numbers中的每个元素减去3。
计算机科学类专业《C语言程序设计》模拟考试试卷(满分100分)一、单项选择题(本大题共30小题,每小题2分,共60分)1、下列选项中,合法的C语言标识符是()。
A)my_name B)$234 C)my name D)23b2、以下程序的输出结果是()。
void main(){int x,y;float z;x=2; y=10;z=x/y;printf("%f",z);}A)0.200000 B)0.2 C)0.000000 D)03、C语言规定,简单变量做实参时,它与对应形参之间的数据传递是()。
A)地址传递 B)只能把实参的值单向传递给形参C)由用户指定传递方式 D)由实参传给形参,再由形参传回给实参4、有以下程序段int m=0,n=0; char c;scanf("%d%c%d",&m,&c,&n);printf("%d,%c,%d\n",m,c,n);程序输出结果是:1,X,2。
则从键盘上可能的输入是()。
A)1X2<回车> B)1 X 2<回车>C)1,X,2<回车> D)1<回车>X<回车>2<回车>5、如果要对a,b,c三个变量赋予同一个初值5,如下语句错误的是()。
A)int a,b,c; a=b=c=5; B)int a=5,b=5,c=5;C)int a=5;b=5;c=5; D)int a=5,b=a,c=b;6、设变量n为float型,m为int型,则以下能实现将n中的数值保留小数点后两位,第三位进行四舍五入运算的表达式是()。
A)n=(n*100+0.5)/100.0 B)m=n*100+0.5,n=m/100.0C) n=n*100+0.5/100.0 D) n=(n/100+0.5)*100.07、以下程序段的功能是计算一个整数的各位数字之和,请选择填空。
C语言程序设计试卷含答案一、选择题(共20题,每题2分,共40分。
下面每题后面用小括号内标注了正确答案)1. 下列关键字中,用于定义变量的是(A)A. intB. ifC. whileD. for2. 变量的作用域是指变量的(C)A. 大小B. 类型C. 可访问范围D. 值3. 下列语句中,用于输出字符的是(B)A. scanfB. printfC. inputD. output4. 已知整型变量a和b,那么a += b; 等价于(D)A. a = a + b;B. a -= b;C. a = a - b;D. a = a + b;5. 在C语言中,用于表示“不等于”的运算符是(C)A. =B. ==C. !=D. >=6. 下面哪个for循环语句是正确的(A)A. for(int i=0; i<10; i++)B. for(int i<10; i++)C. for(int i=0; i<10)D. for(i=0; i<10; i++)7. 下列选项中,表示“或”运算符的是(D)A. &B. &&C. |D. ||8. 在C语言中,用于声明宏定义的关键字是(B)A. defineB. #defineC. constD. int9. 如果要判断一个整数是否为负数,正确的if条件语句是(C)A. if(n > 0)B. if(n => 0)C. if(n < 0)D. if(n <= 0)10. 下列哪个不是C语言的基本数据类型(D)A. intB. floatC. charD. string11. 下列关键字中,用于定义函数的是(C)A. mainB. includeC. voidD. for12. 在C语言中,表示“或者”的条件语句是(B)A. ifB. else ifC. switchD. while13. C语言中的“++”运算符表示(A)A. 自增B. 自减C. 相加D. 相减14. 下列哪个语句用于在C语言中声明字符类型的变量(C)A. String name;B. var name;C. char name;D. character name;15. 下列哪个不是C语言的关键字(D)A. enumB. longC. doubleD. true16. 在C语言中,用于跳出当前循环并继续执行下一次循环的关键字是(D)A. exitB. breakC. endD. continue17. 下列哪个函数用于从标准输入读取一个整数(A)A. scanfB. printfC. getsD. puts18. 在C语言中,用于声明一个指针变量的关键字是(A)A. int*B. pointC. newD. pointer19. 下列哪个运算符用于获取变量在内存中的地址(B)A. &B. *C. #D. %20. 下列哪个函数调用可以输出字符串(A)A. printf("Hello World!");B. scanf("Hello World!");C. gets("Hello World!");D. puts("Hello World!");二、填空题(共5题,每题4分,共20分。
东南大学成贤学院2010~2011学年第3学期
专业年级(第6周上机模拟考试A卷)考试科目:C程序设计(下)(闭卷)期末考试日期:2011年03月30日
学号:姓名:
说明:首先在E盘建立一个以自己的学号命名的文件夹,用于保存上交的考试文件。
对以下问题编制程序,调试运行,输出结果。
最后上传两个源文件(即*.c 的文件)到指定的服务器上。
注意:不要打包压缩!
一、编程题(15分)
【题目】
在main函数中定义整型数组a[5]和整形指针变量pa,且pa指向数组a, 要求使用4种方法,输出数组a的元素值。
【要求】
程序文件命名为“学号A卷f1(第5周).c”存放在以学号命名的文件夹中。
二、改错题(15分)
【题目】
使用指针技术,输入数组a的元素,并输出。
【要求】
(1) 只允许在原语句上进行修改,但不能增加或删除整条程序语句或修改算法。
(2) 程序文件命名为“学号A卷f2(第5周).c”存放在学号文件夹中。
含有错误的源程序如下:
void main ( )
{
int i, p, a[7];
p = *a;
for (i = 0; i < 7; i++)
scanf ("%d", ++p);
a=p;
printf ("\n");
for (i = 0; i < 7; i++, p++) printf ("%d",p);
}。