《C程序设计语言》模拟试卷二

合集下载

国家二级C语言机试(程序设计题)模拟试卷2(题后含答案及解析)

国家二级C语言机试(程序设计题)模拟试卷2(题后含答案及解析)

国家二级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

《C语言程序设计》模拟试卷2

《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语言程序设计》模拟题

计算机等级《二级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语言程序设计》模拟试卷二

全国计算机等级考试《二级C语言程序设计》模拟试卷二

全国计算机等级考试《二级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参考解析:黑盒测试完全不考虑程序内部的逻辑结构和内部特性,只根据程序的需求和功能规格说明,检查程序的功能是否符合它的功能规格说明。

专升本C语言程序设计模拟试卷C2带答案

专升本C语言程序设计模拟试卷C2带答案

计算机科学与技术专业《基础知识》模拟试卷二(考试时间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)

C语言程序设计模拟试卷(2)

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语言器模考试题和答案

二级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二级复习模拟题3套附答案.docx

C二级复习模拟题3套附答案.docx

二级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

C语言程序设计模拟试题2

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语言程序设计模拟试题及答案解析(最终)

二级C语言程序设计模拟试题及答案解析(最终)

二级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。

二级C语言程序设计模拟试题

二级C语言程序设计模拟试题

二级C语言程序设计模拟试题一、单项选择题。

(每小题1分,共20分)1.1、一个C语言程序是由(B)组成。

[C程序的结构]A) 一个函数B) 一个或若干个函数C) 一个过程D) 一个过程或若干个过程2、C语言用(D)表示逻辑真值。

[数据类型-.逻辑类型]A) true B) T C) 整型值0 D) 非0整型值3、如果程序中有#include "文件名" 则意味着(A)。

[预编译]A) 将"文件名"所指的那个文件的全部内容,在此命令行出现的这一点上,插入源程序B) 指定标准输入输出C) 宏定义一个函数D) 条件编译说明4、为一个结构体变量分配存储空间时,其所占容量为(B)。

[数据类型-构造类型]A) 结构体中第一个成员所占容量B) 结构体中所有成员所占容量C) 结构体中所有成员中所占容量最大者D) 结构体中最后一个成员所占容量5、如果int *px,*py;则可用{temp=*px;*px=*py;*py=temp}实现*px和*py 的交换。

其中temp应该说明为(A)。

[数据类型-指针类型]A) int temp B) int &temp C) int **temp D) int *temp6、于合法的c语言长整型常量是(A)。

[数据类型-常量]A) 12L B) 6887273 C) 5E12 D) (long)68872737、下列程序输出正确的是(A)。

[运算符及表达式-逻辑运算顺序、自加运算]main(){ int a=-1,b=1,c;c=(a++<=0)&&!((b--<=0));1 2printf(“%d,%d,%d”,a,b,c);}A) 0,0,1 B) -1,1,1 C) 0,0,0 D) 0,1,08、已知E的ASCII码是69,则执行printf(“%c”,‟D‟-…8‟+‟5‟);的结果是(c)。

《C语言程序设计》试题2及答案

《C语言程序设计》试题2及答案

二一、填空题1、C语言中普通整型变量的类型说明符为,在内存中占字节,有符号普通整型的数据范围是。

2、C语言中基本的数据类型有:、、。

3、设整型变量n的值为2,执行语句“n+=n-=n*n”后,n的值是。

4、共用体和结构体的定义格式类似,不同点是。

5、有如下输入语句:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);为使变量a的值为1,b的值为3,c的值为2,从键盘输入数据的正确形式应是。

6、有语句:char A[ ]={”I am a student”};该字符串的长度是,A[3]= 。

7、符号”a”和’a’的区别。

8、下列程序的输出结果是。

int ast(int x,int y,int * cp,int * dp){ *cp=x+y; *dp=x-y; }main(){ int a=4,b=3,c,d;ast(a,b,&c,&d);printf("%d,%d/n",c,d); }二、选择题1、以下选项中属于C语言的数据类型是(B )。

A. 复合型B. 双精度型C. 逻辑型D. 集合型2、以下说法中正确的是( C )。

