计算机二级c语言程序题中的******found是什么意思,国家计算机二级c语言考试题库...-程序员宅基地

技术标签: 计算机二级c语言程序题中的******found是什么意思  

在国家计算机二级的考试题库中,有哪些C语言的题目呢?下面是小编给大家整理的及答案,供大家参阅!

一、选择题

1.若有以下定义和语句:

char s [10]="abcd!",*s2="\nl23\\";

Drintf***"%d%d\n",strlen***sl***,strlen***s2******;

则输出结果是***  ***。

A.5 5

B.10 5

C.10 7

D.5 8

2.有以下程序:

#include

#define N 8

void fun***int*x,int i***

{*x=****x+i***;***

main***  ***

{ int a[N]={1,2,3,4,5,6,7,8},i;

fun***a,2***;

for***i=0;i{printf***"Ha",a[i]***;}

printf***"\n"***;

***

程序运行后的输出结果是***  ***。

A.1313

B.2234

C.3234

D.1234

3.有以下程序:

#include

int f***int t[],int n***;

main***  ***

{int a[4]={1,2,3,4},s;

s=f***a,4***;printf***"%d\n",s***;

int f***int t[],int n***

{if***n>0***return t[n-1]+f***t,n-1***;

else return 0;

***

程序运行后的输出结果是***  ***。

A.4

B.10

C.14

D.6

4.有以下程序:

#include

int fun***  ***

{static int x=1;

X*=2;return X;

main***  ***

{int i,S=1;

for***i=1;i<=2;i++***s=fun***  ***;

printf{¨%d\n",s***;

***

程序运行后的输出结果是***  ***。

A.0

B.1

C.4

D.8

5.有以下程序:

#include

#define SUB***a******a***-***a***

main***  ***

{int a=2,b=3,c=5,d;

d=SUB***a+b****C;

printf***"%d\n",d***;

***

程序运行后的输出结果是***  ***。

A.0

B.-l2

C.-20

D.10

6.设有定义:

struet complex

{int real,unreal;***datal={1,8},data2;

则以下赋值语句中错误的是***  ***。

A.data2=datal;

B.data2={2,6};

C.data2.real=datal.real;

D.data2.real=datal.unreal;

7.有以下程序:

#include

#include

struct A

{int a;char b[10];double C;***;

void f***struct A t***;

main***  ***

{struct A a={"1001,"ZhangDa",l098,0};

f***a***;printf***"%d,%S,%6.1f\n",a.a,a.b,a.c***;}

void f***struct A t***

{t.a=1002;strcpy***t.b,"ChangRon9"***;t.c=1202.0;}

程序运行后的输出结果是***  ***。

A.1001,ZhangDa,1098.0

B.1002,ChangRong,1202.0

C.1001,ChangRong,1098.0

D.1002,ZhangDa,1202.0

8.有以下定义和语句:

struct workers

{int num;char name[20];char C;

struct

***int day;int month;int year;***S;

};

struct workers w,*pw;

pw=&w;

能给w中year成员赋1980的语句是***  ***。

A.*pw.year=1980;

B.w.year=1980;

C.pw->year=1980

D.w.S.year=1980;

9.有以下程序:

#include

main***  ***

{int a=2,b=2,C=2;

print{***"%d\n",a/b&c***;

}

程序运行后的输出结果是***  ***。

A.0

B.1

C.2

D.3

10.有以下程序:

#include

main***  ***

{FILE*fp;char str[10];

fp=fopen***"myfile,dat",""***;

{puts***"abe",ip***;fclose***fp***;

fp=fopen***"myfile.dat","a*"***;

fprintf***fp,"%d",28***;

rewind***fp***;

fscanf***fp,"%S",str***;puts***str***;

fclose***fp***;

}

程序运行后的输出结果是***  ***。

A.abc

B.28c

C.abc28

D.内类型不一致而出错

二、程序改错题

给定程序中,函数proc***  ***的功能是:使数组中的元素的值缩小5倍。

请修改程序中的错误,使它能得出正确的结果。

注意:不要改动main***  ***函数,不得增行或删行,也不得更改程序的结构。

试题程序:

#include

#include

#include

float m[lO];

//****found****

int proc***void***

{

int j;

printf***"In subfunc after calling\n"***;

for***j=0;j<10;j++***

{

//****found****

printf***"%f",m[j]%5***;

}

}

void main***  ***

{

int i;

printf***"In main before calling\n"***;

for***i=0;i<10;i++***

{

m[i]=i+20;

printf***"%f",m[i]***;

}

proc***  ***;

printf***"\nln main after calling\n"***;

for***i=0;i<10;i++***

printf***"%f",m[i]/5***;

}

三、程序设计题  学生的记录由学号和成绩组成,M名学生的数据已在主函数中放入结构体数组stu中,请编写函数proc***  ***,其功能是:按分数的高低排列学生的记录,高分在前。

注意:部分源程序给出如下。

请勿改动main***  ***函数和其他函数中的任何内容,仅在函数proc***  ***的花括号中填入所编写的若干语句。

试题程序:

#include

#define M l6

typedef struct

{

char num[l0];

int S;

}

STREC:

void proc***STREC a[]***

{

int i,j;

STREC t;

for***i=1;i排序*/

for***j=0;jif***a[j].s的记录,高分在前*/

{t=a[j];a[j]=a[j+1];a[j+1]=t;***

}

void main***  ***

{

STREC stu[M]={ {"GA005",85***,{"GA003",76},

{"GA002",69},{"GA004",85***,{"GA001",91***,

{"GA007",72***,{"GA008",64***,{"GA006",87***,

{"GA015",85***,{"GA013",91***,{"GA012",64***,

{¨GA014",91***,{"GA011",66***,{"GA017",64},

{"GA018",64***,{"GA016",72}};

int i;

proc***stu***;

printf***"The data after sorted:\n"***;

for***i=0;i{

if***i%4= =0***

//每行输出4个学生记录

printf***"n"***;

printf***"%s%4d",stu[i],num,stu[i].s***;

}

printf***"\n"***;

}

答案

一、选择题

1.A。(解析)\n和\\分别为转义字符,各占据一个字符的位置。

2.C。(解析)本题考查了宏定义与局部变量的区别,宏定义的作用范围为整个程序,而变量的作用范围只在定义它的函数体的部分,因此,主函数中定义的i与fun***  ***中的i互不相干。

3.B。(解析)本题考查了函数的调用,并且使用了嵌套。

4.C。(解析)本题考查了static的用法。当static用于局部变量中,成为静态局部变量。静态局部变量有两个用法,记忆功能和全局生存期。当static用于全局变量,主要作用是限制此全局变量被其他的文件调用。当static用于类中的成员,表示这个成员是属于这个类,但是不属于类中任意特定对象。所以本题答案为C。

5.C。(解析)本题调用参数,并考查了优先级。SUB***a+b****C调用后可写成***a书b***-***a+b****C,结果为5-25=-20。

6.B。(解析)B中的赋值方式仅限于在结构说明时,对每个变量成员初始化。在程序中对结构体成员赋值,或采用选项A中的整体赋值方式,或采用选项C、D中对结构成员依次赋值。

7.A。(解析)将结构变量作为形参,通过函数间形参与实参相结合的方式将整个结构传递给函数,这种传递方式是值传递。在被调用函数中,对结构形参变量值进行的任何修改都不会影啊到调凋函数中的结构变量。

8.D。(解析)结构workers中的成员s是一个嵌套的结构类型定义,因此在给year赋值时,要用“.”运算在深入一层访问到最基本的成员year,只有D项反映出了这一点。

9.A。(解析)根据C语言运算符的优先级与结合性,先计算a/b,结果为l,再将a/b的结果与C做按位与运算,即l与2做按位与运算,其结果为0。 . .

10.C。(解析)本题考查文件的操作,首先打开文件,进行写操作,把“abc”写入“myfile”文件,再打开“myfile.data"文件,输入28,在键盘上接收字符,输出并关闭文件。本题结果为abc28。

二、程序改错题

***1***错误:int proc***void***

正确:void proc***void***

***2***错误:printf***"%f",m[j]%5***;

正确:pfintf***"%f",m[j]/5***;

(解析)由主函数中的函数调用可知,函数proe***  ***没有返回值。因此“int proc***void***”应改为“void proc***void***”。题目中要求使数组中元素的值缩小到l/5,而不是对5取余。因此,“printf***"%f",m[j]%5***;”应改为“printf***”%f”,mEjl/5***;”。

三、程序设计题

void proc***STREC a[]***

{

int i,j;

STREC t;

for***i=1;ifor***j=0;jif***a[j].s{t=a[j];a[j]=a[j+1];a[j+1]=t;}

}

(解析)要按分数的高低排列学生的记录,可以使用冒泡排序法。将每一个学生的成绩与其他学生的成绩相比较,对不符合要求的记录交换位置。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_36194102/article/details/117113824

智能推荐

c# 调用c++ lib静态库_c#调用lib-程序员宅基地

文章浏览阅读2w次,点赞7次,收藏51次。四个步骤1.创建C++ Win32项目动态库dll 2.在Win32项目动态库中添加 外部依赖项 lib头文件和lib库3.导出C接口4.c#调用c++动态库开始你的表演...①创建一个空白的解决方案,在解决方案中添加 Visual C++ , Win32 项目空白解决方案的创建:添加Visual C++ , Win32 项目这......_c#调用lib

deepin/ubuntu安装苹方字体-程序员宅基地

文章浏览阅读4.6k次。苹方字体是苹果系统上的黑体,挺好看的。注重颜值的网站都会使用,例如知乎:font-family: -apple-system, BlinkMacSystemFont, Helvetica Neue, PingFang SC, Microsoft YaHei, Source Han Sans SC, Noto Sans CJK SC, W..._ubuntu pingfang

html表单常见操作汇总_html表单的处理程序有那些-程序员宅基地

文章浏览阅读159次。表单表单概述表单标签表单域按钮控件demo表单标签表单标签基本语法结构<form action="处理数据程序的url地址“ method=”get|post“ name="表单名称”></form><!--action,当提交表单时,向何处发送表单中的数据,地址可以是相对地址也可以是绝对地址--><!--method将表单中的数据传送给服务器处理,get方式直接显示在url地址中,数据可以被缓存,且长度有限制;而post方式数据隐藏传输,_html表单的处理程序有那些

PHP设置谷歌验证器(Google Authenticator)实现操作二步验证_php otp 验证器-程序员宅基地

文章浏览阅读1.2k次。使用说明:开启Google的登陆二步验证(即Google Authenticator服务)后用户登陆时需要输入额外由手机客户端生成的一次性密码。实现Google Authenticator功能需要服务器端和客户端的支持。服务器端负责密钥的生成、验证一次性密码是否正确。客户端记录密钥后生成一次性密码。下载谷歌验证类库文件放到项目合适位置(我这边放在项目Vender下面)https://github.com/PHPGangsta/GoogleAuthenticatorPHP代码示例://引入谷_php otp 验证器

【Python】matplotlib.plot画图横坐标混乱及间隔处理_matplotlib更改横轴间距-程序员宅基地

文章浏览阅读4.3k次,点赞5次,收藏11次。matplotlib.plot画图横坐标混乱及间隔处理_matplotlib更改横轴间距

docker — 容器存储_docker 保存容器-程序员宅基地

文章浏览阅读2.2k次。①Storage driver 处理各镜像层及容器层的处理细节,实现了多层数据的堆叠,为用户 提供了多层数据合并后的统一视图②所有 Storage driver 都使用可堆叠图像层和写时复制(CoW)策略③docker info 命令可查看当系统上的 storage driver主要用于测试目的,不建议用于生成环境。_docker 保存容器

随便推点

网络拓扑结构_网络拓扑csdn-程序员宅基地

文章浏览阅读834次,点赞27次,收藏13次。网络拓扑结构是指计算机网络中各组件(如计算机、服务器、打印机、路由器、交换机等设备)及其连接线路在物理布局或逻辑构型上的排列形式。这种布局不仅描述了设备间的实际物理连接方式,也决定了数据在网络中流动的路径和方式。不同的网络拓扑结构影响着网络的性能、可靠性、可扩展性及管理维护的难易程度。_网络拓扑csdn

JS重写Date函数,兼容IOS系统_date.prototype 将所有 ios-程序员宅基地

文章浏览阅读1.8k次,点赞5次,收藏8次。IOS系统Date的坑要创建一个指定时间的new Date对象时,通常的做法是:new Date("2020-09-21 11:11:00")这行代码在 PC 端和安卓端都是正常的,而在 iOS 端则会提示 Invalid Date 无效日期。在IOS年月日中间的横岗许换成斜杠,也就是new Date("2020/09/21 11:11:00")通常为了兼容IOS的这个坑,需要做一些额外的特殊处理,笔者在开发的时候经常会忘了兼容IOS系统。所以就想试着重写Date函数,一劳永逸,避免每次ne_date.prototype 将所有 ios

如何将EXCEL表导入plsql数据库中-程序员宅基地

文章浏览阅读5.3k次。方法一:用PLSQL Developer工具。 1 在PLSQL Developer的sql window里输入select * from test for update; 2 按F8执行 3 打开锁, 再按一下加号. 鼠标点到第一列的列头,使全列成选中状态,然后粘贴,最后commit提交即可。(前提..._excel导入pl/sql

Git常用命令速查手册-程序员宅基地

文章浏览阅读83次。Git常用命令速查手册1、初始化仓库git init2、将文件添加到仓库git add 文件名 # 将工作区的某个文件添加到暂存区 git add -u # 添加所有被tracked文件中被修改或删除的文件信息到暂存区,不处理untracked的文件git add -A # 添加所有被tracked文件中被修改或删除的文件信息到暂存区,包括untracked的文件...

分享119个ASP.NET源码总有一个是你想要的_千博二手车源码v2023 build 1120-程序员宅基地

文章浏览阅读202次。分享119个ASP.NET源码总有一个是你想要的_千博二手车源码v2023 build 1120

【C++缺省函数】 空类默认产生的6个类成员函数_空类默认产生哪些类成员函数-程序员宅基地

文章浏览阅读1.8k次。版权声明:转载请注明出处 http://blog.csdn.net/irean_lau。目录(?)[+]1、缺省构造函数。2、缺省拷贝构造函数。3、 缺省析构函数。4、缺省赋值运算符。5、缺省取址运算符。6、 缺省取址运算符 const。[cpp] view plain copy_空类默认产生哪些类成员函数

推荐文章

热门文章

相关标签