c语言中sor函数,用C语言实现SOR方法.doc
用C语言实现SOR方法
#include "stdlib.h"
#include "stdio.h"
#include "conio.h"
#include "string.h"
#include "math.h"
#define N 100
void cre_sch int n,float *w,float a[N][N],float b[N],float lw[N][N],float fw[N] int i,j,k; float tmp1[N][N],tmp2[N][N],rev[N][N],tmp; for i 0;i n;i++ for j 0;j n;j++ if j i tmp1[i][j] a[i][j]; tmp2[i][j] 1-*w *a[i][j]; rev[i][j] 1; else if j i tmp1[i][j] *w*a[i][j]; tmp2[i][j] 0; rev[i][j] 0; else tmp1[i][j] 0; tmp2[i][j] -*w*a[i][j]; rev[i][j] 0; for j 0;j n;j++ for i 0;i n;i++ for k 0;k j;k++ if i j continue; if i j rev[i][k]* 1/tmp1[j][j]; continue; rev[i][k]+ rev[j][k]* -tmp1[i][j] ; for i 0;i n;i++ for j 0;j n;j++ tmp 0.0; for k 0;k n;k++ tmp+ rev[i][k]*tmp2[k][j]; lw[i][j] tmp; for i 0;i n;i++ tmp 0.0; for k 0;k n;k++ tmp+ *w*rev[i][k]*b[k]; fw[i] tmp; void Table int n,float a[N][N],float b[N],float *w int i,j;
float lw[N][N],fw[N];
printf "Please input the matrix A by row!\n" ; /*请输入矩阵的行*/ for i 0;i n;i++ printf "Row %d:",i+1 ;
for j 0;j n;j++ scanf "%f",&a[i][j] ; printf "Please input the vector b:" ; /*请输入向量b*/
for i 0;i n;i++ scanf "%f",&b[i] ; printf "Input w:" ; scanf "%f",w ; cre_sch n,w,a,b,lw,fw ; printf "\nThe matrix A and vector b:\n" ; /*矩阵A和向量b*/
for i 0;i n;i++ for j 0;j n;j++ printf "%10.5f",a[i][j] ; printf "%10.5f",b[i] ; printf "\n" ; printf "\nThe SOR iterative scheme matrix Lw & vector fw :\n" ;/*SOR迭代 矩阵lw和向量fw */ for i 0;i n;i++ for j 0;j n;j++ printf "%10.5f",lw[i][j] ; printf "%10.5f",fw[i] ; printf "\n" ; void init_vec int n,float x[N] int i; printf "\nPlease input the initial iteration vector x:" ; /*请输入初始迭代向量x*/ for i 0;i n;i++ scanf "%f",&x[i] ; printf "\nThe initial iteration vector x:\n" ; /*初始迭代向量x*/ for i 0;i n;i++ printf "%10.5f",x[i] ; printf "\n" ; void sor int n,float a[N][N],float b[N],float x[N],float w int i,j,k; float p; /*精确度*/ float tmp1,tmp2,x2[N];
printf "输入精确值:\n" ; scanf "%f",&p ; for k 0;;k++ for i 0;i n;i++ x2[i] x[i]; for i 0;i n;i++ tmp1 0.0; tmp2 0.0; for j 0;j i;j++ tmp1+ a[i][j]*x[j];
c语言中sor函数,用C语言实现SOR方法.doc相关推荐
- c语言中time函数作用,C语言中时间的基本用法小结
前言 在我学的这些编程语言中,总是记不住它们的时间处理方式,每次用到时都要重新看,所以想着在这里记录下来,也方便用到时查找,也方便有需要的朋友们参考. time_t和struct tm 在C语言中用t ...
- C语言中within函数,vfprintf() - C语言库函数
C库函数 int vfprintf(FILE *stream, const char *format, va_list arg)发送格式化输出到一个流使用传递给它的参数列表. 声明 以下是vfprin ...
- c语言中fopen_s函数,关于C语言中从文件读取数据时,fopen,fopen_s和fscanf,fscanf_s的函数用法(函数的用法有很大区别)...
首先这都是针对由于VS软件的设置,一些函数的需要在函数名后面加"_s"才能使用. (或者最直接的方法程序开头加#pragma warning(disable:4996) 就什么问题 ...
- c语言中switch函数6,C语言萌新,想问问如何让下面那个switch函数输出的结果继续...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include #include int main() { char sex,sports,diet; float faHeight,moHeight, ...
- python语言中print函数的作用_python中print()方法有什么
python中print()方法有什么 发布时间:2020-11-11 13:50:08 来源:亿速云 阅读:91 作者:小新 这篇文章给大家分享的是有关python中print()方法有什么的内容. ...
- php seekdir,C++_详解C语言中telldir()函数和seekdir()函数的用法,C语言telldir()函数:取得目录流 - phpStudy...
详解C语言中telldir()函数和seekdir()函数的用法 C语言telldir()函数:取得目录流的读取位置头文件: #include 定义函数: off_t telldir(DIR *dir ...
- _nop_在c语言里什么作用,单片机c语言中nop函数的使用方法和延时计算
原标题:单片机c语言中nop函数的使用方法和延时计算 标准的C语言中没有空语句.但在 的C语言编程中,经常需要用几个空指令产生短延时的效果. 这在汇编语言中很容易实现,写几个nop就行了. 在C51中 ...
- C语言一定要有函数声明吗,1 什么是C语言的隐式函数声明在C语言中,函数在调用前不一定非要声明。如果没有声明,那么编译器会自动按照一种隐式声明的规则,为调用函数的C代码产生汇编代码。下...
1 什么是C语言的隐式函数声明 在C语言中,函数在调用前不一定非要声明.如果没有声明,那么编译器会自动按照一种隐式声明的规则,为调用函数的C代码产生汇编代码.下面是一个例子: int main(int ...
- c语言中getenv的作用,C语言putenv()函数和getenv()函数的使用详解
C语言putenv()函数和getenv()函数的使用详解 C语言putenv()函数:改变或增加环境变量头文件: #include4 定义函数: int putenv(const char * st ...
最新文章
- Python 实现图片质量比较之PSNR和SSIM
- switch里能不能用continue?
- [转]自定义序列化对象
- PHP常用的自定义函数
- js计算数组中每个元素出现的次数(2种方法)
- Codeforces 576D. Flights for Regular Customers(倍增floyd+bitset)
- php与ipa接口登录验证失败,thinkPHP5.0开发微信小程序登录接口signature验证失败
- 软件测试工程师如何编写一篇杀手级简历?
- DBCP与C3P0连接池组件
- 10亿级流数据交互查询,为什么抛弃MySQL选择VoltDB?
- 新安装 Ubuntu 12.10 需要做的 10 件事(转)
- CODEVS 3027 线段覆盖2
- python全栈开发工程师_Python Web全栈开发工程师修炼之路
- TUIO学习笔记1-TUIO 1.1 Protocol Specification协议规范/标准
- 精神分析理论-弗洛伊德
- js转化base64
- 为什么越来越多的绘图员开始用云渲染来渲图?
- 文档印刷体中字符类符号
- linux 终止作业任务命令,Linux中作业控制命令
- 2022 计网复习计算题【太原理工大学】
热门文章
- NYOJ 655 光棍YY(java)
- 机器人创客教育在哪里
- log4j支持同时按日期和文件大小分割日志
- C语言中数字转字符和字符转数字的函数
- Nginx 核心知识点
- 华为荣耀Linux笔记本评测,一物多用—荣耀MagicBook笔记本充电测试报告
- 关于基恩士PLC程序重命名后注释丢失问题处理方式
- Linux 下终于成功安装 pytorch !( Virtualenv 和 Anaconda 安装)
- DS1320原理和C51代码实现解读
- 绝地求生测试服画面优化软件,绝地求生超级助手怎么调画面 教你一键优化画面...