首页 > 其他分享 >2017年湖南省对口高考真题

2017年湖南省对口高考真题

时间:2023-07-26 21:03:49浏览次数:41  
标签:head struct 真题 int 对口 char NumNode 2017 include

一、选择题

1、

下列C语言标识符错误的是__________。

A.ABc               B.abc               C.A_bc              D.Ab.c

2、

分析以下程序,下列说法正确的是__________。

#include <stdio.h>
void main()
{
    int x=3,a=3,b=3;
    if(x=a+b)
        printf("* * * *");
    else
        printf("@ @ @ @");
}

A.输出:* * * *                         B.输出:@ @ @ @

C.不能输出编译,有语法错误    D.能通过编译,但不能连接

3、

若"int a;float b=12.2;",则执行"a=(int)b%3;"后,a的值是__________。

A.1                 B.0                 C.2.2               D.1.22

二、程序填空题

1、

从键盘上输入一个百分制成绩score,按下列原则输出其评分等级:

score≧90,等级为A;

80≦score<90,等级为B;

70≦score<80,等级为C;

60≦score<70,等级为D;

Score<60,等级为E

请补全下列代码:

#include <stdio.h>
void main()
{
    int data;
    _____ 1 _____ ;//定义grade字符变量
    printf("请输入成绩: ");
    scanf("%d",_____ 2 _____ );
    switch(data/10)
    {
        case 10:
        case 9:grade='A';break;
        case 8:grade='B';break;
        case 7:grade='C';break;
        case 6:grade='D';break;
        _____ 3 _____;
    }
    printf("评分等级为:%c",_____ 4 _____ );
}

三、写程序结果

1、

下列程序的运行结果是__________。

#include "stdio.h"
#include "string.h"
int main()
{
    char a[]= {'a','b','c','d','e','f','g','h','\n'};
    int x,y;
    x=sizeof(a);
    y=strlen(a);
    printf("%d,%d",x,y);
    return 0;
}

2、

下列程序的运行结果是__________。

#include "stdio.h"
void fun(int b[3])
{
    int j;
    for(j=0; j<3; j++)
    {
        b[j]=j;
    }
}
int main()
{
    int a[3]= {1,2,3},k;
    fun(a);
    for(k=0; k<3; k++)
    {
        printf("%d",a[k]);
    }
    return 0;
}

3、

下列程序的运行结果是__________。

#include "stdio.h"
int fun(int a,int b)
{
    return a+b;
}
int main()
{
    int x=2,y=3,z=4,r;
    r=fun(fun(x,y),z);
    printf("%d",r);
    return 0;
}

4、

下列程序的运行结果是__________。

#include "stdio.h"
int main()
{
    char a[]="abcdef",b[]="acdeea";
    char *p1,*p2;
    int i;
    p1=a;
    p2=b;
    for(i=0; i<6; i++)
    {
        if(*(p1+i)!=*(p2+i))
            printf("%c",*(p1+i));
    }
    return 0;
}

5、

下列程序的运行结果是__________。

#include "stdio.h"
void inv(int *p,int n)
{
    int *i,*j,m=(n-1)/2,t;
    j=p+n-1;
    for(i=p; i<p+m; i++,j--)
    {
        t=*i;
        *i=*j;
        *j=t;
    }
}
int main()
{
    int i;
    int a[]={3,5,7,0,6,2};
    inv(a,6);
    for(i=0; i<6; i++)
        printf("%d",a[i]);
    return 0;
}

四、程序填空

1、

函数countBit1用于统计某个字节中值为1的位的个数。

unsigned int countBit1(char byteData)
{
    int i;
    unsigned int num=0,tmpVal;
    for(i=0; i<8; i++)
    {
        tmpVal=_____ 1 _____;
        tmpVal &=0x01;
        if(tmpVal)
            _____ 2 _____;
    }
    return num;
}

2、

以下程序在main函数中调用reverse函数按逆序重新放置数组a中元素的值,reverse函数使用递归实现数组逆序。此程序运行后输出:54321

