《C程序设计语言》模拟试卷二
- 格式:doc
- 大小:58.50 KB
- 文档页数:5
国家二级C语言机试(程序设计题)模拟试卷2(题后含答案及解析) 题型有:1.1.使用VC++2010打开考生文件夹下prog1中的解决方案。
此解决方案的项目中包含一个源程序文件prog1.c。
在此程序中,函数fun的功能是:将s所指字符串中下标为偶数同时ASCII值为奇数的字符删除,s所指串中剩余的字符形成的新串放在t所指的数组中。
例如,若8所指字符串中的内容为“ABCDEFG12345”,其中字符C的ASCII码值为奇数,在数组中的下标为偶数,因此必须删除;而字符1的ASCII码值为奇数,在数组中的下标为奇数,因此不应当删除,其他依此类推。
最后t所指的数组中的内容应是“BDF12345”。
注意:部分源程序在文件PROG1.C中。
请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:#include<stdio.h>#include<string.h>void fun(char*s,char t[]){}main( ){char s[100],t[100];void NONO( );printf(“\nPlease enter string S:”);Scanf(“%s”,s);fun(s,t);printf(“\nThe result is:%s\n”,t);NONO( );}void NONO( ){/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。
*/chars[100],t[100];FTLE*rf,*wf;int i;rf=fopen(“in.dat”,”r”);wf=fopen(“out.dat”,”w”);for(i=0;i<10;i++){fscanf(rf,”%s”,s);fun(s,t);fprintf(wf,”%s\n”,t);}fclose(rf);fclose(wf);}正确答案:void fun(char*s,char t[]){int i,j=0;for(i=0;i<strlen(s);i++)if(!((i%2)==0&&(s[i]%2)))t[j++]=s[i];t[j]=0;}解析:本题是从一个字符串按要求生成另一个新的字符串。
《C 语言程序设计》模拟试卷2考试班级:一、判断题(2’×10=20’)1、C 语言源程序文件的扩展名均为.c 。
( )2、所谓变量,就是在程序运行过程中其值不可以改变的量。
( )3、一个C 语言程序总是从main 函数开始执行。
( )4、C 语言中所有字符串都是以‘\0’结束的。
( )5、在C 语言中do-while 和while 语句均是先判断表达式,再执行循环体语句。
() 6、算术运算符中‘/’的优先级高于‘%’。
( )7、int a[5];该语句表明数组a 中的第五个元素为a[5]。
( ) 8、函数getchar()的作用是:输出一个字符。
( )9、C 语言程序区分大小写。
( )10、C 语言中标识符第一个字符可以由字母,数字和下划线三种字符组成。
()二、单项选择题(2’×15=30’)1、以下说法正确的是( )。
A 、C 语言程序总是从第一个的函数开始执行B 、在C 语言程序中,要调用函数必须在main()函数中定义C 、C 语言程序总是从main()函数开始执行D 、C 语言程序中的main()函数必须放在程序的开始部分2、C 语言中基本数据类型包括( )。
A 、整型、实型、逻辑型B 、整型、实型、字符型C 、整型、字符型、逻辑型D 、字符型、实型、逻辑型3、下列可用于C 语言用户标识符的一组是( )。
A 、1AB 、P_0C 、-abcD 、int4、C 语言的三种基本结构是( )。
A 、顺序结构、逻辑结构、选择结构B 、顺序结构、选择结构、循环结构 系部:班级:学号:姓名:C、逻辑结构、层次结构、网状结构D、层次结构、顺序结构、循环结构5、起换行作用的转义字符是()。
A、’\t’B、’\b’C、’\n’D、’\r’6、设变量a是int型,f是float型,i是double型,则表达式10+′a′+i*f值的数据类型为()。
A、intB、floatC、double D)不确定7、关于数组元素类型的说法,下列那一项是正确的:()。
计算机等级《二级C语言程序设计》模拟题计算机等级《二级C语言程序设计》模拟题1.【单选题】2分| 有定义:“inta=2,b=3,c=4;”,则下列选项中值为0的表达式是()。
A (!a==1)&&(!b==0)B (aC a&&bD a||(b+b)&&(c-a)2.【单选题】2分| 执行下面的程序后,a的值为()。
main(){inta,b;for(a=1,b=1;a=10;a++){if(b%3==l){b+=3;continue;}b-=5;}}A 7B 8C 9D 103.【单选题】2分| 若fp是指向某文件的指针,且尚未读到文件末尾,则函数feof(fp)的返回值是()。
A EOFB -lC 非零值D 04.【单选题】2分| 有以下程序:main(){inta=0,b=0;a=10;/*给a赋值b=20;给b赋值*/printf("a+b=%d\n",a+b);//输出计算机结果}程序运行后的输出结果是()。
A a+b=10B a+b=30C 30D 出错5.【单选题】2分| 以下程序的输出结果是()。
main(){inta=3:printf("%d\n",(a+a-=a*a));}A -6B 12C 0D -126.【单选题】2分| 执行下列程序中的输出语句后,a的值是()。
main(){inta;printf("%d\n",(a=2*3,a*5,a+7));}A 17B 37C 6D 137.【单选题】2分| 下列关于栈的描述中错误的是()。
A 栈是先进先出的线性表B 栈只能顺序存储C 栈具有记忆作用D 对栈的插入删除操作中,不需要改变栈底指针8.【单选题】2分| 函数调用strcat(strcpy(str1,str2),str3)的功能是()。
A 将字符串str1复制到字符串str2中后再连接到字符串str3之后B 将字符串str1连接到字符串str2之后再复制到字符串str3之后C 将字符串str2复制到字符串str1之后再将字符串str3连接到字符串str1之后D 将字符串str2连接到字符串str1之后再将字符串strl复制到字符串str3中9.【单选题】2分| 对两个数组a和b进行下列初始化:charm[]1="l234567":charn[]={'1','2','3','4','5','6','7');则下列叙述正确的是()。
全国计算机等级考试《二级C语言程序设计》模拟试卷二[单选题]1.在下列模式中,能够给出数据库物理存储结构与物理存取方法的是((江南博哥))。
A.外模式B.内模式C.概念模式D.逻辑模式参考答案:B参考解析:数据库管理系统的三级模式包括:①外模式,也称子模式、用户模式,是指数据库用户所看到的数据结构,是用户看到的数据视图;②模式,也称逻辑模式,是数据库中对全体数据的逻辑结构和特性的描述,是所有用户所见到的数据视图的总和;③内模式,也称存储模式、物理模式,是指数据在数据库系统内的存储介质上的表示,是对数据的物理结构和存取方式的描述。
答案选择B选项。
[单选题]4.下面不属于需求分析阶段任务的是()。
A.确定软件系统的功能需求B.确定软件系统的性能需求C.需求规格说明书评审D.制定软件集成测试计划参考答案:D参考解析:需求分析阶段的工作主要包括4个方面:①需求获取,其目的是确定对目标系统的各方面需求;②需求分析,对获取的需求进行分析和综合,最终给出系统的解决方案和目标系统的逻辑模型;③编写文档,编写需求规格说明书,编写初步用户使用手册;④确认测试计划,修改完善软件开发计划,需求评审。
制定软件集成测试计划属于概要设计阶段的任务。
答案选择D选项。
[单选题]5.结构化程序的三种基本控制结构是()。
A.顺序、选择和重复(循环)B.过程、子程序和分程序C.顺序、选择和调用D.调用、返回和转移参考答案:A参考解析:结构化程序设计中三种基本控制结构为顺序、选择和重复(循环)。
答案选择A选项。
[单选题]6.构成计算机软件的是()。
A.源代码B.程序和数据C.程序和文档D.程序、数据及相关文档参考答案:D参考解析:计算机软件的定义为:与计算机系统的操作有关的计算机程序、规程、规则,以及可能有的文件、文档及数据。
答案选择D选项。
[单选题]7.在黑盒测试方法中,设计测试用例的主要根据是()。
A.程序内部逻辑B.程序外部功能C.程序数据结构D.程序流程图参考答案:B参考解析:黑盒测试完全不考虑程序内部的逻辑结构和内部特性,只根据程序的需求和功能规格说明,检查程序的功能是否符合它的功能规格说明。
计算机科学与技术专业《基础知识》模拟试卷二(考试时间150分钟,满分300分,共三部分)第一部分 C语言程序设计(共100分)一、单项选择题(本大题共30小题,每小题2分,共60分)1. 请读程序:#include<stdio.h>main(){int a;float b,c;scanf("%2d%3f%4f’,&a,&b,&c);printf("\na=%d,b=%ec。
%f\n",a,b,c);}若运行时从键盘上输入9876543210l,则上面程序的输出结果是________。
A)a=98,b=765,c=432 1 B)a=1 0,b=432,c=8765C)a=98,b=765.000000,c=432 1.000000D)a=98,b=765.0,c=432 1.0答案:C2. 一个良好的算法由下面的基本结构组成,但不包括__________。
A)顺序结构B)选择结构C)循环结构 D)跳转结构3. 请选出以下程序的输出结果________。
#include<stdio.h>sub(x,y,z)int x,y,*z:{*z=y-x;}main(){int a,b,c;sub(10,5,&a);sub(7,a,&b);sub(a,b,&c);}A)5,2,3B)-5,-12,-7C)-5,-12,-17D)5,-2,-74. 下面程序在屏幕上的输出是________。
main(){printf("ab\b\b c");}A)ab\b\b c B)a cC)abc D)ab c5. 若x是整型变量,pb是基类型为整型的指针变量,则正确的赋值表达式是_______。
A)pb=&x;B)pb=x;C)*pb=&x;D)*pb=*x6. 设整型数i=5,则printf("%d",i+++++i);的输出为________。
C语⾔程序设计模拟试卷(2)模拟试卷⼀⼀、选择题(每题1分,共15分) 在每⼩题列出的四个选项中只有⼀个是符合题⽬要求的,请在正确答案前点选,错选或未选均不得分。
1. 以下选项中不合法的⽤户标识是:正确答案A. _123B. printfC. A$D. Dim2. 在C 语⾔中,char 型数据在内存中的存储形式是:正确答案A. 补码B. 反码C. 原码D. ASCII 码正确答案:D3. 设x,y,z 为int 型变量,且x=3,y=4,z=5 ,则下⾯表达式中值为0 的是:正确答案A. 'x'&&'y'B. !((xC. x||y+z&&y-zD. x<=y正确答案:B4. 若有定义:int a=2,b=4,c; 执⾏语句c=a/b+2.6 ;后,c 的值为:正确答案A. 2.6D. 2正确答案:D5. 设a 为整型变量,不能确定表达数学关系10正确答案A. 10B. a==11|| a==12|| a==13|| a==14C. a>10&&a<15D. !(a<=10)&&!(a>=15)正确答案:C6. 若i 、j 已定义为int 型,则以下程序段中语句printf( “ %d ” ,i*j); 的执⾏次数是:for (i=3;i>0;i-- )for (j=0;j<4;j++ )printf( “ %d ” ,i*j);正确答案A. 12B. 15C. 16D. 20正确答案:A7. 若有输⼊语句“ scanf( "%d%d%d",&x,&y,&z); ”,则不能使x值为5,y 值为6,z值为7的输⼊是:正确答案A. 5 ,6 ,7< 回车>B. 5 6 7< 回车>C. 5 6 < 回车> 7< 回车>D. 5< 回车> ,6< 回车> ,7< 回车>正确答案:A8.执⾏以下程序段后,x ,y 和z 的值分别是:int x=10,y=20,z=30;if(x>y) z=x; x=y; y=z;正确答案:B9. 以下程序段x = -1;do{ x=x*x;} while(!x); 正确的说法是:正确答案A. 死循环B. 循环⼀次C. 循环两次D. 有语法错正确答案:B10. 以下正确的函数声明形式是:正确答案A. double fun(int x ,int y)B. double fun(int x ;int y)C. double fun(int x ,int y) ;D. double fun(int x ,y) ;正确答案:C11.若有定义char ch[8] ,则以下表达式中不能代表数组元素ch[1] 的地址是:正确答案A. &ch[0]+1B. &ch[1]C. &ch[0]++D. ch+1正确答案:C12. 若有初始化语句“ int a[5]={1,2,3,4,5}; ”,值为4 的表达式是:正确答案:C13. 若已有以下函数定义:float fun(float a, int b){int c;c=(int)a%b;return c;}则主调函数中语句“ printf("%f",fun(fun(fun(34,7),4),3)); ”的输出结果是:正确答案A. 2.000000B. 因参数类型与形参类型不⼀致,函数调⽤产⽣错误C. 2D. 因变量c 的类型与fun 函数的返回值类型不符,故输出值为随机值正确答案:A14. 已知:int a[]={1,2,3,4,5,6,7,8,9,10,11,12},*p=a+2 ;则值为3 的表达式是:正确答案A. (*p)++B. *p++C. *++pD. ++*p正确答案:B15. 以下可作为函数fopen 中第⼀个参数的正确格式是:正确答案A. c:\user\file.txtB. "c:\user\file.txt"C. "c:\\user\\file.txt"⼆、填空题(共10题)1. 字符串存储时,末尾被系统⾃动加上字符。
二级c语言器模考试题和答案**二级C语言模拟考试题和答案**一、选择题(每题2分,共40分)1. 下列哪个选项是C语言的关键字?A. intB. INTC. IntD. Integer**答案:A**2. C语言中,哪个函数用于输入一个字符?A. putchar()B. getc()C. scanf()D. getchar()**答案:D**3. 在C语言中,以下哪个是正确的字符串字面量?A. "Hello, World!"B. 'Hello, World!'C. "Hello, World!'"D. "Hello, World!"**答案:A**4. C语言中,以下哪个选项是合法的整型常量?A. 0x1AB. 1.2E3C. 0177D. 0b1010**答案:C**5. 在C语言中,以下哪个选项是合法的变量名?A. 2variableB. variable2C. _variableD. variable-name**答案:B**6. C语言中,以下哪个选项是合法的二维数组声明?A. int array[3][2];B. int array[][];C. int array[3][];D. int array;**答案:A**7. C语言中,以下哪个选项是合法的函数声明?A. void myFunction();B. int myFunction;C. int myFunction();D. void myFunction int x;**答案:C**8. C语言中,以下哪个选项是合法的循环语句?A. do { ... } while (condition);B. while { ... } (condition);C. for { ... } (condition);D. repeat { ... } until (condition);**答案:A**9. C语言中,以下哪个选项是合法的指针声明?A. int *ptr;B. int ptr*;C. int *ptr[];D. int (*ptr)();**答案:A**10. C语言中,以下哪个选项是合法的宏定义?A. #define PI 3.14159B. #define PI = 3.14159C. #define PI 3.14159D. #define PI 3.14159**答案:A**二、填空题(每题2分,共20分)1. C语言中,用于计算两个整数的差的运算符是 ________ 。
二级C语言程序设计模拟试题《1》一、单项选择题。
(每小题1分,共20分)仁设有整型变量a,单精度型变量f,双精度型变量x,则表达式a+,b,+x*f值的类型为(C)oA)int B) float C) doub I e D)不能确定2、下列语句的输出为(A )i rrt x=-1;pr i ntf ( "%d, %u, %o” , x, x, x);A) -1 , 65535 , 177777 B) -1,-1, -1C) -1 , 32767 , -177777 D) -1 , 32768 , 1777773、若N为整型变量,则for(N=10;N=0;N~);循环里的循环体被(D )oA) 无限循环B) 执行10次C) 执行一次D) 一次也不执行4、若有以下的定义.说明和语句,则值为101的表达式是(C )ostruct cw{ i nt a;int *b;}*p;int x0[] = {11,12},x1 [] = {31,32J;stat i c struct cw x[2] = {100, xO, 300, x1};P=x;A) *p->b B) p->a C) ++ (p->a) D) (p++) ">a5、已知函数的调用形式:fread(buffer, size, count, fp); 其中buffer代表的是(CA)一个整型变量,代表要读入的数据项总数B)一个文件指针,指向要读的文件C)一个指针,指向要读入数据的存放地址D)一个存储区,存放要读的数据项6、有如下程序void main(){ int x=23;do{ printf ( “%d” , x—);} wh i I e (! x);A) 321 B) 23 C) 不输出任何内容D) 陷入死循环7、下面程序运行情况是(D )o#i ncIude <stdio. h> void main() { int x=3, y=0, z=0; if (x=y+z)printf ( “林**” ); else) 输出****0 可以通过编译,但不能通过连接,因而不能运行D) 输出####8、要将一个整数12000分别一 ASCII 码文件和二进制文件 形式存放,各自所占的存储空间数分别是《 A 》字 节。
C语言程序设计模拟试题2一、单选题(每题3分,共计30分)1、C语言中基本数据类型包括(B)。
A、整型、实型、逻辑型B、整型、实型、字符型C、整型、字符型、逻辑型D、整型、实型、逻辑型、实型2、下列选项中不属于C语言的优点的选项是()。
A、C语言语句简洁、紧凑,使用方便灵活B、C语言程序易于移植C、生成的目标代码质量高,运行效率高D、数据类型检查严格3、若a、b均为int型变量,且a=100,则关于循环语句for(b=100; a!=b; ++a,++b)printf ( “ ------------”) ;的正确说法是()。
A、循环体只执行一次B、死循环C、循环体一次也不执行D、输出-----------4、对C语言来说,下列标识符中不合法的选项是()。
A、AB2CB、ab2cC、ab.2cD、a_b2c5、执行下列程序段后,i的值是()。
s = 0;for( i = 1; i <= 4; i=i+3 ){s += i;}A、1B、4C、5D、76、下列各语句中,能够输出整型变量a、b中最大值的是( )。
A、printf("%d\n",(a>b)?a,b);B、(a>b)? printf("%d",b): printf("%d",a);C、printf("%d",if(a>b)a else b);D、printf("%d\n",(a>b)?a:b);7、设int a = 9,b = 8,c = 7, x = 1; 则执行语句if (a>7) if (b>8) if (c>9)x=2 ;else x = 3;后,x 的值是( )。
A、0B、2C、1D、38、下列语句中定义x为指向int类型变量a的指针,正确的是()。
A、int a, *x=a;B、int a, *x=&a;C、int *x=&a, a;D、int a, x=a;9、以下正确的函数定义形式是()。
二级C语言程序设计模拟试题及答案解析〔9〕(1/2) 程序填空题第1 题程序通过定义学生布局体变量,存储了学生的学号、姓名和三门课的成就。
所有学生数据均以二进制方式输出到文件中。
函数fun 的功能是重写形参filename 所指文件中最后一个学生的数据,即用新的学生数据覆盖该学生本来的数据,其他学生的数据不变。
请在程序的下划线处填入正确的内容,使程序得出正确的成果。
注意:局部源程序给出如下。
!不得增行或删行,也不得更改程序的布局试题程序:#include<>#define N 5typedef struct student{long sno;char name[10];float score[3];}STU;void fun(char*filename,STU n)(FILE*fp;/**********found**********/fp=fopen(______,"rb+");/**********found**********/fseek(______,-(long)sizeof(STU),SEEK_END);/**********found**********/fwrite(&n,sizeof(STU),1,______);fclose(fp);}main()(STUt[N]={{10001,"MaChao",91,92,77},{10002,"CaoKai",75,60,88},{10003,"LiSi",85,70,78},{10004,"Fa ngFang",90,82,87},{10005,"ZhangSan",95,80,88}};STU n={10006,"ZhaoSi",55,70,68},ss[N];inti,j; FILE*fp;fp=fopen("student.dat","wb");fwrite(t,sizeof(STU),N,fp);fclose(fp);fp=fopen("student.dat","rb");fread(ss,sizeof(STU),N,fp);fclose(fp);printf("\nThe original data:\n\n");for(j=0; j <N; j++){printf("\nNo:%ld Name:%-8s Scores:",ss[j]. sno,ss[j].name);for(i=0;i <3;i++)printf("%6.2f"ss[j].score[i]);}fun("student.dat",n);printf("\nThe data after modifing:\n\n");fp=fopen("student.dat","rb");fread(ss,sizeof(STU),N,fp);fclose(fp);for (j=0; j <N;j++){printf("\nNo:%ld Name:%-8s Scores:",ss[j]. sno,ss[j].name);for(i=0; i <3;i++)printf 〔““. ss[j].score[i];printf(:\n");}}下一题(2/2) 程序填空题第2 题给定程序中,函数fun 的功能是:判定形参 a 所指的N×N(规定N 为奇数)的矩阵是否是“幻方〞,假设是,那么函数返回值为1;假设不是,那么函数返回值为0。