c语言数组小谈


#include <stdio.h>
#include <stdlib.h>
#define N 5
int main() {
double score[5];
int i;
for (i = 0; i< N ;i++)
{
printf("请输入第%d门课的成绩:",i+1);
scanf("%lf",&score[i]);
}
printf("---------------------\n");
int j;
for (j = 0; j< N ;j++)
{
printf("第%d门课的成绩为%.2lf\n",j+1,score[j]);
}
return 0;
}
综合的小练习
#include <stdio.h>
#include <stdlib.h>
//宏定义布尔类型
#define BOOL int
#define TRUE 1
#define FALSE 0
int main() {
int arr[] = {8,4,2,1,23,344,12};
// 循环输出数组的值
int length;
length = sizeof(arr)/sizeof(arr[0]);
int i;
for (i=0;i<length;i++) {
printf("数组第%d个元素值为%d\n",i+1,arr[i]);
}
// 求数组中所有元素的和与平均值
double sum = 0;
double average;
for (i=0;i<length;i++) {
sum += arr[i];
}
average = sum / length;
printf("数组元素的和为:%.2lf\n",sum);
printf("数组元素的平均值为:%.2lf\n",average);
// 输入数值判断是否存在数组中,循环五次
int guessNum;
int count = 0;
BOOL isInArray;
while (count < 5) {
printf("请输入数值:");
scanf("%d",&guessNum);
isInArray = FALSE;
for (i=0;i<length;i++) {
if (guessNum == arr[i]) {
isInArray = TRUE;
break;
}
}
if (isInArray) {
printf("输入的数值在数组中\n");
} else {
printf("输入的数值不在数组中\n");
}
count++;
}
return 0;
}
冒泡排序
#include <stdio.h>
#include <stdlib.h>
//宏定义布尔类型
#define SIZE 5
int main() {
// 循环录入5个整型数字,进行降序排列后输出
// 冒泡排序
int arr[SIZE] = {};
int i;
printf("请输入5个数字:\n");
for (i = 0;i<SIZE;i++) {
scanf("%d",&arr[i]);
}
for (i=0;i<SIZE;i++) {
printf("输入第%d个数字为:%d\n",i,arr[i]);
}
// 进行冒泡排序,降序排列,大的排在前面,小的排在后面
bubble_sort(arr,SIZE);
printf("降序排序后的顺序为:\n");
for (i=0;i<SIZE;i++) {
printf("输入第%d个数字为:%d\n",i,arr[i]);
}
return 0;
}
// 冒泡函数
void bubble_sort(int a[],int n) {
int i,j,temp;
for (i=0;i<n-1;i++) { // 只需要n-1轮
// 每一轮的比较
for (j=0;j<n-1-i;j++) { // 每一轮比较的次数都会越来越少
// 核心的判断
if (a[j] < a[j+1]) {
// 交换位置,大的排在前面
temp = a[j];
a[j] = a[j+1];
a[j+1] = temp;
}
}
}
}
删除真心费劲,感觉还是php操作数组更加便捷。
#include <stdio.h>
#include <stdlib.h>
int main() {
// 数组删除元素
int count = 5;
double powers[] = {42322,25771,40907,41234,40767};
double deletePower; // 用户要删除的战力值
int deleteIndex = -1; // 要删除的战力值的下标
int i;
printf("请输入要删除的战力值:\n");
scanf("%lf",&deletePower);
for (i= 0;i<count;i++) {
if (deletePower == powers[i]) {
// 记录下标
deleteIndex = i;
break;
}
}
// 判断是否找到
if (deleteIndex >=0) {
// 从下标开始,后面一个覆盖前面一个数字
for (i = deleteIndex ; i <count -1;i++) {
powers[i] = powers[i+1];
}
} else {
printf("很遗憾,没有找到要删除的战力值");
}
for (i=0;i<count-1;i++) {
printf("第%d个元素为:%.2lf\n",i,powers[i]);
}
return 0;
}
二维数组


