寒假作业2月14号

指针练习

1、选择题

1.1、若有下面的变量定义,以下语句中合法的是(  A  )。

int ia[10]*p

A p=a+2;       Bp=a[5];    

        Cp=a[2]+2;      D p=&(i+2);

 

1.2、有以下程序

main()

{

   int  a[3][3],*p,i;

   p=&a[0][0];

   for(i=0;i<9;i++)

      p[i]=i;

   for(i=0;i<3;i++)

      printf("%d ",a[1][i]);

}

程序运行后的输出结果是 ___B_________

A)0 1 2

B)1 2 3

C)2 3 4

D)3 4 5

 

1.3、有以下程序

int  main()

{   int  a[3][2]={0},   (*ptr)[2],i,j;    

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

    {   ptr=a+i;

        scanf("%d",*ptr);

        *ptr++;

    }

    for(i=0;i<3;i++)

    {

        for(j=0;j<2;j++)

           printf("%2d",a[i][j]);

        printf("\n");

    }

}

若运行时输入:1  2  3<回车>,则输出结果为 ____D_______

A)产生错误信息

B1 0

    2 0

    0 0

C1 2

    3 0

    0 0

D1 0

    2 0

    3 0

1.4、有以下程序

main()

{   int  a[]={1,2,3,4,5,6,7,8,9,0},*p;

    for(p=a;p<a+10;p++)

      printf("%d,",*p);

}

程序运行后的输出结果是 __A________

   A1234567890

   B23456789101

   C0123456789

   D111111111,,1

1.5、有以下程序

main()

{

   char  s[]="159",*p;

   p=s;

   printf("%c",*p++);

   printf("%c",*p++);

}

程序运行后的输出结果是___A_____

A1 5  B1 6   C1 2   D5  9

1.6、有以下程序

point(char  *p)

{

   p+=3;

}

int  main()

{   char  b[4]={'a','b','c','d'},  *p=b;

    point(p);    printf("%c\n",*p);

}

程序运行后的输出结果是 ____D______

Aa    Bb    Cc      Dd

1.7、设有如下定义语句 int m[ ]={2,4,6,8},   *k=m;

以下选项中,表达的值为 6的是  B

A *(k+2)  B k+2 C *k+2   D *k+=2

1.8、若有定义语句int year=2009*p=&year,以下不能使变量 year 中的值增至 2010 的语 句是(D )

A)*p+=1 B)( *p)++ C)++(*p) D)*p++

1.9、设有定义double x[10],*p=x;以下能给数组 x 下标为 6 的元素读入数 据的正确语句是  D

A)scanf("%f",&x[6]);   B)scanf("%lf",*(x+6));

C)scanf("%lf",p+6);      D)scanf("%lf",p[6]);

1.10、若有定义语句char s[3][10],   (*k)[3],   *p; ,则以下赋值语句正确的是_A___

    A)p=s;       B)p=s[0];    C)p=k;     D)k=s;

1.11、有定义语句int *p[4]; 以下选项中与此语句等价的是 C

Aint p[4];    B)int **p;   C)int *(p[4]);    D)int (*p)[4];

1.12、若有定语句int a[4][10], *p, *q[4];  0≤i<4,则错误的赋值 是 D

Ap=a  Bq[i]=a[i]  Cp=a[i]  Dp=&a[2][1]

1.13、若有以定义

int x[10],*pt=x;

 x 数组元的正确应用是   B

A*&x[10]    B*x+3

3C*pt+10 Dpt+3

 

1.14、有以程序

#include <stdio.h>

main()

{ int a[ ]={1,2,3,4},y,*p=&a[3];

--p; y=*p; printf(y=%d\n,y);

}

程序的运行结  D

Ay=0   By=1    Cy=2   Dy=3

1.15、设char  *s = “\ta\017bc”;则指针变量s指向的字符串所占的字节数是___C____

   A)  6   B)  2   C)   5   D) 9

1.16、  若有定义语句char s[3][10],  (*k)[3],   *p;,则以下赋值句正确的是 C

A)p=s; B)p=k; C)p=s[0]; D)k=s;

 

2、填空题

2.1以下序的输出结果是__6_____

#include<stdio.h>

main()

{ int a[5]={2,4,6,8,10}, *p;

p=a+2; 

printf(%d,*p++); 

}

 

2.2、以下程序段的定义语句中x[1]的初值是__2___,程序运行后输出的内容是_3 5 7 9______

#include<stdio.h>

 main()

{ int x[]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16},*p[4],i;

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

{ p[i]=&x[2*i+1]; printf(%d ,p[i][0]);

}

printf(\n);

}

 

    2.3  以下段的输出结果(rgb )

#include <sthio.h>

mian()

