网站首页 > 文章中心 > 其它

c语言设计线性函数

作者:小编 更新时间:2023-10-08 13:10:21 浏览量:196人看过

用c语言程序写一个函数,求线性代数方程组AX=b,要有通用性.非常感谢帮忙.

高斯-赛德尔迭代法

#include stdio.h

#include conio.h

#include alloc.h

#include math.h

#define N 100

float *GauseSeidel(float *a,int n)

{

int i,j,nu=0;

float *x,dx;

x=(float *)malloc(n*sizeof(float));

for(i=0;i =n-1;i++)

x[i]=0.0;

do

float d=0.0;

for(j=0;j =n-1;j++)

d+=*(a+i*(n+1)+j)*x[j];

dx=(*(a+i*(n+1)+n)-d)/(*(a+i*(n+1)+i));

x[i]+=dx;

}

if(nu =N)

printf( "迭代发散\n ");

exit(1);

nu++;

return x;

main()

int i;

float *x;

float *GauseSeidel(float *,int);

clrscr();

printf( "x[%d]=%f\n ",i,x[i]);

getch();

c语言如何定义一个线性函数y=kx+b的系数k,b,从键盘读取这两个系数,并读取任意?

float k,b,x,y;

printf("请输入k,b:");

scanf("%f%f",k,b);

printf("请输入x:");

scanf("%f",x);

y=k*x十b;

printf("y=%f\n",y);

如何用C语言写一个函数输出线性表中指定范围的数字

#include?stdio.h

int?main(void)

int?i,j=0;

for(i?=?0;i?sizeof(data);i++)

continue;

else

newdata[j]?=?data[i];

j++;

for?(i?=?0;i?j;?i++)

printf("%d",newdata[i]);

getchar();

return?0;

这个代码里面的 data[]后面赋值你就输入你的线性表 的数,代码会自己查找并删除.

请采纳!

c语言简单程序,有一段线性表插入的函数,请高手详细解析,十分感谢

这是数据结构中标准的线性表插入程序,但是它不是真正的c语言,而是类c哦.

status Insertlist(Sqlist L,int i,Elemtype e){

Elemtype *p; //今天这一节定义了一个*p的指针,目的是找到链表中每个结点的首地址就可以了,不用找一个结点的所用地址啊

int j;

if(L.length==L.listsize) //L.listsize是代表的表的上限值,是事先设定好的

printf("内存分配空间已不够,请重新分配:\n");

p=L.elem;//这条语句应该写在下一条语句的后面,也就是分配后的地址给到临时指针变量p中

L.elem=(Elemtype *)realloc(p,(LISTSIZE+L.listsize)*sizeof(Elemtype));

//这条语句是想一下子分配足够大的线性表空间,realloc在C中不认可的,实现时还要用malloc,这里只是设计实现的,而分配成功后L.elem只是得到分配单元的首地址,不成功则是空值.

if(!p){

printf("分配空间失败");

exit(0);

L.elem=p;//这条语句应该没用吧

L.length++;//这条语句应该放在成功插入的后面,也就是return 1;语句之前才对

L.listsize=L.listsize+LISTSIZE_INCE;

if(i1||iL.length){ //这里用到的是运算符||,代表是"或",也就是说i1代表输入时误操作造成,而iL.length代表输入的位置超出表中数据的个数,位置找不到.

printf("插入位置输入不正确,请重新操作:\n");

return 0;//代表插入失败

else{

for(j=L.length-1;j=i;j--)//从i到最后表尾顺次下移,腾出i的位置

L.elem[j+1]=L.elem[j];

L.elem[i]=e;//将数据插入到i的位置中

return 1;//代表插入成功

return 1;

在vc++6.0下使用c语言编写创建线性表函数,错误很多,具体如下. 求高手指导!

#include stdlib.h // malloc

#define Max 100

typedef struct

int data[Max];

int len;

}Sqlist;

int cSqlist(Sqlist **L,int a[],int n)

int i=0;

*L=(Sqlist *)malloc(sizeof(Sqlist));

for(i=0;in;i++)

(*L)-data[i]=a[i];

(*L)-len=n;

int i;

for(i=0;L.leni;i++)

printf("%d - ",L.data[i]);

void main()

Sqlist *L; // Sqlist L; 这一句已经申请了空间,所以改成指针,在 cSqlist()里面申请空间

cSqlist(L,a,n);//传入L的地址才能改变L的值

C语言 线性表的实现

typedef int datatype;

{ ElemType data[MaxSize];

int length;

}SqList;

void InitList(SqList L)

{ L.length=0;

int GetLength(SqList L)

{return L.length;

int GetElem(SqList L,int i,ElemType e)

{ if (i1||iL.length)

return 0;

{ e=L.data[i-1];

int Locate(SqList L,ElemType x)

{int i=0;

while (L.data[i]!=x)

i++;

if (iL.length)

return (0);

return(i+1);

int InsElem(SqList L,ElemType x,int i)

{ int j;

if(i1||iL.length+1)

for(j=L.length;ji;j--)

L.data[j]=L.data[j-1];

L.data[i-1]=x;

L.length++;

int DelElem(SqList L,int i)

{ int j;

if(i1||iL.length)

for(j=i;jL.length;j++)

L.data[j-1]=L.data[j];

L.length--;

}void DispList(SqList L)

{ int i;

for(i=1;i=L.length;i++)

printf("%c",L.data[i-1]);

printf("\n");

{ int i;

ElemType e;

SqList L;

InitList(L);

InsElem(L,'a',1);

printf("xian xing biao:");DispList(L);

printf("chang du:%d\n",GetLength(L));

printf("di %d ge yuan su :%c\n",i,e);

e='a';

printf("yuan su %c shi di %d ge yuan su\n",e,Locate(L,e));

DelElem(L,i);

以上就是土嘎嘎小编为大家整理的c语言设计线性函数相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章