A. C语言程序总是从第一个的函数开始执行B. 在C语言程序中,要调用的函数必须在main()函数中定义C. C语言程序总是从main()函数开始执行D. C语言程序中的main()函数必须放在程序的开始部分3、选出下列标识符中不是合法的标识符的是( D )。

A. hot_doB. cat1C. _priD. 2ab4、下列描述中不正确的是( C )。

A.字符型数组中可能存放字符串。

B.可以对字符型数组进行整体输入、输出。

C.可以对整型数组进行整体输入、输出。

D.不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值。

5、若已定义:int a[9], *p=a;并在以后的语句中未改变p的值,不能表示a[1]地址的表达式为( C )。

《C程序设计》模拟试题二及参考答案

《C程序设计》模拟试题二及参考答案

《 C 程序设计》考试试题( 120 分钟)一、单项选择题(每小题 2 分,共 60 分)1 .自定义标识符中,符合 C语言规定的是 __D___ 。

A)for B)3a C)*a D)_123 A错在哪2 . C语言程序的基本单位是 ______ 。

A)程序行 B)语句 C)函数 D)字符3 . g etche( )函数的功能是 _______ 。

A)从键盘读入一字符串 B)从键盘读入一字符C)从键盘输出一字符串 D)从键盘输出一字符4 .下面有关 for 循环的正确描述是 _______ 。

A)for循环只能用于循环次数已经确定的情况B) for循环是先执行循环语句,后判定表达式C) 在for循环中,不能用break语句跳出循环体D) for循环体语句中,可以包含多条语句,但要用花括号括起来5. 为表示关系100≥x≥10,应使用C语言表达式 __A_____ 。

A)(100>=x)&&(x>=10) B)(100>=x) AND (x>=10)C)(100>=x>=10) D)(100>=x)&(x>=10);6.定义int a; float f; double i; 表达式 15+i*f+ˊAˊ的值是 ______D_ 。

A) float B) int C) char D)double7.下列有关字符数组与字符串的说法中,正确的是 ____ 。

A)字符数组中存放的一定是一个字符串B)所有的字符数组都可以被当作字符串处理C)对存放字符串的字符数组可像一般数组一样对数组中单个元素操作D)一个字符数组可以认为就是一个字符串8 .下面程序要求从键盘上输入值并打印,请选择正确的输入方法 _____B 。

main( ){ int a,b;scanf("x=%d,y=%d",&x,&y);printf("x=%d,y=%d\n",x,y);}A)5,6 B) x=5, y=6 C)5↙6 D)5 69.为避免在嵌套的条件语句 if-else中产生二义性,C语言规定:else子句总是与 ____B___ 配对。

c语言二级模拟试题

c语言二级模拟试题

c语言二级模拟试题# C语言二级模拟试题一、选择题(每题2分,共20分)1. 下列关于C语言的描述,不正确的是:A. C语言是一种高级编程语言B. C语言具有丰富的数据类型C. C语言是面向对象的编程语言D. C语言支持多文件编程2. 在C语言中,以下哪个关键字用于定义一个函数?A. `int`B. `void`C. `return`D. `function`3. 以下哪个运算符不能用于算术运算?A. `+`B. `-`C. `*`D. `&&`4. 在C语言中,以下哪个语句用于实现循环?A. `if`B. `switch`C. `while`D. `for`5. 以下哪个选项是C语言中的合法变量名?A. `2variable`B. `variable-name`C. `case`D. `default`6. 在C语言中,以下哪个函数用于将字符串复制到另一个字符串?A. `strcpy`B. `strcat`C. `strlen`D. `strncat`7. 在C语言中,以下哪个关键字用于定义一个结构体?A. `struct`B. `union`C. `enum`D. `typedef`8. 在C语言中,以下哪个语句用于定义一个枚举类型?A. `typedef`B. `enum`C. `struct`D. `union`9. 在C语言中,以下哪个函数用于计算一个整数的绝对值?A. `abs`B. `fabs`C. `floor`D. `ceil`10. 在C语言中,以下哪个函数用于将一个浮点数转换为字符串?A. `sprintf`B. `strcpy`C. `strcat`D. `atoi`二、填空题(每题2分,共20分)1. 在C语言中,`printf`函数用于_______。

