C++模拟机考
2022年四川省遂宁市全国计算机等级考试C语言程序设计模拟考试(含答案)

2022年四川省遂宁市全国计算机等级考试C语言程序设计模拟考试(含答案) 学校:________ 班级:________ 姓名:________ 考号:________一、2.填空题(10题)1. 若有以下程序:int f(int x,int y){ return (y-x)*x;}main(){ int a=3,b=4,c=5,d;d=f(f(3,4),f(3,5));printf("%d\n",d);}执行后的输出结果是【】。
2. 以下程序的运行结果是【】。
#include<stdio.h>long fib(int g){ switch(g){ case 0:return 0;case 1:case 2:return 1; }return(fib(g-1)+fib(g-2)); }main(){ long k;k=fib(5);printf("k=%5ld\n",k);}3. 【】是从二维表列的方向进行的运算。
4. 在面向对象方法中,信息隐蔽是通过对象的______性来实现的。
5. 在程序设计阶段应该采取______和逐步求精的方法,把一个模块的功能逐步分解,细化为一系列具体的步骤,继而用某种程序设计语言写成程序。
6. 一个模块直接访问另一个模块的内容,称为【】藕合。
7. 若有程序:main(){ int i,j;scanf('i=%d,j=%d";&i,&j);printf("i=%d,j=%d\n",i,j);}要求给i赋10,给j赋20,则应该从键盘输入上【】。
8. 下列程序的输出结果是______。
long fun5(int n)( long s;if((n==l)‖(n==2))s=2;elses=n+fun5(n-1);return(s);}main(){ long x;x=fun5(4);printf(%1d\n",x);9. 设x和y均为int型变量,且x=1,y=2,则表达式2.0+x/y的值为_______。
c语言模拟考试试题及答案

c语言模拟考试试题及答案C语言模拟考试试题及答案一、选择题(每题2分,共20分)1. 在C语言中,以下哪个是合法的变量名?A. 2variableB. variable-nameC. variable_nameD. variable#name答案:B2. 下列哪个选项是C语言中的关键字?A. charB. variableC. ifD. string答案:C3. C语言中,哪个运算符用于计算两个数的乘积?A. +B. -C. *D. /答案:C4. 在C语言中,以下哪个语句用于定义一个整型变量?A. int var;B. float var;C. double var;D. char var;答案:A5. 下列哪个选项是C语言中的控制结构?A. switch-caseB. if-elseC. for-loopD. All of the above答案:D6. 在C语言中,哪个函数用于计算两个数的和?A. pow()B. sqrt()C. sum()D. None of the above答案:D(注:C语言标准库中没有sum()函数)7. 以下哪个选项是C语言中数组的正确声明方式?A. int array[10] = {1, 2, 3};B. int [10] array = {1, 2, 3};C. Both A and BD. None of the above答案:C8. 在C语言中,哪个函数用于将整数转换为字符串?A. itoa()B. atoi()C. printf()D. sprintf()答案:A9. 下列哪个选项是C语言中正确的函数定义?A. int function(int a, int b) { ... }B. int function(int a; int b) { ... }C. int function(int a, int b) { ... }D. int function(int a, b) { ... }答案:C10. 在C语言中,哪个关键字用于定义一个函数?A. functionB. defC. methodD. void答案:D二、填空题(每空2分,共20分)11. 在C语言中,使用____关键字可以定义一个函数。
国家二级C语言机试(操作题)模拟试卷284(题后含答案及解析)

国家二级C语言机试(操作题)模拟试卷284(题后含答案及解析) 全部题型 2. 程序填空题 3. 程序修改题 4. 程序设计题程序填空题1.给定程序中,函数fun的功能是:将形参给定的字符串、整数、浮点数写到文本文件中,再用字符方式从此文本文件中逐个读入并显示在终端屏幕上。
请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!试题程序:#inclucte<stdio.h>void fun(char*s,int a,double f){/*********found*********/【1】fp;char ch;fp=fopen(“filel.txt”,”w”);fprintf(fp,”%s%d%f\n”,s,a,f);fclose(fp);fp=fopen(“filel.txt”,”r”);printf(“\nThe result:\n\n”);ch=fgetc(fp);/*********found*********/while(!feof(【2】)){/*********found*********/putchar(【3】);ch=fgetc(fp);) putchar(‘\n’);fclose(fP);}main( ){ char a[10]=“Hello!”;int b=12345;double c=98.76;fun(a,b,c);}正确答案:(1)FILE*(2)fp(3)ch解析:填空1:由语句fopen(“filel.txt”,”r”)可知,fp应该是文件类型指针,因此本空应该填写FILE*。
填空2:feof函数只能对文件类型数据进行操作,因此本空应填写fp。
填空3:putchar( )代表输入一个字符,从ch=fgetc(fp)可以看出本题应该填写ch。
程序修改题2.下列给定程序中,函数fun的功能是:从P所指字符串中找出ASCII 码值最大的字符,将其放在第一个位置上,并将该字符前的原字符向后顺序移动。
计算机语言C模拟考试及答案

计算机语言C模拟考试总分:150分考试时间:120分钟注意事项:➢题目包括五大部分, 单项选择题,判断题,填空题,程序分析题,编程题,请按要求在规定时间内作答。
➢考试中途不能无端离场,否则视为放弃。
考试过程中如遇问题请及时向监考老师反馈。
一、单项选择题(每小题2 分,共 40分)1、有以下程序main(){char a1='m', a2='m';printf("%c\n", (a1, a2) );}以下叙述中正确的是________。
A、程序输出大写字母MB、程序输出小写字母mC、格式说明符不足,编译出错D、程序运行时产生出错信息2、下列数据中,不合法的c语言实型数据的是________。
A、0.123B、123e3C、2.1e3.5D、789.03、表达式10!=12的值是________。
A、0B、1C、trueD、非零值4、下述语句中,_____中的if语句语法是错误的。
( )A、if(x>y);B、if(x==y)x+=y;C、if(x!=y)seanf("%d",&x)else scanf("%d",&y);D、if(x<y)x++;y++;5、以下for语句构成的循环执行了______次。
#include <stdio.h>#define N 2#define M N+1#define NUM (M+1)*M/2main(){int i,n=0;for(i=1;i<=NUM;i++){N++;printf("%d",n);}printf("\n");}A、5B、6C、8D、96、下列数组说明中,正确的是________。
A、int array[][4];B、int array[][];C、int array[][][5];D、int array[3][];7、下列选项中不会引起二义性的宏定义是________。
国家二级C语言(公共基础知识)机试模拟试卷20(题后含答案及解析)

国家二级C语言(公共基础知识)机试模拟试卷20(题后含答案及解析)题型有:1. 选择题选择题1.数据模型的三个要素是( )。
A.外模式、概念模式、内模式B.实体完整性、参照完整性、用户自定义完整性C.数据增加、数据修改、数据查询D.数据结构、数据操作、数据约束正确答案:D解析:数据模型是数据特征的抽象,所描述的内容有三个部分:数据结构、数据操作、数据约束。
数据结构主要描述数据的类型、内容、性质以及数据间的联系等。
数据操作主要描述在相应数据结构上的操作类型与操作方式。
数据约束主要描述数据结构内数据间的语法、语义联系,它们之间的制约与依存关系,以及数据动态变化的规则,以保证数据的正确、有效与相容。
知识模块:公共基础知识2.在数据库系统中,数据模型包括概念模型、逻辑模型和( )。
A.物理模型B.空间模型C.时间模型D.谓词模型正确答案:A解析:数据模型按照不同的应用层次分为3种类型:概念数据模型、逻辑数据模型、物理数据模型。
概念数据模型简称概念模型,它是一种面向客观世界、面向用户的模型;它与具体的数据库管理系统无关,与具体的计算机平台无关。
较为有名的概念数据模型有实体联系模型(E-R模型)、面向对象模型及谓词模型。
逻辑数据模型又称逻辑模型,它是一种面向数据库系统的模型,该模型着重于在数据库系统一级的实现。
逻辑数据模型有层次模型、网状模型、关系模型和面向对象模型。
物理数据模型又称物理模型,它是一种面向计算机物理表示的模型,此模型给出了数据模型在计算机上物理结构的表示。
知识模块:公共基础知识3.建立表示学生选修课程活动的实体联系模型,其中的丽个实体分别是( )。
A.学生和学号B.课程和课程号C.课程和成绩D.学生和课程正确答案:D解析:实体是概念世界中的基本单位,是客观存在并可以相互区别的事物。
要建立表示学生选修课程活动的实体联系模型,能互相区别并可以联系起来的实体是学生和课程。
知识模块:公共基础知识4.每所学校都有一名校长,而每个校长只在一所学校任职,则实体学校和实体校长之间的联系是( )。
c模拟考试试题及答案

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语言中,一个基本的数据类型可以是______、______或______。
2023年福建省三明市全国计算机等级考试C语言程序设计模拟考试(含答案)

2023年福建省三明市全国计算机等级考试C语言程序设计模拟考试(含答案) 学校:________ 班级:________ 姓名:________ 考号:________一、2.填空题(10题)1. 下列程序的输出结果是______。
main(){ int i=0,a=0;while(i<20){ for(;;){ if((i%10)==0)break;else i--;}i+=11;a+=i;}printf("%d\n",A) ;}2. 类是一个支持集成的抽象数据类型,而对象是类的【】。
3. 对有14个结点的完全二叉树的结点以从上到下、从左到右的顺序进行编号后,序号最小的叶结点的序号【】。
4. 数据的逻辑结构有线性结构和______两大类。
5. 下面rotate函数的功能是:将n行n列的矩阵A转置未AT,例如:请填空#define N 4void rotate(int a[][]){ int i,j,t;for(i=0;i<N;i++)for(j=0;【】;j++){ t=a[i][j];【】; a[j][i]=t; }}6. 有以下程序main(){ int n=0,m=1,x=2;if(!n)x-=1;if(m)x-=2;if(x)x-=3;printf("%d\n",x);}执行后输出结果是【】。
7. 在数据库理论中,数据库总体逻辑结构的改变,如修改数据模式、增加新的数据类型、改变数据间联系等,不需要修改相应的应用程序,称为【】。
8.以下程序的功能是:利用指针向三个整型变量,并通过指针运算找出三个数中最大值,输出到屏幕上。
请填空main(){int x,y,z,max,*px,*py,*pz,*pmax;scanf("%d%d%d",&x,&y,&z);px=&x;py=&y;pz=&z;pmax=&max;if(*pmax<*py)*pmax=*py;if(*pmax<*pz)*pmax二*pz;printf("max=%d\n",max);}9. 下述函数统计—个字符串中的单词个数,单词是指处在空格之间的字符序列,请填空。
C语言上机考试模拟演练

NCRE--计算机等级考试考前模拟演练二级C语言和三级C语言上机考试使用VC++6.0开发环境,在新的开发环境下,考生做题的时候可能会遇到的问题相对增加。
注意:本画面是真实的上机考试环境截图,不是模拟系统。
考生应单击“开始登陆”按钮,注意:有的考场监考老师已经单击这个按钮了,直接出现下面的画面:在“准考证号”输入框中正确输入你自己的准考证号码,输入正确无误后单击“考号验证”按钮,出现如下的画面:认真核对你的准考证、身份证和姓名是否正确,如果不正确,单击“否”,重新输入,或者举手问监考老师。
如果正确,单击“是”,出现下面的画面:单击“抽取试题”,出现如下画面:单击“开始答题并计时”,出现如下画面:这个时候系统开始计时。
在系统中,上面有一个工具栏,单击“隐藏窗口(或者显示窗口)”可以隐藏或者显示下面的题目窗口。
题目窗口中的有三个按钮,分别单击这些按钮,可以查看相关的题目要求。
单击题目窗口中的“答题”菜单中的“启动 Microsoft Visual C++”菜单,可以直接启动VC,如下图所示:启动后的VC6开发工具如下图:单击“文件”菜单,选择“打开”菜单,如下图:此时会出现一个打开菜单,如下图所示:这时会打开考生文件夹,在这个打开对话框中会出现3个文件,分别是blank1.c(程序填空题)、modi1.c(程序修改题)和prog1.c(程序编写题)。
如果没有打开考试文件夹,则用鼠标单击“查找范围”后面的编辑框,选择考生文件夹。
考生文件夹的具体路径写在考试系统题目界面的“考生文件夹”下方,在我的图像上就是“k:\exam\24010001”,每个考生的考生文件夹均不相同。
我们在做题的时候,选择相应的文件,例如要做程序填空题,就在打开文件对话框中选择blank1.c文件,然后单击“打开”按钮,出现如下图所示的界面:在做程序填空题的时候,将填写的答案填写到类似于___1___的地方,填写完毕后,必须将___1___删除。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
十六周上机作业——模拟机考
说明:首先在本地盘建立一个以自己的学号命名的文件夹,用于保存上交的考试文件,最后将该学号文件夹拷贝至考试盘。
一、改错题(50分)
以下程序定义了一个“钱”类,并定义了对象对其成员函数进行了测试。
【说明】1、程序中含有语法错误和少量逻辑错误,请调试修改并以文件名f1.cpp 保存修改后的程序。
2、不允许改变程序的结构或增删整条语句。
【源程序】
#include<iostream>
using namespace std;
class Money{
int yuan,fen; //元、分,1yuan=100fen
public:
Money(double=0,double=0);
void SetMoney(double a,double b){yuan=a+b/100;fen=b%100;} //修改参数处理进位void print(); //打印参数
void GetMoney(double a,double b){a=yuan;b=fen;} //获取参数
Money operator++(int); //后置++,实现fen+1
operator float();
}
Money::Money(double a=0,double b=0){ fen=b%100; yuan=a+b/100; } //处理分的进位void print(){ cout<<yuan<<'.'<<fen; }
void Money::operator++(){ //带进位处理
Money t=*this;
fen=fen++;
fen=fen%100; yuan+=fen/100;
return *this;
}
Money::operator float(){return (yuan+(double)fen/100);}
int main(){
Money m,m1;
double a,b;
m.GetMoney(a,b);
cout<<a<<'.'<<b;cout<<endl;
m.SetMoney(23,199);
m.print(); //应输出24.99
m1=m++;
m1.print(); //应输出24.99
double t=m;
cout<<t<<endl; //应输出25
return 0;
}
二、编程题(50分)
将本身是6的倍数、各位数字之和是7的倍数的三位数写入文本文件out.txt,每行输出10个数据。
【要求】求整数各位数字之和用函数完成。
将源程序文件f2.cpp和out.txt一起放入学号文件夹。