5 c语言数组
其中包括:冒泡 高精度加法 统计不相同的数字个数(数组) 数组元素倒序输出 go~~~~
#include <stdio.h> /*
功能:冒泡
时间:2016.11.15
*/ void InputArr(int a[],int n)
{
int i; for(i=;i<n;i++)
{
printf("请输入第一个%d元素",i+);
scanf("%d",&a[i]); }
if(i==n)
{
printf("输入完毕了哦\n");
} }
void OutArr(int a[],int n)
{
int i;
printf("-------排序后--------\n");
for(i=;i<n;i++)
{
printf("%d",a[i]);
}
}
void BubbleSort(int a[],int n)
{
int i ;
int j;
int temp;
for(i=;i<n;i++)
{
for(j=;j<n-i-;j++)//这里为什么会是n-i-1 冒泡就是相邻两者比较总有个大的在后面
//到所谓最后一次之前就确定下来了也就是n-2和n-1比较
{
if(a[j]>a[j+])
{
temp = a[j];
a[j] = a[j+];
a[j+] = temp;
}
}
}
}
void main()
{
int n = ;
int a[];//定义最大容量为20的数组
printf("请输入需要排序元素的个数\n",n);
scanf("%d",&n);
InputArr(a,n);
BubbleSort(a,n);
OutArr( a, n); system("pause"); }

#include <stdio.h>
#include <string.h>
#define M 100 /*
功能:高精度加法
时间:2016.11.15
*/
void main()
{
int a[M] = {};
int b[M] = {};
int c[M] = {};
char s[M+];
int i = ;
int n1 = ;
int n2 = ;
int max = ;
int e = ;
printf("请输入整数a\n");
gets(s);//从流中取一字符串
n1 = strlen(s);//注意 strlen()这个函数求长度不包括末尾的结束符'\0'
//printf("%d",n1);
for(i=n1-;i>=;i--)//数组元素是下标为0哦
{
a[n1--i] = s[i] - '';//数字字符的ASCII-字符0正好为其对应的整数
//比如字符9的ASCII为57 0字符为48相减为9 make it
}
printf("请输入整数b\n"); gets(s);
n2 = strlen(s);
for(i=n2-;i>=;i--)
{
b[n2--i] = s[i] - '';
}
if(n1>n2)
{
max = n1;
}else
{
max = n2;
}
for(i=;i<=max;i++)
{
c[i] = (a[i]+b[i]+e)%;
e = (a[i]+b[i]+e)/;
}
if(c[max]>)
printf("%d",c[max]);
for(i=max-;i>=;i--)
{
printf("%d",c[i]);
}
system("pause");
}

#include <stdio.h> //*
// 功能:数组存储数字 统计不同的数字个数
// 时间:2016.11.16
//*/ //统计
void Statistic(int a[],int n)
{
int i;
int j;
int count = ;//统计不同数字的个数
for(i=;i<n;i++)
{
for(j=;j<i;j++)
{
if(a[i]==a[j])
{
break;//退出本次循环
} }
if(j==i)//这里为什么是j=i 一旦break 增量j不会再变化 如果没有break即使要完成了循环 变量会增加1
{
count++;
}
}
printf("去掉重复的元素后个数为=%d",count);
}
void Input(int a[],int n)
{
int i;
printf("请输入%d个元素\n",n);
for(i=;i<n;i++)
{
scanf("%d",&a[i]); } }
void main()
{
int a[];
int n;
printf("需要录入的个数为\n");
scanf("%d",&n);
Input( a,n);
Statistic(a,n);
system("pause");
} //void main()
//{
// int a[20];
// int i,t,p=0;
// for(i=0;i<10;i++)
// {
// scanf("%d",&a[i]);
// for(t=0;t<i;t++)
// {
// if(a[t]==a[i])
// break;//退出本次循环
// }
// if(t==i)
// {
// p++;
// }
//
// }printf("\np=%d",p);
// system("pause");
//}