#include "stdio.h"
#define  N  5
void reverse(int *s,int i,int j)
{
    int t;
    if(i<j)
    {
        t=*(s+i);
        ______3______;
        *(s+j)=t;
        reverse(______4______);
    }
}
int main()
{
    int a[N]= {1,2,3,4,5};
    int i=0;
    reverse(______5______);
    for(i=0; i<N; i++)
        printf("%d",a[i]);
    return 0;
}

五、改错

1、

以下程序从键盘获得字符串输入,并将输入字符串追加写入C盘d去ta.txt文件中去。以下程序只允许修改两行。

int main()
{
    FILE *fp;
    char buf[100],*fileName="D://data.txt";
    gets(buf);
    if((fp=fopen(fileName,"w"))!=NULL);
    {
        puts(buf);
        fclose(fp);
    }
    return 0;
}

2、

函数endsWith(char *str,char *substr)用于判断字符串str是否以子字符串substr结尾,是返回整数1,否返回整数0。以下程序只允许修改三行。

int endsWith(char *str,char *substr)
{
    int sublen=0;
    while(str!='\0')
    {
        if(substr[sublen]!='\0')
        {
            sublen++;
        }
        str++;
    }
    int i=0;
    for(; i<sublen; i++)
    {
        char strCh=*str;
        char subCh=*--substr;
        if(strCh!=subCh)
        {
            return 0;
        }
    }
    return 1;
}

六、程序设计题

1、

编写程序用于从键盘逐个读取整数,并将整数按照升序插入链表,每插入一个数后将链表中的数据都输出一次,当输入整数0时结束插入。

#include "stdio.h"
#include "stdlib.h"
struct NumNode
{
    int data;
    struct NumNode *next;
};
struct NumNode *insertToList(struct NumNode *head,int fdata)
{
    struct NumNode *p,*q;
    struct NumNode *newNode=(struct NumNode *)malloc(sizeof(struct NumNode));
    newNode->data=fdata;
    newNode->next=NULL;
    p=head;
    q=head;
    if(head==NULL)
    {
        _____1_____;
        return head;
    }
    while(p!=NULL && fdata>p->data)
    {
        q=p;
        p=p->next;
    }
    if(p!=NULL)
    {
        if(head==p) 
        {
            ______2______;
        }
        else
            q->next=newNode;
        ______3______;
    }
    else 
    {
        ______4______;
    }
    return head;
}
void printList(struct NumNode *head)
{
    struct NumNode *p=head;
    while(p!=NULL)
    {
        printf("%d  ",p->data);
        p=p->next;
    }
    printf("\n");
}
int main()
{
    struct NumNode *head=NULL;
    int i;
    scanf("%d",&i);
    while(i!=0)
    {
        ______5______;
        printList(head);
        scanf("%d",&i);
    }
}

参考答案:

一、选择题

1—3    D、A、B

二、程序填空题

1、char grade           2、&data            3、default : grade='E'          4、grade

三、写程序结果

1、9,9          2、012          3、9            4、bcdf             5、267053

四、程序填空

1、byteData>>I                  2、num++

3、*(s+i)=*(s+j)                4、s,i+1,j-1                        5、a,i,N-1

五、改错

1、

L6  if((fp=fopen(fileName,"a"))!=NULL)

L8  fputs(buf,fp);

2、

L04     while(*str!='\0')//while(str!='\0')

L15     char strCh=*--str;//char strCh=*str;

L16     char subCh=substr[sublen-i-1];//char subCh=*--substr;

int main()

{

    int i;

    char a[]="abcdefeg",b[]="eg";

    i=endsWith(a,b);

    printf("%d",1);

    return 0;

}

六、程序设计题

1、head=newNode

2、head=newNode

3、newNode->next=p

4、q->next=newNode

5、head=insertToList(head,i)

标签:head,struct,真题,int,对口,char,NumNode,2017,include
From: https://blog.51cto.com/teacherzhou/6859783