2. 一个C语言程序的执行从`main`函数开始,`main`函数的返回类型通常是_______。

3. 在C语言中,`scanf`函数用于_______。

《二级C语言》模拟考试题+参考答案

《二级C语言》模拟考试题+参考答案

《二级C语言》模拟考试题+参考答案1、设二叉树如下:则前序遍历为()。

A、ABDEGCFHB、DBGEAFHCC、DGEBHFCAD、ABCDEFGH答案:A2、下面概念中,不属于面向对象方法的是()。

A、继承B、类C、对象D、过程调用答案:D3、下列叙述中正确的是()。

A、break语句只能用于switch语句B、break语句必须与switch语句中的case配对使用C、在switch语句中,不一定使用break语句D、在switch语句中,必须使用default答案:C4、以下程序段中,循环次数不超过10的是()。

A、int i=10do{i=i+1}whilei<0B、int i=6do{i-=2}whilei!=1C、int i=int i=5do{i+=1}whilei>0D、int i=1do{i+=2}whilei!=10答案:A5、对图书进行编目时,图书有如下属性:ISBN书号,书名,作者,出版社,出版日期。

能作为关键字的是()。

A、ISBN书号B、书名C、作者,出版社D、出版社,出版日期答案:A6、下列不属于数据库设计任务的是()。

A、设计数据库物理结构B、设计数据库概论结构C、设计数据库逻辑结构D、设计数据库应用结构答案:D7、一个栈的初始状态为空。

现将元素1、2、3、4、5、A、B、C、D、E依次入栈,然后再依次出栈,则元素出的顺序是()。

A、12345ABCDEB、EDCBA54321C、ABCDE12345D、54321EDCBA答案:B8、以下不能用于实型数据的运算符是()。

A、+B、%C、*D、/答案:B9、若要实现total=1+2+3+4+5求和,以下程序段错误的是()。

A、int i=0,total=0whilei<5 { i+=1total+=i}B、int i=1,total=0whilei<=5 { total+=ii+=1}C、int i=0,total=0whilei<=5 { total+=ii+=1}D、int i=1,total=1whilei<5 { total+=ii+=1}答案:D10、有以下定义 inta; long b; double x,y; 则以下选项中正确的表达式是()。

C语言程序设计全真模拟试卷(二级)

C语言程序设计全真模拟试卷(二级)
程序的输出结果是( )。
A. 11.10
B. 1.10
C. 12.10
D. 21.10
【答案】B【解析】函数fun()的功能是用calloc()函数重新分配了1个长度为sizeof(double)的连续空间,并把返回的内存地址赋值给s,之后往新分 配的内存中写入数据。由于函数传递过程中形参指针指向的变化不能影响到实参指针的指向,所以函数fun()并不能改变s的指 向,*s与a[0]等价,格式输出的结果为 1.10,注意整数1前有一个空格,因为格式输出%5.2f要求输出的浮点数宽度为5,答 案选择B选项。
6、以下叙述正确的是( )。
A. 计算机只接收由0和1代码组成的二进制指令或数据
B. 计算机只接收由0和1代码组成的十进制指令或数据
C. 计算机可直接接收并运行C源程序
D. 计算机可直接接收并运行任意高级语言编写的源程序
【答案】
A
【解析】
二进制数中只有两个字符0和1,表示具有两个不同稳定状态的元器件。例如,电路中有无电流,有电流用1表示,无电流用0
2、以下叙述中正确的是( )。
A. 字符串常量"str1"的类型是:字符串数据类型 B. 有定义语句:char str1[] = "str1";,数组str1将包含4个元素 C. 语句 char str1[]={'s', 't', 'r', '1', '\0'}; 中用赋初值方式来定义字符串,其中'\0'是必须的。 D. 字符数组的每个元素可存放一个字符,并且最后一个元素必须是'\0'字符
3、有以下程序: #include <stdio.h> int *f(int *s,int *t) { if(*s < *t)s=t; return s; } main() { int i=3,j=5,*p=&i,*q=&j,*r; r=f(p,q); printf("%d,%d,%d,%d,%d\n",i,j,*p,*q,*r); }

