- 博客(62)
- 收藏
- 关注
原创 如何定义和引用二维数组
以上定义了一个float型的二维数组,第1维有3个元素,第2维有6个元素。每一维的长度分别用一对方括号括起来。二维数组定义的一般形式为 类型说明符 数组名【常量表达式】【常量表达式】(2)所有数据写在一个花括号内,按数组元素在内存中的排列顺序对各元素赋初值。一.二维数组 常称为矩阵,把二维数组写成行和列的排列形式。(4)第一维的长度可以不指定,但是第二段长度不能省。(1)分行给二维数组赋初值。三.怎么引用二维数组的元素。数组名【下标】【下标】(3)对部分元素赋初值。二.怎么定义二维数组。
2024-08-14 16:28:20
364
原创 一维数组---选择排序
选择法排序是交换法排序的改进方法 用于排序的双重循环中,每当a[i]>a[j]时,就交换 a[i]与 a[j],实际上不需要每次都交换,只要增设一个变量 k,用于记录每次较小数的下标,只需在本轮比较结束后,交换a(i)与a(k)即可。
2024-08-14 15:28:46
103
原创 数组---怎么样定义和引用数组
定义数组可以包括常量和符号常量如 int [ 3+5 ];定义数组时用到的“数组名[常量表达式]” 和引用数组元素时用的“数组名。数组是从内存中开辟一个空间,存放数组以int a [10]为例,如下。所以我们了解到数组的基本定义为 类型符 数组名 [常量表达式]数组开辟的空间是从【0】开始,所以不存在开辟一个数据的数组。(3)如果个数以确定,可以不定义数组长度,系统自动补充。[ 下标]”形式相同,但舍义不同。没有补充完的位置自动定义为0.将随机一组数据,按顺序排列。引用数组的元素表示形式为。
2024-08-14 15:22:54
347
原创 用for语句来实现循环
表达式2:是循环条件表达式,用来判定是否继续循环。在每次执行循环体前先执行此表达式,决定是否继续执行循环。表达式3:作为循环的调整,例如使循环变量增值,它是在执行完循环体后才进行的。表达式1:设置初始条件,只执行一次。可以为零个、一个或多个变量设置初值(如i-1)for(循环变量赋初值;for语句的一般形式为。
2024-08-11 22:07:40
130
原创 用switch实现多分支选择结构
等 级 grade定义为字符变量 ,从键盘输人一个大写字母, 赋给变量grade , switch得到grade 的值并把它和各case中给定的值 ( ' A ' ,' B ' ,' C ' ,’ D ' 之 一 )相比较 ,如果和其中之一相同,则执行该case 后面的语句(即printf 语句)。如果输人的宇符与' A',’B','C',‘D'都不相同,就执行default 后面的语句,输出“输人数据有错”的信息。后面跟的常量表达式必须是与表达式类型相同的常量值。后面的语句,直到遇到。
2024-07-17 10:51:11
215
原创 c语言-逻辑运算符和逻辑表达式
现在4的左侧为“<”,右侧为“一”运算 符,而“一”优先于“<”,因此应先进行“4一10”的运算,由于“!然 后 进 行 “ 4 一 1 ” 的 运 算 ,得 到 结 果 3 , 再 进 行 “ 8 < 3 ” 的 运 算 ,得 0 ,最 后 进行“1 && 0”的运算, 结果为0。C语言编译系统在表示逻 辑 运 算 结 果 时 ,用 数 值 1 代 表 “ 真 ” , 用 0代 表 “ 假 ” , 但 在 判 断 一 个 量 是 否 为“ 真 ” 时 ,以 0 代 表 “ 假”,以非0代表“真”。
2024-07-16 20:42:46
668
原创 c语言-if配合选择结构和嵌套结构
利用基本嵌套结构和if else配合,如中文if"如果"else"其他的''配合中文从上到下更好理解。if (a>b) //判断a是否大于b,是则进行大括号内的程序。if语句表示判断,基本形式为if(表达式)语句1.注意if的()中表达等价是要用 "==" 非"="else 语句m+1. //再次结束。else if (表达式 m)语句m。【// 将 a 和 b 的値 互換。若表达式为真,则进行表达语句1.else if(表达式) 语句2。3. if(表达式) 语句1。1.if(表达式) 语句1。
2024-07-15 10:00:07
401
原创 初识c语言——输入与输出(一)
一 认识基本头文件是 C 语言中的一条预处理指令。#include用于在编译之前将指定的头文件包含到当前的源文件中。<stdio.h>是标准输入输出头文件。它包含了例如printf(用于输出)和scanf(用于输入)等与输入输出操作相关的函数声明和宏定义。头文件中包含了众多的数学函数和常量的声明。sqrt()fabs()pow()sin()cos()tan()二。
2024-07-13 17:10:38
237
原创 初始c语言 语句
if-elseforwhiledo-whileswitchbreakswitchcontinuegoto空语句仅由一个分号组成,即;复合语句(块语句)用花括号{}括起来的一组语句,函数调用语句调用函数并加上分号。
2024-07-13 16:47:05
176
原创 初始c语言(2)运算符与表达式
2. 当`int`型与`float`或`double`型数据进行运算时,先把`int`型转换为`double`型,然后再进行运算,结果也是`double`型。`、取地址`&`、解引用指针`*`、正号`+`(作为正号时)、负号`-`(作为负号时)、自增`++`、自减`--`、按位取反`~`、`sizeof`等。12. 赋值运算符,如简单赋值`=`、复合算术赋值(`+=`、`-=`、`*=`、`/=`、`%=`等)、复合位运算赋值(`<<=`、`>>=`、`&=`、`^=`、`|=`等)。
2024-07-13 16:34:01
823
原创 初识c语言(1)
计算机语言的编写和解读都是遵循由上到下的顺序去解读代码(启用函数除外),之中数据的表现形式可以分为常量和变量。其中变量的字符变量中以"\n"为最主要的符号。使用一个变量或者常量时要对应好他们的基本类型。接着来认识来认识数据基本类型。
2024-07-13 16:16:00
106
原创 用尾插法创建链表
输入一系列字符以#作为结束标志,用尾插法创建链表并存储数据,并输出链表数据.如果输入的只有结束符,则输出empty list。链表所有数据,数据之间用空格分开。第一行输入一个字符串,以#结束。
2024-05-23 15:02:23
185
原创 链表长度和查找数据
题目描述有链表20->15->9->4->1,根据输入的查找位置,输出位置上的数据。再输出链表长度。输入1,则输出20,如果输入的数据小与1或者大于链表长度,则输出position error。然后输出链表长度length=5输入1输出20length=5#include<stdio.h>#include<stdlib.h>// 定义节点结构体typedef struct node{ int data;
2024-05-23 15:00:37
165
原创 用尾插法创建链表并删除一个指定位置的结点
输入一系列字符以-#作为结束标志,用尾插法创建链表并存储数据,然后在指定位置删除一个字符,并输出结果。链表所有数据(删除前、删除后)各占一行。第一行输入一一个字符串,以#结束。
2024-05-23 14:58:57
142
原创 尾插法创建链表并删除一个指定元素的结点
输入一系列字符以-#作为结束标志,用尾插法创建带头结点链表并存储数据,然后输入一个元素,删除该元素所在的结点,并输出结果。第一行输入一系列整数,以-1结束。删除后的链表,以空格分隔。
2024-05-23 14:57:02
277
原创 链表操作-查找结点
设计函数int locate (struct node * head,char x);,找到以head为头指针的链表中,数据域的值等于x的结点,并返回该结点的序号(即是第几个结点)。一行包含#的字符串,将以#前的每个字符为数据域的值创建多个结点,并将这些结点,利用尾插法链接成链表。#后还有一个字符,表示要在链表中查找数据域值为该字符的结点。所查找到的结点的序号。如果找不到这样的结点,则输出0。
2024-05-16 15:17:42
803
原创 实现一个拆分实数的整数和小数部分的函数指针
1) { // 错误处理,如果输入不是一个有效的浮点数。// 调用分割函数处理 x,并将结果存储到 intpart 和 fracpart。// 定义浮点数 x 和用于存储小数部分的浮点数 fracpart。// 找到一个合适的 n 值,使得 x 除以 n 不为 0。// 如果 x 与 n 的差值小于等于 1。// 将小数部分设置为 x 本身。// 声明一个分割浮点数为整数和小数部分的函数。// 将整数部分设置为 0。// 如果 x 小于 1。// 计算并设置小数部分。// 计算并设置整数部分。
2024-05-13 19:36:47
362
原创 互质数问题(利用辗转相除法)
int t = 0;if(y > x)t = x;x = y;y = t;t = y;y = x%y;x = t;*k = y;int main()int x;int y;int k;if(k==1)elsereturn 1;
2024-05-13 18:40:16
208
原创 【指针 函数】求最大公约数、最小公倍数以n组数据(每组两个)为例
main()int a,b;int k;i<=k;i++)if(b>a)t=a;a=b;b=t;r=a%b;while(r!=0)a=b;b=r;r=a%b;*gys=b;
2024-05-12 23:36:03
546
3
原创 链表所有节点和
#include"stdio.h"#include <stdlib.h>struct node{ int data; struct node *next; };void dellink(struct node *h); struct node * createlink(int k);int sum(struct node * h);main(){ struct node *p,*head=NULL; int d,s; scanf("%d",&d);
2024-05-12 15:12:08
259
2
原创 链表初步之找最大结点
/先假定第1个结点最大。//p指向第2个结点。//p指向第2个结点。//head指向再下一个要销毁的结点。//新结点的指针域,指向原来的第1个结点。//先假定第1个结点最大。//p指向要销毁的结点。//销毁p指向的结点。//让新结点成为第1个结点。//申请结点空间,创建新结点,并让p指向新结点。struct node //结点数据类型。//返回第1个结点的地址。//采用相同的方式创建6个结点,并且前插。//找到最大结点,将其地址传给pmax。//初始化结点数据域。
2024-05-09 14:53:40
900
原创 输出链表中第n个结点的数据
'#') { // 尾插法创建链表。// 释放链表的函数。if (head == NULL) { // 空链表。} else { // 非空链表。// 设置尾结点标志。// 定义结点数据类型。
2024-05-09 09:40:29
518
原创 动态链表头插法举例
/该函数按照头插法,创建4个结点的动态链表,并返回第1个结点的地址。//用头插法创建链表。struct node //结点数据类型。//释放资源,销毁链表中所有结点。
2024-05-08 13:51:43
394
原创 动态链表头插法
/该函数按照头插法,创建4个结点的动态链表,并返回第1个结点的地址。//用头插法创建链表。struct node //结点数据类型。//释放资源,销毁链表中所有结点。
2024-05-08 13:50:32
193
原创 有n个数,编写程序使其顺序向后移m个位置,使最后的m个数变成前面m个数
*指针p指向数组的最后一个元素*/p--)/*依次向后移动一个位置*/*p=*(p-1);printf("输入移动位置数:”);}/*最后一个元素移到数组的最前面*//*对于有size个元素的数组array,循环移动一个位置*/printf("请输人数的个数(<20个):");printf("输人%d 个数:",n);printf("移动以后:");/* 移动m次 */
2024-04-27 18:01:31
149
原创 使用指针实现常见排序算法选择排序,直接插入排序和冒泡排序
void insertSort(int * p,int n) /*直接插入排序*/void selectSort(int *p,int n) /*选择排序*/void bubbleSort(int *p,int n) /*冒泡排序/{ if(*(p+j)> *(p+j+1))/*交换逆序元素*//*将范围内最小元素交换到位置i*/
2024-04-27 17:54:37
334
原创 一维数组利用返回指针值的函数找最大值
printf("最大值是:%d\n",*p);/ *声明指针函数*/int *max(int n) /*定义指针函数*/i++) /*找最大值*/return &a[m];/*返回最大值元素的地址*//*m为最大值元素的下标 *//*max()函数返回最大值的地址*//*定义并初始化数组*/
2024-04-25 20:14:20
126
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人