{ char *ch[4]={red,”green,blue}; int  i=0;

while(ch[i]);

{ putchar(ch[i][0];    i++;   }

}

 

       2.4、以下程序的功能是:借助指针变量找出数组元素中最大值所在的位置并输出该最大值。 请在输出语句中填写代表最大值的输出项。

#include   <stdio.h>  

int   main()

{ int a[10], *p, *s;

for(p=a; p-a<10; p++)

scanf(%d,  p);

for(p=a,s=a;p-a<10;p++)

if(*p>*s) s=p;

printf(max=%d,  序号:%d\n” , ____*s_______ );

}

2.5 有以下程序,输出结果为___2 5______

      main()

{  

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

int *ptr=(int *)(&a+1);    

printf("%d,%d",*(a+1),*(ptr-1));

}  

2.6  以下程序的功能是:借助指针变量找出数组元素中最大值所在的位置并输出该最大值。 请在输出语句中填写代表最大值的输出项。

#include <stdio.h>

int main( )

{ int a[10], *p, *s;

for(p=a;p-a<10; p++)

scanf(%d,p);

 for(p=a,s=a;p-a<10;p++)

 if(*p>*s) s=p;

printf(max=%d\n” ,  ___*s___ );

3、编程题

3.1、 有一个整型数组int [10] = {10,20,30,40,50,60,70,80,90,100};标准输入一个整型数值m(0<m<10) ,使前面10-m个数值向后移动m个位置,最后m个数变成前面的m个数

 #include <stdio.h>int main(){int a[10] = {10,20,30,40,50,60,70,80,90,100};int b[10];int m;scanf("%d",&m);int j;for(int i=m;i<10-m;i++){for(j=0;j<10-m;j++){b[j] = a[i];}}int k;for(int i=0;i<m;i++){for(k=j;k<10;k++){b[k]=a[i];}}for(int i=0;i<10;i++){printf("%d",b[i]);}return 0;}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/683618.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

116. 填充每个节点的下一个右侧节点指针

给定一个 完美二叉树 &#xff0c;其所有叶子节点都在同一层&#xff0c;每个父节点都有两个子节点。二叉树定义如下&#xff1a; struct Node {int val;Node *left;Node *right;Node *next; } 填充它的每个 next 指针&#xff0c;让这个指针指向其下一个右侧节点。如果找不到…

Flink理论—容错之状态

Flink理论—容错之状态 在 Flink 的框架中&#xff0c;进行有状态的计算是 Flink 最重要的特性之一。所谓的状态&#xff0c;其实指的是 Flink 程序的中间计算结果。Flink 支持了不同类型的状态&#xff0c;并且针对状态的持久化还提供了专门的机制和状态管理器。 Flink 使用…

7 大 Android 数据恢复软件,可轻松找回丢失的数据

每年&#xff0c;由于各种原因&#xff0c;数百万人从他们的 Android 设备中丢失数据。它可能像意外删除文件一样简单&#xff0c;也可能像系统崩溃一样复杂。在这种情况下&#xff0c;拥有高效的数据恢复工具可以证明是救命稻草。Mac 用户尤其需要找到与其系统兼容的软件。好消…

不止于浏览器:掌握Node.js,开启全栈开发新篇章!

介绍&#xff1a;Node.js是一个基于Chrome V8引擎的JavaScript运行时环境&#xff0c;特别适合构建高性能的网络服务器和实时应用。具体介绍如下&#xff1a; 服务器端JavaScript&#xff1a;Node.js的核心优势之一是在服务器端运行JavaScript&#xff0c;这使得前端开发者可以…

如何利用SpringSecurity进行认证与授权

目录 一、SpringSecurity简介 1.1 入门Demo 二、认证 ​编辑 2.1 SpringSecurity完整流程 2.2 认证流程详解 2.3 自定义认证实现 2.3.1 数据库校验用户 2.3.2 密码加密存储 2.3.3 登录接口实现 2.3.4 认证过滤器 2.3.5 退出登录 三、授权 3.1 权限系统作用 3.2 授…

第10章 智能租房——用户中心

学习目标 掌握用户注册功能的逻辑,能够独立编写代码实现用户注册功能 掌握用户中心页展示功能的逻辑,能够实现在用户中心页上展示账号信息、收藏记录和浏览记录 掌握用户登录与退出的逻辑,能够实现用户登录与退出功能 掌握账号信息修改的逻辑,能够实现账号信息修改功能 掌握…

软件实例分享,门诊处方软件存储模板处方笺教程,个体诊所电子处方开单系统软件教程

软件实例分享&#xff0c;门诊处方软件存储模板处方笺教程&#xff0c;个体诊所电子处方开单系统软件教程、 一、前言 以下软件教程以 佳易王诊所电子处方管理软件V17.0为例说明 软件文件下载可以点击最下方官网卡片——软件下载——试用版软件下载 电子处方软件支持病历汇总…

CGAL Mesh分割

文章目录 一、简介二、实现代码三、实现效果参考资料一、简介 网格分割是将一个网格分解成更小的、有意义的子网格的过程。该过程用于建模,索具,纹理,形状检索,变形等应用。CGAL为我们提供了一个依赖于形状直径函数(SDF)的算法实现,即给定一个三角形表面网格包围一个3D实体…

B3650 [语言月赛202208] 求和

题目描述 输入一个整数 n(1≤n≤107)&#xff0c;每行输出一个数&#xff0c;表示数字 1 到 i 的和。 比如&#xff0c;当 n5 时&#xff0c; 第 1 行输出一个数字 1&#xff1b; 第 2 行输出数字 3&#xff0c;因为 1 2 3&#xff1b; 第 3 行输出数字 6&#xff0c;因…

创建线程实现火车站多窗口买票问题

1.首先要知道创建线程的方式 &#xff08;1&#xff09;通过继承Thread类的方式 &#xff08;2&#xff09;通过实现runnable的方式 2.多个线程&#xff08;多个窗口&#xff09;卖票这里要考虑线程安全问题&#xff0c;不然会出现错票和重票的问题。这里有上面两种方式实现…

对进程与线程的理解

目录 1、进程/任务&#xff08;Process/Task&#xff09; 2、进程控制块抽象(PCB Process Control Block) 2.1、PCB重要属性 2.2、PCB中支持进程调度的一些属性 3、 内存分配 —— 内存管理&#xff08;Memory Manage&#xff09; 4、线程&#xff08;Thread&#xff09;…

auto关键字详讲

目录 1.问题思考 2.auto关键字介绍 3. 早期auto的缺陷&#xff1a; 4.什么叫自动存储器&#xff1f; 5. c标准auto关键字 5.1auto的使用细节 5.2 auto什么时候不能推导变量的类型呢&#xff1f; 5.3基于范围的for循环 5.3.1范围for的用法 5.3.2 范围for的使用条件 6.…

书生浦语大模型实战营-课程笔记(3)

本节课主要是跟着教程做的&#xff0c;操作的东西放到作业里记录了。 这里主要记录一些视频里讲的非操作性的东西。 RAG外挂知识库&#xff1f;优点是成本低&#xff0c;不用重新训练 RAG的一个整体流程。 涉及了文本相似度匹配&#xff0c;是不是和传统的问答系统&#xff0…

【Linux学习】线程池

目录 23.线程池 23.1 什么是线程池 23.2 为什么需要线程池 23.3 线程池的应用场景 23.4 实现一个简单的线程池 23.4.1 RAII风格信号锁 23.4.2 线程的封装 23.4.3 日志打印 22.4.4 定义队列中存放Task类任务 23.4.5 线程池的实现(懒汉模式) 为什么线程池中需要有互斥锁和条件变…

第三百四十六回

文章目录 1. 概念介绍2. 原理与方法2.1 知识对比2.2 使用方法 3. 示例代码4. 内容总结 我们在上一章回中介绍了"加密包crypto"相关的内容&#xff0c;本章回中将介绍characters包.闲话休提&#xff0c;让我们一起Talk Flutter吧。 1. 概念介绍 在项目中会遇到获取字…

片上网络NoC(3)——拓扑指标

目录 一、概述 二、指标 2.1 与网络流量无关的指标 2.1.1 度&#xff08;degree&#xff09; 2.1.2 对分带宽&#xff08;bisection bandwidth&#xff09; 2.1.3 网络直径&#xff08;diameter&#xff09; 2.2 与网络流量相关的指标 2.2.1 跳数&#xff08;hop coun…

【深度学习】S2 数学基础 P4 微积分(下)偏导数与链式法则

目录 深度学习与微积分偏导数链式法则 深度学习与微积分 总结来说&#xff0c;深度学习的核心在于优化&#xff1b;优化的重点在于降低损失值&#xff1b;降低损失值需要通过反向梯度下降&#xff1b;而微积分&#xff0c;判断的就是梯度下降的方向和大小。 铺开来说&#xf…

【51单片机】初学者必读的一文【探究定时计数器与中断系统是如何配合起来的?】(9)

前言 大家好吖&#xff0c;欢迎来到 YY 滴单片机系列 &#xff0c;热烈欢迎&#xff01; 本章主要内容面向接触过单片机的老铁 主要内容含&#xff1a; 欢迎订阅 YY滴C专栏&#xff01;更多干货持续更新&#xff01;以下是传送门&#xff01; YY的《C》专栏YY的《C11》专栏YY的…

Nvidia 推出了本地版聊天 Chat with RTX;OpenAI联创Karpathy宣布离职专注个人项目

&#x1f989; AI新闻 Nvidia 推出了本地版聊天 Chat with RTX 摘要&#xff1a;英伟达最近发布了名为“Chat with RTX”的Demo版个性化AI聊天机器人&#xff0c;适用于Windows平台&#xff0c;需要Nvidia的30系/40系显卡&#xff0c;显存至少为8GB&#xff0c;系统配置包括1…

【C++关联式容器】unordered_set

目录 unordered_set 1. 关联式容器额外的类型别名 2. 哈希桶 3. 无序容器对关键字类型的要求 4. Member functions 4.1 constructor、destructor、operator 4.1.1 constructor 4.1.2 destructor 4.1.3 operator 4.2 Capacity ​4.2.1 empty 4.2.2 size 4.2.3 max…