相关文章

  • 逆袭!裸辞26天,历经4面,60w“跳”进鹅厂(附面试流程和真题)
    在互联网做了几年之后,去大厂“镀镀金”是大部分人的首选。大厂不仅待遇高、福利好,更重要的是,它是对你专业能力的背书,大厂工作背景多少会给你的简历增加几分竞争力。但说实话,想进大厂还真没那么容易。我的一个朋友在入职腾讯之前,大大小小的面试经历了十几次,最后终于在4轮技术面+1......
  • Unsupervised Learning of Depth and Ego-Motion from Video(CVPR2017)论文阅读
    深度估计问题 从输入的单目或双目图像,计算图像物体与摄像头之间距离(输出距离图),双目的距离估计应该是比较成熟和完善,但往单目上考虑主要还是成本的问题,所以做好单目的深度估计有一定的意义。单目的意思是只有一个摄像头,同一个时间点只有一张图片。就象你闭上一只眼睛,只用一......
  • visual studio community 2017 许可证即将过期
     打开发现通知,许可证即将过期点击后如图所示发现点击更新后根本没用,打不开其内容,看了数个文章,尝试后发现这是只需要关闭wifi(PS:比如校园网等),打开使用自己的热点进行连接即可进去加载页面然后根据提示进行简单操作即可,我使qq邮箱登录的社区版,这样微软直接给你发个qq邮箱验......
  • P3750 [六省联考 2017] 分手是祝愿
    本篇为该题解的补充与说明处理出来一共有个多少的要摁的开关(最优的方法是摁多少次)我们可以先从\(k\)入手,从后往前扫,只要遇到\(1\)的位置就操作,并更新编号为\(i\)的约数的点一个点不会被操作\(2\)次以上,因为\(2\)次操作相当于没操作操作\(i\)不会影响到比ii......
  • 在windows平台使用Visual Studio 2017编译动态库并使用
    使用VSstdio制作顺序表的库文件.lib与.dll区别lib是编译时需要的dll是运行时需要的1、新建头文件和源文件SeqList.h//SeqList.h#ifndefSEQLIST_H__#defineSEQLIST_H__#defineN10typedefintSLDataType;typedefstructSeqList{ SLDataTypedata[N]......
  • P3750 [六省联考 2017] 分手是祝愿 做题记录
    P3750[六省联考2017]分手是祝愿做题记录题目传送门题目描述ZeitundRaumtrennendichundmich.时空将你我分开。B君在玩一个游戏,这个游戏由\(n\)个灯和\(n\)个开关组成,给定这\(n\)个灯的初始状态,下标为从\(1\)到\(n\)的正整数。每个灯有两个状态亮和灭,......
  • 2023上半年Android高频面试题汇总(大厂真题+答案解析)
    小伙伴们大家好哇,不知道你们在找工作的时候是不是在力扣、在牛客网狂刷真题!可是有时候刷题的数量连起来可以绕地球三圈,但是面试却过不了第三轮!有没有一种可能就是你没有把握住重点!想想我们之前考试是不是老师划了重点,给了往期真题你考得分数高?题海战术是保底策略,能保证你大概率不会......
  • 2017年全国大学生电子设计竞赛F题方案及制作过程分享
    8月9日,2017年全国大学生电子设计竞赛在全国31个赛区同时开幕。本届比赛有来自全国千余所院校、共4万余名学生报名参加,命题涵盖了从基础到综合应用等多个领域。下面即将分享的是论坛资深网友@RF-刘海石对于本科组F题:调幅信号处理实验电路的制作过程及方案经过2天的时间,我已经尽......
  • CEOI2017 Building Bridges
    小清新斜率优化题。分段问题显然dp,令\(f_i\)为将第\(1\)根柱子和第\(i\)根柱子连接的最小代价。\(f_1=0\),每次枚举\(i\)向前直接连接的柱子:\[f_{i}=\min\limits_{j=1}^{i-1}\left\{f_j+(h_i-h_j)^2+\sum\limits_{k=j+1}^{i-1}w_k\right\}\]令\(s_{i}=\sum\limits_{j=......
  • Origin 2017科研绘图软件下载和安装教程
    Origin是由OriginLab公司开发的一个科学绘图、数据分析软件,支持在MicrosoftWindows下运行。Origin支持各种各样的2D/3D图形。Origin中的数据分析功能包括统计,信号处理,曲线拟合以及峰值分析。Origin中的曲线拟合是采用基于Levernberg-Marquardt算法(LMA)的非线性最小二乘法拟合。Orig......