计算机二级《C语言程序设计》模拟试题

计算机二级《C语言程序设计》模拟试题
【答案】
if(a[i].s<a[j].s) { tmp=a[j]; a[j]=a[i]; a[i]=tmp;
} 【解析】对 N 个数迚行排序的算法很多,其中最简单的排序算法是冒泡算法。利用双层 for 循环嵌套和一个 if 判断语 句来实现,外层循环用来控制需比较的轮数,内层循环用来控制两两比较。
【答案】A
【解析】对于满二叉树,第 n 层的叶子结点的数目等于 2(n-1),当树深度为 n 时,共有 2n-1 个结点。因此深度为 5 的完全二叉树的结点数在 2(5-1)-1+1~25-1 之间,即 16~31 之间。答案选择 A 选项。
模拟题(2)
1.有以下程序
#include <stdio.h> #include <stdlib.h> void fun(int **s, int x[2][3]) {
2.程序流程图中带有箭头的线段表示的是()。
A.图元关系
B.数据流
C.控制流
D.调用关系
【答案】C
【解析】在程序流程图中:①标有名字的带箭头线段表示控制流;②矩形表示加工步骤;③菱形表示逻辑条件。答案 选择 C 选项。
3.深度为 5 的完全二叉树的结点数丌可能是()。
A.15
B.16
C.17
D.18
2.以下叙述中正确的是( )。
A.在 C必须位于 C 源程序的起始位置
C.#include <stdio.h>必须放在 C 程序的开头
D.C 语言的预处理丌能实现宏定义和条件编译的功能
【答案】A
【解析】 “编译预处理”就是在 C 编译程序对 C 源程序迚行编译前,由编译预处理程序对这些编译预处理命令行迚 行处理的过程。A 项正确,在 C 语言中,凡是以“#”号开头的行,都称为“编译预处理”命令行。B 项错误,预处理 命令行可以出现在程序的任何一行的开始部位,其作用一直持续到源文件的末尾;C 项错误,#include <stdio.h>可以 出现在程序的任意一行的开始部位;D 项错误,预处理可以实现宏定义、条件编译和文件包含。答案选择 A 选项。

《C语言程序设计》试卷2 答案

《C语言程序设计》试卷2 答案
5、在C语言中逻辑“真”等价于以下( A )
A、整数1B、大于0的数C、小于0的数 D、不等于0的数
C语言编译系统在表示逻辑运算结果时,以数值1代表“真”,以0代表“假”,但在判断一个量是否为“真”时,以0代表“假”,以非0代表“真”。即将一个非零数值认作为“真”。逻辑值只有2个,1和0,真和假
6、若a为整型变量,且有以下语句(D)十进制数表示范围为-32768-32767(对于无符号整数范围为0-65535).无符号八进制整数表示范围为0-0177777.无符号十六进制整数表示范围为0x0-0xffff.长整型数的取值范围一般是整型数的两倍长(32位),如对于16位计算机系统,十进制长整型的取值范围为-2147483648-2147483647.无论是十进制整数,还是八进制整数还是十六进制整数,均有长整型数.长整型数的表示方法是在原来的整数后面加一个后缀"L"(或小写字母"l").例如,489L,0756L,0XE46L分别表示十进制,八进制,十六进制长整型数..,注意:%o和%x输出时,没有负数形式如十进制-1输出%d%o%x形式值为-1,177777,ffff
************************************************
************************************************
班级:
************************************************
************************************
学号:
************************************************

c二级程序设计试题

c二级程序设计试题

c二级程序设计试题C语言作为一门广泛应用的编程语言,其程序设计能力是计算机专业学生必须掌握的技能之一。

以下是一份模拟的C语言二级程序设计试题,供同学们练习和参考。

