C语言入门级教程 八

2024-06-09 21:18
文章标签 语言 教程 入门级

本文主要是介绍C语言入门级教程 八,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

C语言入门级教程                  icesongqiang


2016.12.05

总结

  1. 一维指针,二维指针以及行指针是不同的类型;

矩阵转置

/**矩阵转置
* 内部设置一个大的方阵,用来装用户的矩阵,
* 只在输入输出时按照用户的长,宽输出
* 两重循环,每次内循环执行交换功能
* @author icesongqiang 1204
*/ #include <stdio.h>
#include <time.h>
#include <stdlib.h>
#include <malloc.h>int **arrGene(int row, int col);
int makeArr(int **ppArr, int row, int col);
int printArr(int **ppArr, int row, int col);
int transArr(int **ppArr, int row, int col);
int arrFree(int **ppArr, int row);// 动态分配矩阵 
// 为了保证不越界,申请一个方阵,边长为矩阵的长和宽中大的一个
int **arrGene(int row, int col)
{int max = (row > col ? row : col);int **ppArr = (int **)malloc(max*sizeof(int*));for (int i = 0; i < row; ++i)*(ppArr+i) = (int *)malloc(max*sizeof(int));return ppArr;
}// 填充数据
int makeArr(int **ppArr, int row, int col)
{srand((unsigned int)time(NULL));for (int i = 0; i < row; ++i){for (int j = 0; j < col; ++j)*(*(ppArr + i) + j) = rand() % 100;  // 限定范围在100之内}return 0;
}// 打印二维数组元素
int printArr(int **ppArr, int row, int col)
{   for (int i = 0; i < row; ++i){for (int j = 0; j < col; ++j)printf("%d\t", *(*(ppArr + i) + j));printf("\n");}return 0;
}// 转置
int transArr(int **ppArr, int row, int col)
{int max = (row > col ? row : col);int tmp = 0;for (int i = 0; i < max; ++i){for (int j = i + 1; j < max; ++j){tmp = *(*(ppArr + i) + j);*(*(ppArr + i) + j) = *(*(ppArr + j) + i);*(*(ppArr + j) + i) = tmp;}       }return 0;
}// 释放内存
int arrFree(int **ppArr, int row, int col)
{int max = (row > col ? row : col);if (ppArr == NULL) return 0;for (int i = 0; i < max; ++i)free(*(ppArr+i));free(ppArr);
}int main()
{const int row = 5;const int col = 4;int **ppArr=arrGene(row, col);makeArr(ppArr, row, col);printf("before trans.ing:\n");printArr(ppArr, row, col);transArr(ppArr, row, col);printf("after trans.ing:\n");printArr(ppArr, col, row);system("pause");return 0;
}

杨辉三角

#include<math.h>
#include<stdio.h>
int f(int n)
{int sum=1,i;if(n==0)  return(1);else{for(i=1;i<=n;i++){sum*=i;}return(sum);}
}
void g(int *p,int n)
{int i,j,k=0;for(i=0;i<=n-1;i++){for(j=0;j<=i;j++){*(p+k)=f(i)/(f(j)*f(i-j));k++;}}
}
int main()
{printf("Enter num of row\n");int i,j,k,m,n=0;scanf("%d",&m);int a[100];int *p=a;g(p,m);for(i=1;i<=m;i++){for(j=0;j<=m-i;j++)  printf("   ");for(k=1;k<=i;k++)    {printf("%-4d  ",a[n]);n++;}printf("\n");}return 0;
}

这篇关于C语言入门级教程 八的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1046319

相关文章

Window Server创建2台服务器的故障转移群集的图文教程

《WindowServer创建2台服务器的故障转移群集的图文教程》本文主要介绍了在WindowsServer系统上创建一个包含两台成员服务器的故障转移群集,文中通过图文示例介绍的非常详细,对大家的... 目录一、 准备条件二、在ServerB安装故障转移群集三、在ServerC安装故障转移群集,操作与Ser

windos server2022的配置故障转移服务的图文教程

《windosserver2022的配置故障转移服务的图文教程》本文主要介绍了windosserver2022的配置故障转移服务的图文教程,以确保服务和应用程序的连续性和可用性,文中通过图文介绍的非... 目录准备环境:步骤故障转移群集是 Windows Server 2022 中提供的一种功能,用于在多个

使用SQL语言查询多个Excel表格的操作方法

《使用SQL语言查询多个Excel表格的操作方法》本文介绍了如何使用SQL语言查询多个Excel表格,通过将所有Excel表格放入一个.xlsx文件中,并使用pandas和pandasql库进行读取和... 目录如何用SQL语言查询多个Excel表格如何使用sql查询excel内容1. 简介2. 实现思路3

Go语言实现将中文转化为拼音功能

《Go语言实现将中文转化为拼音功能》这篇文章主要为大家详细介绍了Go语言中如何实现将中文转化为拼音功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 有这么一个需求:新用户入职 创建一系列账号比较麻烦,打算通过接口传入姓名进行初始化。想把姓名转化成拼音。因为有些账号即需要中文也需要英

龙蜥操作系统Anolis OS-23.x安装配置图解教程(保姆级)

《龙蜥操作系统AnolisOS-23.x安装配置图解教程(保姆级)》:本文主要介绍了安装和配置AnolisOS23.2系统,包括分区、软件选择、设置root密码、网络配置、主机名设置和禁用SELinux的步骤,详细内容请阅读本文,希望能对你有所帮助... ‌AnolisOS‌是由阿里云推出的开源操作系统,旨

Go语言使用Buffer实现高性能处理字节和字符

《Go语言使用Buffer实现高性能处理字节和字符》在Go中,bytes.Buffer是一个非常高效的类型,用于处理字节数据的读写操作,本文将详细介绍一下如何使用Buffer实现高性能处理字节和... 目录1. bytes.Buffer 的基本用法1.1. 创建和初始化 Buffer1.2. 使用 Writ

深入理解C语言的void*

《深入理解C语言的void*》本文主要介绍了C语言的void*,包括它的任意性、编译器对void*的类型检查以及需要显式类型转换的规则,具有一定的参考价值,感兴趣的可以了解一下... 目录一、void* 的类型任意性二、编译器对 void* 的类型检查三、需要显式类型转换占用的字节四、总结一、void* 的

PyTorch使用教程之Tensor包详解

《PyTorch使用教程之Tensor包详解》这篇文章介绍了PyTorch中的张量(Tensor)数据结构,包括张量的数据类型、初始化、常用操作、属性等,张量是PyTorch框架中的核心数据结构,支持... 目录1、张量Tensor2、数据类型3、初始化(构造张量)4、常用操作5、常用属性5.1 存储(st

Java操作PDF文件实现签订电子合同详细教程

《Java操作PDF文件实现签订电子合同详细教程》:本文主要介绍如何在PDF中加入电子签章与电子签名的过程,包括编写Word文件、生成PDF、为PDF格式做表单、为表单赋值、生成文档以及上传到OB... 目录前言:先看效果:1.编写word文件1.2然后生成PDF格式进行保存1.3我这里是将文件保存到本地后

windows系统下shutdown重启关机命令超详细教程

《windows系统下shutdown重启关机命令超详细教程》shutdown命令是一个强大的工具,允许你通过命令行快速完成关机、重启或注销操作,本文将为你详细解析shutdown命令的使用方法,并提... 目录一、shutdown 命令简介二、shutdown 命令的基本用法三、远程关机与重启四、实际应用