文档章节

c指针变量处理数组元素——存取10个数的练习

My_name_is_ZXJ
 My_name_is_ZXJ
发布于 2015/05/21 21:44
字数 279
阅读 2
收藏 0
 

#include<stdio.h>
#include<stdlib.h>
#define L 10

void main()
{
 int a[L], *p = a, flag;

 for (; p < a + 10; p++)
 {
  scanf_s("%d", p);
 }
 printf("%d\n", p);\\值得注意的是p指向的地址现在是a+10(已经无实际意义了),而不是a+9
 printf("请输入要查找的数字:");
 scanf_s("%d", &flag);
 for (int i = 11; p >= a; p--, --i)//不便于今后修改,别人阅读
 {
  printf("%d\n", *p);
  if (*p == flag)
  {
   printf("您查找的是第%d个数。\n", i);
   break;
  }
  else if (i == 1)
  {
   printf("NOT FOUND!\n");
  }
 }
 printf("%d\n", a[8]);
 printf("%d\n", *p);
 system("pause");
}

修改后:

#include<stdio.h>
#include<stdlib.h>
#define L 10

void main()
{
 int a[L], *p = a, flag, count;

 for (; p < a + 10; p++)
 {
  scanf_s("%d", p);
 }
 printf("%d\n", p);
 printf("请输入要查找的数字:");
 scanf_s("%d", &flag);
 for (p = a, count = 1; p < a + 10; p++, count++)//重新让p指向a,便于理解阅读
 {
  printf("%d\n", *p);
  if (*p == flag)
  {
   printf("您查找的是第%d个数。\n", count);
   break;
  }
  else if (count == 10)
  {
   printf("NOT FOUND!\n");
  }
 }
 printf("%d\n", a[8]);
 printf("%d\n", *p);
 system("pause");
}

总结:对for循环有了更深的认识。

© 著作权归作者所有

My_name_is_ZXJ
粉丝 0
博文 3
码字总数 412
作品 0
昌平
私信 提问
嵌入式开发之C基础学习笔记06--数组和指针(非常重要,难点)

C语言进阶学习 数组 1)数组的使用 2)字符串(String):数组(尤其是一维数组)最常用的地方——————>C语言中字符串就是一维数组 数组: 定义:具有相同类型的数据的有序集合,并用唯一的...

吴锦涛
2012/12/14
654
0
C Primer Plus 第10章 数组和指针 编程练习答案

1、修改程序清单10.7中的程序rain,使它不使用数组下标,而是使用指针进行计算(程序中仍然需要声明并初始化数组)。 2、编写一个程序,初始化一个double数组,然后把数组内容复制到另外两个...

idreamo
2016/08/14
261
0
指针——C语言的灵魂

为什么说C指针是C语言的灵魂? 来自读者对C和指针的解说 他可以直接访问硬件,这是灵活性和效率的体现,程序离硬件越近自然效率越高,当然运用不当也可导致效率低下 难掌握及太危险,如果对指...

生气的散人
2013/03/25
1K
5
【C++】第4章 复合类型 知识总结

《C++ Primer Plus》第4章知识点总结 内置的C++类型分两组:基本类型和复合类型。本文将介绍复合类型 数组 声明数组的通用格式:typeName arrayName[arraySize]; 数组的初始化 (1)只有在定...

qq_37792173
2017/09/20
0
0
小蚂蚁学习C语言(18)——C语言指针——指针和下标的关系、传递数组参数的问题

下标和指针的关系 如果p是个指针变量,则 p[i] 永远等价于 *(p+i) /下标和指针的关系/ include <stdio.h> int main(void){int a[5] = {1,2,3,4,5}; printf("%dn", a[2]); //输出了a数组下标为......

嗜学如命的小蚂蚁
2015/12/14
45
0

没有更多内容

加载失败,请刷新页面

加载更多

计算机实现原理专题--二进制减法器(二)

在计算机实现原理专题--二进制减法器(一)中说明了基本原理,现准备说明如何来实现。 首先第一步255-b运算相当于对b进行按位取反,因此可将8个非门组成如下图的形式: 由于每次做减法时,我...

FAT_mt
今天
5
0
好程序员大数据学习路线分享函数+map映射+元祖

好程序员大数据学习路线分享函数+map映射+元祖,大数据各个平台上的语言实现 hadoop 由java实现,2003年至今,三大块:数据处理,数据存储,数据计算 存储: hbase --> 数据成表 处理: hive --> 数...

好程序员官方
今天
7
0
tabel 中含有复选框的列 数据理解

1、el-ui中实现某一列为复选框 实现多选非常简单: 手动添加一个el-table-column,设type属性为selction即可; 2、@selection-change事件:选项发生勾选状态变化时触发该事件 <el-table @sel...

everthing
今天
6
0
【技术分享】TestFlight测试的流程文档

上架基本需求资料 1、苹果开发者账号(如还没账号先申请-苹果开发者账号申请教程) 2、开发好的APP 通过本篇教程,可以学习到ios证书申请和打包ipa上传到appstoreconnect.apple.com进行TestF...

qtb999
今天
10
0
再见 Spring Boot 1.X,Spring Boot 2.X 走向舞台中心

2019年8月6日,Spring 官方在其博客宣布,Spring Boot 1.x 停止维护,Spring Boot 1.x 生命周期正式结束。 其实早在2018年7月30号,Spring 官方就已经在博客进行过预告,Spring Boot 1.X 将维...

Java技术剑
今天
18
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部