C二级程序设计试题一、选择题(每题2分,共20分)1. 下列哪个选项是C语言的关键字?A. IntegerB. intC. StringD. float2. 在C语言中,哪个函数用于将整数转换为字符串?A. `atoi()`B. `sprintf()`C. `itoa()`D. `printf()`3. 下列哪个是正确的C语言数组声明语句?A. `int array[] = {1, 2, 3};`B. `int array[3] = {1, 2, 3};`C. `int array[3] = {1, 2};`D. 以上都是4. C语言中,哪个运算符用于计算两个数的乘方?A. `*`B. ``C. `^`D. 没有这样的运算符5. 在C语言中,哪个函数用于获取当前时间?A. `time()`B. `date()`C. `getCurrentTime()`D. `getTime()`6. 下列哪个是C语言的控制语句?A. `if`B. `switch`C. `for`D. 以上都是7. 在C语言中,哪个函数用于动态内存分配?A. `malloc()`B. `calloc()`C. `free()`D. `realloc()`8. 下列哪个是C语言的输入输出库?A. `<stdio.h>`B. `<stdlib.h>`C. `<string.h>`D. `<ctype.h>`9. 在C语言中,哪个关键字用于定义函数?A. `function`B. `func`C. `void`D. `return`10. 下列哪个是C语言的字符串处理库?A. `<string.h>`B. `<math.h>`C. `<stdio.h>`D. `<ctype.h>`二、简答题(每题10分,共20分)1. 请简述C语言中指针的概念及其用途。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C.该结构体变量中占用最大存储空间的成员所需存储空间
D.该结构体变量中所有成员所需存储空间的总和
26.以下关于typedef的叙述不正确的是_____ ____。
A.用typedef可以定义各种类型名,但不能用来定义变量
B.用typedef可以增加新类型
C.用typedef只是将已存在的类型用一个新的名字来代表
C.可以在赋值语句中通过赋值运算符"="对字符数组整体赋值
D.不可以用关系运算符对字符数组中的字符串进行比较
18.以下合法的数组定义是____ _______。
A.int a[] = "string";
B.int a[5] = {0, 1, 2, 3, 4, 5};
C.char a = "string";
24.在C语言程序中,下列叙述正确的是___ ______。
A.实参可以是常量、变量或表达式
B.实参可以是任意类型
C.形参可以是常量、实参或表达式
D.形参与队友的实参类型要求可以不一致
25.在定义一个结构体变量时系统分配给它的存储空间是___ _。
A.该结构体变量中第一个成员所需存储空间
B.该结构体变量中最后一个成员所需存储空间
D.使用typedef便于程序的调用
27.在声明一个结构体类型时系统分配给它的存储空间是___ _____。
A.该结构体变量中第一个成员所需存储空间
B.该结构体变量中最后一个成员所需存储空间
C.该结构体变量中所有成员所需存储空间的总和
D.结构体类型本身并不占用存储空间,即系统并不给结构体类型分配存储空间
D.char a[] = {0, 1, 2, 3, 4, 5};
19.在C语言程序中,下列叙述正确的是___ ________。
A.函数的定义可以嵌套,但函数的调用不可以嵌套
B.函数的定义不可以嵌套,但函数的调用可以嵌套
C.函数的定义和调用都可以嵌套
D.函数的定义和调用均不可以嵌套
20.在C语言程序中,简单变量做实参时,它和对应形参之间的数据传递方式是__________。
C.scanf("%f%3o", &a, &b);
D.scanf("%f%f", &a, &b);
10.if后面的表达式之值__________。
A.只能是0或1
B.只能是正整数或负整数
C.只能是整数或字符型数据
D.可以是任何类型的数据
11.为了避免嵌套的if-else语句的二义性,C语言规定else总是与__ ___组成配对关系。
A.缩排位置相同的if
B.在其之前未配对的if
C.在其直接最近的未配对的if
D.同一行上的if
12.选择出合法的if语句(设int x, a, b, c;)____ _____。
A.if(a = b0 x++;
B.if (a =< b) x++;
C.if(a <> b) x++;
D.if (a=>b) x++;
13.语句while(!e);中的条件!e等价于____ _______。
A.e == 0
B.e!=1
C.e!=0
D.~e
14.C语言中while和do-while循环的主要区别是____ _______。
A.do-while的循环体至少无条件执行一次
B.while的循环控制条件比do-while的循环控制条件严格
main() {
int a = 3, b = 5;
if (a > b)
printf("a大于b\n")
else
printf("a不大于b\n");
}
3.写出以下程序的运行结果(假定程序已包含正确的头文件)。
main() {
int n = 1, sum = 0;
while (n < 5) {
sum = sum + n;
printf("%d\n", s);
}
四、程序设计题
1.编写一个交换两个int型数据的函数swap,在main函数中从标准输入读取两个整数到两个整型变量中,输出调用swap函数之前和之后的结果。
2.定义一个结构体类型Rect用于表示矩形,该类型有两个double类型的成员width和height,定义一个计算矩形的面积的自定义函数Area,参数为结构体类型Rect,在main函数中定义并初始化一个结构体变量r,然后调用Area函数,并输出计算结果
A.int *p = a;
B.int *p = *a;
C.int p = &a;
D.int *p = &a;
23.C语言中规定函数的返回值的类型是由___ ______。
A.return语句中的表达式类型所决定
B.调用该函数是的主调用函数所决定
C.调用该函数时系统临时决定
D.在定义该函数时所指定的函数类型所决定
C.do-while允许从外部转到循环体内
D.do-while的循环体不能是复合语句
15.以下程序段______ _____。
int x = -1;
do { x = x * x} while (x != 0);
A.是死循环
B.循环执行二次
C.循环执行一次
D.有语法错误
16.以下关于数组的描述正确的是__________。
B.int A[3, 4];
C.int a[][3];
D.int a[10];
30.在定义inta[3][6];后,第10个元素是___。
A.a[2][4]
B.a[1][3]
C.a[3][空题
1.任何C语句必须以____________结束。
2.C编译程序的功能是____________。
28.fopen()函数的打开文件模式"r"和"w"的差别是___ _____。
A."r"可向文件写,"w"不可向文件写
B."r"不可向文件写,"w"可向文件写
C."r"不可由文件读, "w"可由文件读
D.文件不存在时,"r"建立新文件,"w"出错
29.以下正确的定义语句是_______。
A.int A['a'];
8.程序的三种基本控制结构分别是____________、____________和____________。
9.____________语句强行结束循环,转向循环语句下面的语句。____________语句结束本次循环体的执行。
10.常用的一维数组排序方法有冒泡排序、直接插入排序和____________。
A.地址传递
B.单向值传递
C.由用户指定参数传递方式
D.由实参传给形参,再由形参传递给实参
21.在一个源文件中定义的外部变量的作用域为___ ______。
A.本文件的全部范围
B.本程序的全部范围
C.本函数的全部范围
D.从定义该变量的位置开始至文件结束
22.已知变量a已定义为int型变量,以下定义并初始化指针变量p的语句中正确的是___ _____。
14.C语言使用关键字____________定义结构体类型。
15.计算字符串长度的库函数是____________。
三、程序分析题
1.写出以下程序的运行结果(假定程序已包含正确的头文件)。
main() {
int n = 10;
n++;
n += 5;
printf("%d\n", n);
}
2.写出以下程序的运行结果(假定程序已包含正确的头文件)。
C.当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf(%4.2f", &f)
D.当输入数据时,必须指定变量的地址,如scanf("%f", &f)
8.若a, b, c均定义为整型,要给它们输入数据,正确的输入语句是____ ________。
A.read(a, b, c);
B.scanf("%d%d%d", a, b, c);
A.+a
B.*p
C._DAY
D.next day
6.设c是字符变量,则以下表达式正确的是___ _______。
A.c=666
B.c='c'
C.c="c"
D.c="abcd"
7.以下说法正确的是_____ _______。
A.输入项可以为一个实型常量,如scanf("%f", 3.5)
B.只有格式控制没有输入项也能进行正确输入,如scanf("%d")
3.一个C程序是由____ ________。
A.一个主程序和若干个子程序构成
B.一个或多个函数构成
C.若干过程组成
D.若干子程序组成
4.以下字符串为标识符的是___ _________。
A._MY
B.2_2222
C.short
D.LINE 5
5.下列符号可以作为变量名的是___ ________。
main() {
int a = 3; *pa = &a;
*pa = 10;
printf("%d\n", a);
}
6.写出以下程序的运行结果(假定程序已包含正确的头文件)。
相关文档
最新文档