#include <stdio.h>
#include <stdlib.h>
int main() {
// 使用二维数组表示学生的成绩,并展示
double scores[4][3] = {
{98,67,93},
{88,87,93},
{98,65,93},
{68,67,93}
};
int i,j;
// 使用双循环输出
for (i = 0;i<4;i++) {
for (j=0;j<3;j++) {
printf("%.2lf\t",scores[i][j]);
}
printf("\n");
}
return 0;
}
不如php灵活。
c语言数组小谈的更多相关文章
- c语言数组小练习
//查找数组中最大的值: #include<stdio.h> int main01() { , , , , , , , , , ,,}; ]; int i; ;i < ]);i++) ...
- javascript数组浅谈1
最近心血来潮要开始玩博客了,刚好也在看数组这块内容,第一篇就只好拿数组开刀了,自己总结的,有什么不对的地方还请批评指正,还有什么没写到的方面也可以提出来我进行完善,谢谢~~ 首先,大概说说数组的基本用 ...
- javascript数组浅谈2
上次说了数组元素的增删,的这次说说数组的一些操作方法 join()方法: ,,] arr.join("_") //1_2_3 join方法会返回一个由数组中每个值的字符串形式拼接而 ...
- Swift语言 1小时速学教程
本文由 张渊杰 (网名寂静)编写 Swift语言 1小时速学教程 写在前面的话 有些人可能想, 呵呵, 1小时学一门语言, 你不是搞笑吧, 我想说, 是的, 完全可以, 就要看你怎么学了 要想在1小时 ...
- C语言数组
在C语言中,对于三维或三维以上数组的使用并没有很好的支持,而且使用率也非常的低,后面会对三维数组做一些简单的分析,这篇文章主要以二维数组来探讨一些C语言中数组使用的相关概念和技巧. 1 一个var[i ...
- C语言数组:C语言数组定义、二维数组、动态数组、字符串数组
1.C语言数组的概念 在<更加优美的C语言输出>一节中我们举了一个例子,是输出一个 4×4 的整数矩阵,代码如下: #include <stdio.h> #include &l ...
- Go语言数组和切片的原理
目录 数组 创建 访问和赋值 切片 结构 初始化 访问 追加 拷贝 总结 数组和切片是 Go 语言中常见的数据结构,很多刚刚使用 Go 的开发者往往会混淆这两个概念,数组作为最常见的集合在编程语言中是 ...
- DevStore开发人员服务有奖征文:小谈新浪微博开放平台
DevStore开发人员服务有奖征文:小谈新浪微博开放平台 笔者接入新浪微博开发平台也有一段时间了,对整个平台的接入也算比較熟悉,新浪提供了统一的API接口,能够让开发人员更方便的使用API来实现自己 ...
- C语言-数组篇
C语言数组 一.数组的概念 用来存储一组数据的构造数据类型 特点:只能存放一种类型的数据,如全部是int型或者全部是char型,数组里的数据成为元素. 二.数组的定义 格式: 类型 数组名[元素个数] ...
随机推荐
- Jquery 重置表单
1.重置表单回初始状态 $('#fromid')[0].reset(); 此方法一步到位,不需要一个个的去赋值为空
- TPL详解、使用
使用时注意点 private async void button5_Click(object sender, EventArgs e) { /* string i1 = await F1Async() ...
- damn selenium
Selenium+Python [ˈpaɪθən] 0.Selenium安装 pip install selenium 1.打开了浏览器,后边什么都不干了 需要将浏览器驱动放置在环境变量的目录下. 2 ...
- vue-cli3+typescript+router
vue基于类的写法,和基于对象的写法并不一致.使用vue-cli3创建的项目,src目录下的文件结构并没有多大区别,store.router.app.view.components.aeests该有的 ...
- JavaScript实现复选框的全选、不选、反选
方法一: <html> <head> <meta charset="utf-8"> <title>无标题文档</title&g ...
- CorelDRAW 2019新品发布,行业大咖就差你了
近日,由苏州思杰马克丁软件公司独家代理的CorelDRAW 2019将在苏州开启一场设计上的饕餮盛宴,您报名了么? 不管您是专业的设计师还是热爱设计的狂热粉丝,都将有机会参与到我们的活动中,为了这场盛 ...
- 前端自动化构建yeoman
前端自动化可分为: yo(脚手架工具).grunt(构建工具).bower(包管理器). OMAN的特性 http://yeoman.io/learning/ 闪电般的初始化:项目开始阶段,可以基 ...
- 如何修改wifi为家庭网络
一不小心手快,把新链接的 wifi 选择成“公用网络”了,使用过程中导致某些应用无法联网,那个恨呐!!! 幸好,咱们可以进行手工更改,哈哈,跟哥一起来操作: 进入”网络与共享中心界面": 选 ...
- priority_deque作为Timer时间队列底层容器的一些思考
https://www.bbsmax.com/A/D854VkZxzE/ 设置底层容器可以分离出两个逻辑上独立的问题: >如何存储构成优先级队列(容器)的实际元素,以及>如何组织这些元素以 ...
- 【真·干货】MySQL 索引及优化实战
热烈推荐:超多IT资源,尽在798资源网 声明:本文为转载文章,为防止丢失所以做此备份. 本文来自公众号:GitChat精品课 原文地址:https://mp.weixin.qq.com/s/6V7h ...