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 的开发者往往会混淆这两个概念,数组作为最常见的集合在编程语言中是 ...
随机推荐
- Python进阶(面向对象编程基础)(二)
1.初始化实例属性 #!/usr/bin/env python # -*- coding:utf-8 -*- __author__ = 'ziv·chan' #定义Person类的__init__方法 ...
- 贪心-poj-3040-Allowance
题目链接: http://poj.org/problem?id=3040 题目意思: 有n种(n<=20)面额的硬币,每种硬币面值能整除比它大的面值.给一个c,告诉每种硬币的面值和数量,求最多能 ...
- ini文件解析c库(iniparser)
一.交叉编译ini解析库 1.官方网站http://ndevilla.free.fr/iniparser 下载iniparser-3.1.tar.gz 2.解压 tar -zxvf iniparser ...
- source insight3.5中文乱码解决方案
source insight3.5中文乱码,网上看别人说改变宽字体.宋体等方法都不起效.根本原因是,source insight 3.5 不支持Unicode编码,所以导致中文的乱码,将文件转为gb2 ...
- Entrez检索实例 - NCBI
题目:已知来豆荚斑驳病毒(bean pod mottle virus,BPMV)的名字,查询BPMV基因组信息.核酸序列信息.蛋白序列信息和结构信息 解答: 1.直接搜索,点genome,即可看到病毒 ...
- 关于链接target的问题
<a href="http://www.baidu.com" target="_blank">点击链接</a> target: _bla ...
- js获取页面名称
function pageName() { var strUrl = location.href; var arrUrl = strUrl.split("/"); ...
- NHibernate+NUnit (VS2012+SQL Server2008) (转)
源博客:http://blog.csdn.net/jiajiayouba/article/details/9877875 首先,你要明白,NHibernate在.NET中的作用和Hibernate在J ...
- effectivec++条款18,让接口容易被正确使用,不宜被吴勇
test* create_test(); shared_ptr<test> create_test();//下面的接口比上面的接口要好 auto_ptr<test> creat ...
- hdu2896
数据水,但是各种wa各种t各种re最后照着别人的改了改发现了毛病 数组做指针传入的时候系统是不知道传入后的数字的长度的如果用memset他就只会讲指针的地方清零 #include<iostrea ...