#include <stdio.h> /*
功能:数组元素倒序输出
时间:2016.11.16
*/
void rever(int a[],int n)
{ int i ;
printf("--------倒序输出为----------\n");
for(i=n-;i>=;i--)
{
printf("%x,%d\n",&a[i],a[i]);
}
}
void main1()
{
int a[]={,,,};//定义5个元素的数组
int i;
int count = ;
printf("----------正序为---------\n");
for(i=;i<sizeof(a[i]);i++)//int 4个字节 4个元素
{
printf("%x,%d\n",&a[i],a[i]);
count++;
}
printf("%d\n",count);//也就是17个内存单元
rever( a,count);
system("pause");
}
5 c语言数组的更多相关文章
- GO语言数组和切片实例详解
本文实例讲述了GO语言数组和切片的用法.分享给大家供大家参考.具体分析如下: 一.数组 与其他大多数语言类似,Go语言的数组也是一个元素类型相同的定长的序列. (1)数组的创建. 数组有3种创建方式: ...
- C语言 数组 列优先 实现
C语言数组结构列优先顺序存储的实现 (GCC编译). 从行优先转换为列优先存储方式, 与行优先相比, 不同之处在于改变了数组维界基址的先后顺序, 从而改变了映像函数常量基址. /** * @brief ...
- C语言 数组 行优先 实现
C语言数组结构行优先顺序存储的实现 (GCC编译). /** * @brief C语言 数组 行优先 实现 * @author wid * @date 2013-11-02 * * @note 若代码 ...
- 不可或缺 Windows Native (5) - C 语言: 数组
[源码下载] 不可或缺 Windows Native (5) - C 语言: 数组 作者:webabcd 介绍不可或缺 Windows Native 之 C 语言 数组 示例cArray.h #ifn ...
- C语言数组
在C语言中,对于三维或三维以上数组的使用并没有很好的支持,而且使用率也非常的低,后面会对三维数组做一些简单的分析,这篇文章主要以二维数组来探讨一些C语言中数组使用的相关概念和技巧. 1 一个var[i ...
- C语言数组:C语言数组定义、二维数组、动态数组、字符串数组
1.C语言数组的概念 在<更加优美的C语言输出>一节中我们举了一个例子,是输出一个 4×4 的整数矩阵,代码如下: #include <stdio.h> #include &l ...
- Go语言数组的使用
Go 语言数组 Go 语言提供了数组类型的数据结构. 数组是具有相同唯一类型的一组已编号且长度固定的数据项序列,这种类型可以是任意的原始类型例如整形.字符串或者自定义类型. 相对于去声明number0 ...
- Go 语言数组
Go 语言提供了数组类型的数据结构. 数组是具有相同唯一类型的一组已编号且长度固定的数据项序列,这种类型可以是任意的原始类型例如整形.字符串或者自定义类型. 相对于去声明number0, number ...
- C语言 > 数组和指针
C语言 数组和指针 const: 关于指针和const需要注意一些规则.首先,把const数据或非const数据的地址初始化为指向const的指针或为其赋值是合法的. 然而,只能把非const数据的地 ...
- Go语言数组和切片的原理
目录 数组 创建 访问和赋值 切片 结构 初始化 访问 追加 拷贝 总结 数组和切片是 Go 语言中常见的数据结构,很多刚刚使用 Go 的开发者往往会混淆这两个概念,数组作为最常见的集合在编程语言中是 ...
随机推荐
- SQL 查询某字段id为空(不为空)
1 sql 查询某字段id为空 select * from 表名 where id is null ; 2 sql 查询某字段id不为空 select * from 表名 wher ...
- 性能优化之NSDateFormatter
为什么要优化NSDateFormatter? 优化方式有哪些? 为什么要优化NSDateFormatter? 首先,过度的创建NSDateFormatter用于NSDate与NSString之间转换, ...
- 正则表达式JSP实例
<%@ page language="java" import="java.util.*,cn.com.Person,cn.com.Adddress" p ...
- Hadoop 开源调度系统zeus(二)
紧跟之前Hadoop 开源调度系统zeus(一) 本节主要介绍一下zeus的架构: 先给一个zeus的架构图 无论Master还是Worker都有一套WEB UI,无论从哪个上面去看,看到的结果都是一 ...
- C++类的const成员函数、默认的构造函数、复制形参调用函数(转)
C++类的const成员函数 double Sales_item::avg_price() const { } const关键字表明这是一个const成员函数,它不可以修改Sales_item类的成员 ...
- hexo博客的优化与配置——加入统计代码
今天看着csdn博客的訪客数,就想给hexo博客也加入统计訪客的插件,上次折腾了个pacman主题,中间自带的是goole的统计,easy被墙,所以就想换一个统计工具,看了好多人用的都是cnzz的站长 ...
- Java基础知识强化42:StringBuffer类之StringBuffer的截取功能
1. StringBuffer的截取功能: public String subString(int Start): public String subString(int Start, int end ...
- Java基础知识强化39:StringBuffer类之StringBuffer的删除功能
1. StringBuffer的删除功能: public StringBuffer deleteCharAt(int index):删除指定位置的字符,并返回字符串缓冲区本身. public Str ...
- Linux常用命令之 查找命令 find —— 细说 -atime,-mtime,-ctime
我们知道 Linux里面一切皆文件 ,那么我们能否查看一个文件是何时创建的呢?答案是否定的.那我们可以知道些文件关于时间的什么信息呢?那就不得不说文件状态的三个时间了,它们分别是 -atime, -c ...
- C#。3.1 循环(叠加、穷举)
循环. for 循环 嵌套的应用, 迭代.穷举 一.迭代法 每次循环都是从上次运算结果中获得数据,本次运算的结果都是要为下次运算做准备.例:1.100以内所有数的和. int sum = 0; for ...