
《C语言从入门到精通第四版》百度网盘pdf最新全集下载:
链接:https://pan.baidu.com/s/111skDDHU1EhVQxSvMgGbCQ
?pwd=4kuj 提取码:4kuj简介:《C语言从入门到精通(第4版)》从初学者的角度出发,以通俗易懂的语言,丰富多彩的实例,详细介绍了使用C语言进行程序开发需要掌握的各方面知识。全书共分为17章,包括C语言概述、算法、数据类型、运算符与表达式、常用的数据输入/输出函数、选择结构程序设计、循环控制、数组、函数、指针、结构体和共用体、位运算、预处理、文件、存储管理、网络套接字编程和学生成绩管理系统。
//源程序如下#include<stdio.h>#include<conio.h>
#include<string.h>
#include<iostream.h>
#include<stdlib.h>
#include<math.h>
#define max 100void inputstyle(int *) //输入函数
void input(int **,int) //输入函数
long danx(int **,int)
int sgnx(int)
void martx(int **,int)int main(void)
{
int style=0,i=0
int matrix[max][max],*p[max]
for(i=0i<maxi++)*(p+i)=matrix[i] //*(p+i)是指针,指向第i个字符串
char exit1=' '
while(exit1!='E'&&exit1!='e'){ printf("求n阶矩阵的逆\n") inputstyle(&style)
input(p,style)
printf("原矩阵为:\n")
for(i=0i<stylei++){
for(int j=0j<stylej++){
printf("%4d",matrix[i][j])
}
printf("\n")
}
martx(p,style)
printf("\n")
printf("Exit=e Continue=Press any key\n")
cin>>exit1
fflush(stdin)
printf("\n\n")}
return(0)
} void input(int **p,int n){
for(int i=0i<ni++){
for(int j=0j<nj++){
printf("输入矩阵(%d行,%d列)元素:",j+1,i+1)
*(*(p+j)+i)=0
scanf("%d",*(p+j)+i)
fflush(stdin)
}
}
}void inputstyle(int *style){
do{
printf("输入矩阵n*n阶数n(0<n<%d):",max)
fflush(stdin)
scanf("%d",style)
fflush(stdin)
}while(*style<=0 &&*style>max)
}long danx(int **p,int n){
int i=0,j1=0,k1=0,j2=0,k2=0
long sum=0
int operate[max][max],*po[max]
for(i=0i<maxi++)*(po+i)=operate[i]if(n==1)return *(*(p+0)+0)
else{
for(i=0i<ni++){
for(j1=1,j2=0j1<nj1++,j2++){
k1=-1k2=-1
while(k2<n-1){
k1++
k2++
if(k1==i)k1++
*(*(po+j2)+k2)=*(*(p+j1)+k1)
}
}
/*for(int i1=0i1<n-1i1++){
for(int h1=0h1<n-1h1++){
printf("(%d,%d)%d ",i1,h1,*(*(po+h1)+i1))
}
printf("\n")
}*/
sum+=*(*(p+0)+i) * sgnx(1+i+1) * danx(po,n-1)
}
return sum
}
}int sgnx(int i){
if(i%2==0)return(1)
else return(-1)
}void martx(int **p,int n){
int i=0,j=0,j1=0,k1=0,j2=0,k2=0,num=0
int tramform[max][max]
int operate[max][max],*po[max]
for(i=0i<maxi++)*(po+i)=operate[i]
num=danx(p,n)
if(num==0)printf("矩阵不可逆\n")
else{
if(n==1)printf("矩阵的逆为: 1/%d\n",num)
else{
printf("矩阵的逆为: 系数 1/%d *\n",num)
for(i=0i<ni++){
for(j=0j<nj++){
j1=-1j2=-1
while(j2<n-1){
j1++j2++
if(j1==j)j1++ k1=-1k2=-1
while(k2<n-1){
k1++
k2++
if(k1==i)k1++
*(*(po+j2)+k2)=*(*(p+j1)+k1)
}
}
tramform[i][j]=sgnx(2+i+j) * danx(po,n-1)
}
}
for(i=0i<ni++){
for(j=0j<nj++){
printf("%4d",tramform[i][j])
}
printf("\n")
}
}
}
}
//运行结果//希望对你有帮助
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)