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 的开发者往往会混淆这两个概念,数组作为最常见的集合在编程语言中是 ...
随机推荐
- Oracle_Q&A_03
1.先导入SQL文件 执行语句查看表信息 select * from student;--学生信息--(stunum,stuname,classid)select * from class;--班级信 ...
- [Cocos2d-x v3.x]序列帧动画
简单介绍 Cocos2d-x中.动画的详细内容是依靠精灵显示出来的,为了显示动态图片,我们须要不停切换精灵显示的内容.通过把静态的精灵变为动画播放器从而实现动画效果. 动画由帧组成,每一帧都是一个 ...
- JDK版本错误:Unsupported major.minor version 51.0
错误原因 有时候把项目从本机编译文件部署到服务器,或者发给别人使用时,会报如下异常: java.lang.UnsupportedClassVersionError: test_hello_world ...
- 关于ubuntu中的软件安装
在ubuntu中一般使用apt-get来安装软件工具, 例如 sudo apt-get install g++ apt-get会在镜像库中找到你需要的软件镜像(例如 g++)来安装,那么apt-get ...
- HTML基础总结<头部>
重点摘录:HTML head 元素 标签 描述 <head> 定义了文档的信息 <title> 定义了文档的标题 <base> 定义了页面链接标签的默认链接地址 & ...
- JSON.parse(),JSON.stringify(),jQuery.parseJSON()的用法
1. JSON.parse(jsonString): 在一个字符串中解析出JSON对象 var str = '[{"href":"baidu.com",&quo ...
- 武汉科技大学ACM :1001: A + B Problem
Problem Description Calculate A + B. Input Each line will contain two integers A and B. Process to e ...
- linux int to string 方法
最近从windows 移植程序的时候发现to_string()函数在linux 中不能用,网上找了几种方法,觉得使用stringstream对象来实现类型转化比较好一点. 你只需在你工程中加入下面的t ...
- 莫队算法学习笔记【BZOJ2038:小Z的袜子】【SPOJ3267:D-query】
很久以前傻乎乎地看来源奇怪的资料的时候被各种曼哈顿弄晕了. 然后现在学会的是分块方法.另新创一个分块方法. 让我们考虑这样一个区间询问问题…… 它有如下的性质: 0,n个数,Q个询问. 1,它没有修改 ...
- .NET winform 在listview中添加progressbar
找了好长时间没找到,后来索性自己写了一个: 首先,在往listview加载数据的事件里添加progressbar: foreach (string d in arr) { ; item = new L ...