C语言练习
闲看庭花
这个作者很懒,什么都没留下…
展开
-
C语言_CL_求第N个斐波那契数
2020年9月19日 07:40:42fib1:O (2^n)fib2:O(n)VS2019是32位的,Dev C++是64位的。#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <time.h>int fib1(int N){ if (N == 1 || N == 2) return 1; return fib1(N - 1) + fib1(N - 2);}int fib2(int n原创 2020-09-19 16:11:44 · 317 阅读 · 0 评论 -
C语言_递归_计算x的y次方
2020年9月18日 11:11:15/* 编写递归函数getPower计算x的y次方程序规定: x的y次方的整数形式, 当y<0时,返回0*//* 编写递归函数getPower计算x的y次方程序规定: x的y次方的整数形式, 当y<0时,返回0*/#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>int getPower(int x, int y){ if (y < 0) return 0; else原创 2020-09-18 11:13:56 · 7436 阅读 · 2 评论 -
C语言_x数组排序(指针法)_输出到指定文件
时间:2020年9月14日 17:34:11/*编写一个 void sort(int x,int n)实现将 x 数组中的 n 个数据从大到小排序。 n 及数组元素在主函数中输入。将结果显示在屏幕上并输出到指定文件中知识点:FILE的用法;排序;指针/#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>void sort(int* x, int n){ int i, j, k, t; for (i = 0; i < n -原创 2020-09-14 17:36:55 · 382 阅读 · 0 评论 -
C语言_ 从字符数组 s 中删除存放在 c 中的字符
时间:2020年9月14日 17:09:31/*下面程序的功能是从字符数组 s 中删除存放在 c 中的字符。 */#include <stdio.h>int main(void){ char s[80], c; int j, k; printf("\nEnter a string: "); gets(s); printf("\nEnter a character: "); c = getchar(); for (j = k = 0; s[j] != '\0'; j++原创 2020-09-14 17:13:55 · 4895 阅读 · 0 评论 -
C语言_字符串反序输出
时间:2020年9月14日 15:50:02/*完善程序,实现将输入的字符串反序输出,如输入 windows 输出 swodniw。 */#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <string.h>int main(void){ char c[200], c1; int i, j, k; printf("Enter a string: "); scanf("%s", c); k原创 2020-09-14 15:54:05 · 4177 阅读 · 0 评论 -
C语言_inverse逆序_二维数组
时间:2020年9月14日 11:39:56以 二维数组 角度// 写一个 inverse 函数,此函数的功能是: 将一个 3*4 的二维数组中的值按逆序重新存放。// 用二维数组的角度#define M 3 // M 行数,N列数#define N 4#include <stdio.h>void inverse(int a[][N], int b[][N]){ int i, j; for (i = 0; i < M; i++) for (j = 0; j &原创 2020-09-14 11:46:07 · 6666 阅读 · 0 评论 -
C语言_3名学生4科成绩
时间:2020年9月14日 11:31:39/*通过键盘输入 3 名学生 4 门课程的成绩,分别求每个学生的平均成绩和每门课程的平均成绩。要求所有成绩均放入一个 4 行 5 列的数组中,输入时同一人数据间用空格,不同人用回车其中最后一列和最后一行分别放每个学生的平均成绩、每门课程的平均成绩及班级总平均分。 *//*通过键盘输入 3 名学生 4 门课程的成绩,分别求每个学生的平均成绩和每门课程的平均成绩。要求所有成绩均放入一个 4 行 5 列的数组中,输入时同一人数据间用空格,不同人用回车其原创 2020-09-14 11:39:06 · 7266 阅读 · 0 评论 -
C语言_杨辉三角形_二维数组循环
时间:2020年9月13日 17:17:16知识点:杨辉三角形(B站李永乐),二维数组的存储,如何循环遍历二维数组//编程打印直角杨辉三角形//知识点:杨辉三角形,二维数组的循环#include <stdio.h>int main(void){ int i, j, a[6][6]; for (i = 0; i <= 5; i++) { a[i][i] = 1; a[i][0] = 1; } for (i = 2; i <= 5; i++) // 从原创 2020-09-13 17:22:30 · 975 阅读 · 1 评论 -
C语言_将 4×4 的数组逆时针旋转 90 度后输出
时间:2020年9月6日 16:27:00/*下面程序的功能是将一个 4×4 的数组进行逆时针旋转 90 度后输出,要求原始数组的数据随机输入,新数组以 4 行 4 列的方式输出,请在空白处完善程序。 *//*下面程序的功能是将一个 4×4 的数组进行逆时针旋转 90 度后输出,要求原始数组的数据随机输入,新数组以 4 行 4 列的方式输出,请在空白处完善程序。 */#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>int原创 2020-09-06 16:27:55 · 2965 阅读 · 0 评论 -
C语言_求完数
2020年9月5日 11:11:31/*一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如 6=1+2+3,编程找出 1000 以内的所有完数。 */两种方法:方法一的年代比较久远,而且算法思维比较复杂和抽象,数值范围大的时候,比如10w,耗时就是方法二的2倍。------------------------------分界线-------------------------------方法一:/*一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如 6=1+2+3,编程找出原创 2020-09-05 11:22:08 · 31983 阅读 · 4 评论 -
C语言_101到200之间有多少个素数
时间:2020年9月4日 17:20:45/*判断101-200之间有多少个素数,并输出所有素数及素数的个数。程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除, 则表明此数不是素数,反之是素数。另一种思路:素数:大于1,并且除了1 和本身以外不能被其他数整除,这样的数为素数编程:i > 1 && i % for( j = 2 ; j < i ;j ++) == 0 不是素数 反之为素数*/说明:为了区分两种代码执行的效原创 2020-09-04 17:47:12 · 2545 阅读 · 0 评论 -
C语言_兔子问题(斐波那契数列)
2020年9月2日 10:35:31// 古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子// 小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?第一道代码:// 古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子// 小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?#include <stdio.h>#include <stdlib.h>int main(void){ lo原创 2020-09-02 10:46:54 · 7383 阅读 · 0 评论 -
C语言_99 乘法表
昨天的练习,今天上传,目的:备忘。现在:2020年9月2日 08:58:24一、完整版// 输出 9 * 9 乘法口诀。共9行9列, i 控制行, j 控制列。#include <stdio.h>#include <stdlib.h>int main(void){ int i, j, result; // for循环里: 变量--> 初始化,取值范围,如何逻辑操作 for (i = 1; i < 10; i++) // 注意:这里全部是 i,原创 2020-09-02 10:33:43 · 12406 阅读 · 5 评论 -
C语言_栈
时间:2020年8月26日 18:06:37目的:学习栈相关的知识#include <stdio.h>#include <malloc.h>#include <stdlib.h>#include <stdbool.h>typedef struct Node{ int data; struct Node* pNext;}NODE, * PNODE;typedef struct Stack{ PNODE pTop; PNODE pB原创 2020-08-26 18:08:33 · 77 阅读 · 0 评论 -
C语言_链表增删内容
时间:2020年8月26日 11:42:41重点:流程–功能–试数#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <malloc.h>#include <stdlib.h>#include <stdbool.h>typedef struct Node{ int data; // 数据域 struct Node* pNext; // 指针域}NODE, *PNOD原创 2020-08-26 11:44:38 · 111 阅读 · 0 评论 -
C语言_数据结构第一课_连续存储数组
时间:2020年8月24日 15:13:26#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <stdbool.h>#include <malloc.h>#include <stdlib.h>struct Array // 定义了一个数据类型,数据类型名字叫 struct Array ,这个类型含有 3 个成员{ int* pBase; // 存储的是数组第一个元素的地址原创 2020-08-24 15:13:57 · 157 阅读 · 0 评论 -
C语言_最简单的指针(3)(添加子函数)
/*时间:2020年8月22日 18:05:29目的:最简单的指针(3) (添加子函数)*/# include <stdio.h>void Show_Array(int * p, int len){ p[0] = -1; // p[0] = * p p[2] = -3;}void Traverse(int * p, int len){ int i = 0; for(i = 0; i < len; ++i) printf("%d\n", p[i]);}原创 2020-08-22 18:07:30 · 391 阅读 · 0 评论 -
C语言_最简单的指针(2)
/*时间:2020年8月22日 16:55:38目的:最简单的指针(2)*/# include <stdio.h>int main(void){ int a[5] = {1,2,3,4,5}; printf("%p\n", a+1); printf("%p\n", a+2); printf("%d\n", *a+3); // a[3] == * (3 + a); printf("%d\n", a[3]); return 0; }//---------原创 2020-08-22 17:36:06 · 122 阅读 · 0 评论 -
C语言_最简单的指针_复习
/*时间:2020年8月22日 12:10:31目的:复习指针的概念*/# include <stdio.h>int main(void){ int * p; // p 是个变量名字, int * 表示该 p 变量只能存储 int 类型变量的地址 int i = 10; int j; p = &i; j = *p; printf("i = %d, j = %d, *p = %d\n", i, j, *p); return 0; }//原创 2020-08-22 12:14:07 · 159 阅读 · 0 评论 -
C语言_郝斌课程_学生管理系统
# define _CRT_SECURE_NO_WARNINGS//用 scanf_s 会出错# include <stdio.h># include <malloc.h>struct Student{ int age; float score; char name[100];};int main(void){ int len; struct Student* pArr; int i; int j; struct Student t; pri原创 2020-08-20 17:33:11 · 274 阅读 · 0 评论 -
C语言_指针变量的运算
/*时间:2020年8月19日 06:23:20目的:指针变量的运算*/# include <stdio.h>int main(void){ int i = 5; int j = 10; int * p = &i; int * q = &j; int a[5]; p = &a[1]; q = &a[4]; printf ("p 和 q 所指向的单元相隔 %d 个单元\n", q-p) ; // p - q 没有实际意义原创 2020-08-19 06:24:20 · 400 阅读 · 0 评论 -
C语言_指针和下标
/*时间:2020年8月19日 05:21:43目的:指针与下标*/# include <stdio.h>void f( int * pArr, int len){ pArr[3] = 88; // pArr[3] 和 a[3] 是同一个变量 }void g( int * pArr, int len) // 地址 + 长度 { int i; for (i = 0; i < len; ++i) printf ("%d ", *(pArr + i));原创 2020-08-19 06:13:23 · 1061 阅读 · 0 评论 -
C语言_指针和数组
/*时间:2020年8月18日 10:45:23目的:指针与数组*/# include <stdio.h>int main(void){ int a[5]; // a 是数组名,5 是数组元素的个数 //元素就是变量 a[0] 到 a[4], 没有 元素 a[5] int b[5]; // a = b; // errror : a 是常量 printf ("%#X\n", &a[0]) ; // a[0]元素的地址以16进制输出原创 2020-08-18 10:51:18 · 154 阅读 · 0 评论 -
C语言_指针_互换数字
/*时间:2020年8月18日 06:48:29目的:指针_互换数字*/# include <stdio.h>void exchange(int* , int *); //声明函数一般不写参数,记得加分号; int main(void){ int a = 3; int b = 5; // exchange(*p, *q); 是错误的 // exchange(a, b); 也是错误的 exchange(&a, &b); // &原创 2020-08-18 08:23:38 · 1160 阅读 · 0 评论 -
C语言_数组
时间:2020年8月17日 06:54:10目的:学习C语言数组内容#include <stdio.h>int main(void){ //没有初始化的数组被填充的是垃圾值 int a[5]; int i; scanf_s("%d", &a[0]); //手写填充 a[0] 位置上的元素 printf("a[0] = %d\n", a[0]); scanf_s("%d", &a[3]); //手写填充 a[3] 位置上的元素 printf("a[3原创 2020-08-17 06:57:20 · 225 阅读 · 0 评论 -
判断一个数是不是回文数
/*时间:2020年8月16日 10:14:26功能:目的:判断回文数*/# include <stdio.h>int main(void){ int val; //输入值 int m; //存放输入值的容器,用于逻辑判断 int sum = 0; //反方向列出 val的值 printf("请输入您需要判断的数字:"); scanf("%d", &val); m = val; while(m) //当 m=1时,条件原创 2020-08-16 11:04:48 · 150 阅读 · 0 评论 -
C语言_强制类型转化_浮点数的存储
/*时间: 2020年8月16日 06:40:17功能: 强制类型转化 ,浮点数的存储目的: 1+1/2+1/3+…+1/100的和*/# include <stdio.h>int main(void){ float i, sum = 0; //如果 int i,float sum = 0; for (i=1; i<=100; i++) sum = sum + 1 / i; //这里要1.0/i或者强制类型转化 1/(float)(i) printf("s原创 2020-08-16 07:38:29 · 2130 阅读 · 0 评论 -
C语言_1到100之间的数的计算
C语言_1到100之间的数的计算/*时间:2020年8月15日 17:36:15目的:关于1到100之间的数的计算练习*/#include <stdio.h>int main(void){ int i; //列举1到10之间能被3整除的数 for (i = 3; i <= 10; ++i) if (i % 3 == 0) printf("1到10之间能被3整除的数 i = %d\n\n", i); //求出1到10之间能被3整除的数之和 int sum =原创 2020-08-15 17:48:28 · 2250 阅读 · 0 评论