首页 > 全部 > 二级C语言 > 国家二级(C语言)机试模拟试卷458

国家二级(C语言)机试模拟试卷458

本单篇文档共16777字,内容预览3600字,预览为有答案版,源文件无水印,下载后包含无答案空白卷版和有答案版,同时也有计算机类NCRE全国计算机二级整科真题模拟题,讲义课件,思维导图,易错高频题等下载。
二级C语言 模拟试卷 6300人下载
价格: 1.10 原价:¥7.00
收藏

国家二级(C语言)机试模拟试卷458

选择题

1.有以下程序段:

int a,b,c;

a=10;b=50;c=30;

if(a>b)

a=b,b=c;c=a;

printf(\\(A)

A. a=10 b=50 c=10

B. a=10 b=50 c=30

C. a=10 b=30 c=10

D. a=10 b=30 c=50

解析:因为a=10,b=50,所以a<b,if语句判断条件不成立,于是执行c=a,得到c=10,a和b的值不变。

2.若变量都已正确说明,则以下程序段( )。

#include

main()

{int a=8;

int b=6:

printf(a>b?\\(A)

A. 输出为:&&&a=8

B. 输出为:!!!b=8

C. 输出为:&&&a=8 !!!b=6

D. 全部错误

解析:本题考查printf的输出格式和条件表达式“?:”的使用。①printf函数输出时,“&&&%d\n”和“!!!%d\n”中的“&&&”和“!!!”都是直接输出。②条件表达式的基本格式为:a?b:c。其运算规则为:当a为非。时,整个表达式的值取b的值,当a为0时,整个表达式取c的值。printf函数中如果在格式说明符之前插入任何字符都将原样输出。本题中a>b为真,所以返回“&&&a=%d”。

3.有以下程序:

#include<stdio.h>

int b=2;

int fun(int*k)

{

b=*k+b;

return(b);

}

void main()

{

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

for(i=2;i<4;i++)

{

b=fun(&a[i])+b;

printf(\\(C)

A. 1012

B. 810

C. 1028

D. 1016

解析:因为b是全局变量,所以它的值在整个程序结束才会消失。for循环中,第一次循环,i=2,a[2]=3,所以fun(&a[i]=3+2=5,b=5,所以b=fun(&a[i])+b=5+5=10;第二次循环,b=10,然后fun(&a[i])代入a[3]=4,这时fun(&a[i]=10+4=14,所以b=fun(&a[i])+b=14+14=28。

4.以下叙述中正确的是( )。(C)

A. 如果p是指针变量,则&p是不合法的表达式

B. 如果p是指针变量,则*p表示变量p的地址值

C. 在对指针进行加、减算术运算时,数字1表示1个存储单元的长度

D. 如果p是指针变量,则*p+1和*(p+1)的效果是一样的

解析:考查指针的用法。指针进行算术运算的时候,数字“1”不再代表十进制整数“1”,而是指一个存储单元长度,选项c正确。指针变量存储的是其指向的变量的地址,其本身的地址仍用取地址运算符“&\\

5.若有以下语句:

typedef struetS

{int g;char h;}T;

以下叙述中正确的是( )。(B)

A. 可用S定义结构体变量

B. 可用T定义结构体变量

C. S是struct类型的变量

D. T是struct S类型的变量

解析:本题考查typedef重新声明一种结构体类型,那么T为结构体类型,而不是结构体变量,所以B选项正确。

6.在下述程序中,判断i>i共执行的次数是( )。

main()

{int i=0,j=10,k=2,s=0;

for(;;)

{ i+=k;

if(i>j){printf(\\(D)

A. 4

B. 7

C. 5

D. 6

解析:分析程序,i+=k;使得i的值每次增加2然后再和j进行了比较看i>j是否成立,i的变化过程为:i=2,i=4,i=6。i=8,i=10,i=12.此时i>j成立,所以判断i>j共执行的次数为6次。

7.已知一个文件中存放若干工人档案记录,其数据结构如下:

stmct a

{ char number[100];

int age;

float p[6];

};

定义一个数组:struct a b[10];

假定文件已正确打开,不能正确地从文件中读入10名工人数据到数组b中的是( )。(B)

A. fread(b,sizeof(struct a),10,fp);

B. for(i=0;i<10;i++)

fread(b[i],sizeof(struct a),1,fp);

C. for(i=0;i<10;i++)

fread(b+i,sizeof(struct a),1,fp);

D. for(i=0;i<5;i+=2)

fread(b+i,sezeof(struct a),2,fp);

解析:数据块输入/输出函数的调用格式为:ffead(buffer,size,count,fp),其中:“buffer”是一个指针,对于fread来说,它是读入数据的存放地址。“size”是要读写的字节数; “count”是要进行读写多少个size字节的数据项; “fp”是指文件型指针。选项B中b[i]是一个数组,不是指针,需改为&b[i]。

8.数据独立性是数据库技术的重要特点之一。所谓数据独立性是指( )。(D)

A. 数据与程序独立存放

B. 不同的数据被存放在不同的文件中

C. 不同的数据只能被对应的应用程序所使用

D. 以上三种说法都不对

解析:数据独立性是数据与程序间的互不依赖性,即数据库中数据独立于应用程序而不依赖于应用程序。所以选项A,选项B和选项C都不正确。

9.一般情况下,当对关系R和S进行自然连接时,要求R和S含有一个或者多个共有的( )。(C)

A. 记录

B. 行

C. 属性

D. 元组

解析:自然连接是一种特殊的等值连接,它满足下面的条件:①两关系间有公共域;②通过公共域的等值进行连接,故C选项正确。

10.下列语句组中,不正确的是( )。

C

解析:S是一个字符指针变量,s代表其地址,C将字符串赋给地址,因此选项C错误。

11.有以下程序:

void ss(char*s,char 0

{while(*s)

{if(*s=t)*s=t-’a’+’A’;

s++;}

}

main()

{char str1[10

本文档预览:3600字符,共16777字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载

剩余未完,查看全文
收藏
国家二级(C语言)机试模拟试卷458

推荐资源

客服

扫码添加客服微信

热线

官方客服

如遇问题,请联系客服为您解决

电话客服:

客服微信:pujinet

工作时间:9:00-18:00,节假日休息

公众号

扫码关注微信公众号