




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、C 语言程序设计 课后习题 参考程序 由宋飞、张斌编写 (西安邮电学院) 第 1 页 C 语言程序设计语言程序设计 课后练习课后练习 参考程序参考程序 第一章 概述 第一章 概述 习题习题 1.5 编写一个 C 语言程序,要求输出以下信息: * How are you ! * #include int main() printf(“*n”); printf(“How are you !n”); printf(“*n”); return 0; 习题习题 1.6 编写一个 C 语言程序, 从键盘输入 x,y,z 三个变量, 并输 出其中的最小值。 #include int main() /* 定义
2、整型变量 */ int x,y,z,min; /* 输入*/ printf(“请输入 x,y,x:”); scanf(“%d,%d,%d”, /* 判断最小值 */ min=x; if(ymin)min=y; if(zmin)min=z; /* 输出 */ printf(“最小的数:%dn”,min); return 0; 第三章 算法和基本程序设计 第三章 算法和基本程序设计 习题习题 3.4 编写程序,输入三角形的 3 个边长 a,b,c,求三角形的面 积 area。 )()(cSbSaSSarea 其中,S=(a+b+c)/2。 #include #include int main()
3、float a,b,c,area,s; printf(请输入 a,b,c:); scanf(%f,%f,%f, s =(a+b+c)/2.0; area=sqrt(s*(s-a)*(s-b)*(s-c); printf(面积:%fn,area); return 0; 习题习题 3.5 编写程序,输入四个数,并求出它们的平均值。 #include 说明: 1、题目是王曙燕主编的C 语言程序设计的课后习题。 2、所有程序由宋飞(1,3,4,7,9 章)和张斌(5,6,8 章)编写完成。 3、列出的所有程序均在 Dev C+ 4.9(gcc)上编译成功,没有语法错误。 4、程序设计的思路和算法并不唯
4、一,所列出的程序仅供参考。 5、限于我们水平有限,如果有什么缺点和不恰当处,敬请批评指正。 C 语言程序设计 课后习题 参考程序 由宋飞、张斌编写 (西安邮电学院) 第 2 页 int main() int a,b,c,d; float average; printf(“请输入 a,b,c,d :”); scanf(“%d,%d,%d,%d”, average =(a+b+c+d)/4.0; printf(“平均值: %fn”,average); return 0; 习题习题 3.6 从键盘上输入一个整数,分别输出它的个位数,十位数和 百位数。 #include int main() int
5、x,y,z,num; printf(请输入一个数:); scanf(%d, /* 分离个位,十位,百位的方法 */ x=num%10; y=(num/10)%10; z=(num/100)%10; printf(个:%dn 十:%dn 百:%dn,x,y,z); return 0; 习题习题 3.7 从键盘上输入一个大写字母,并将其转换成小写字母并输 出。 #include int main() char c; printf(请输入一个字母:); scanf(%c, printf(转换后:%cn,c+32); return 0; 第四章 选择分支结构程序设计 第四章 选择分支结构程序设计 习题
6、习题 4.2 输入四个数 a、b、c、d,把这四个置由小到大输出。 #include int main() int a,b,c,d; int t; /* 临时变量 */ printf(“请输入 a,b,c,d:”); scanf(“%d,%d,%d,%d”, if(ab) t=a;a=b;b=t; /*数据交换方法 */ if(ac) t=a;a=c;c=t; if(ad) t=a;a=d;d=t; if(bc) t=b;b=c;c=t; if(bd) t=b;b=d;d=t; if(cd) t=c;c=d;d=t; printf(“结果:%d,%d,%d,%dn”,a,b,c,d); ret
7、urn 0; 习题习题 4.3 编程序按下式计算 y 的值,x 的值由键盘输入。 其他值 0 )80 x60() 1x(ln )60 x40(1e )40 x20(cossin )200(115 x xx xx y #include int main() C 语言程序设计 课后习题 参考程序 由宋飞、张斌编写 (西安邮电学院) 第 3 页 double x,y; printf(请输入 x:); scanf(%lf, /* 多个 if else 嵌套 */ if(x=0 else if(x40) y=sin(x)+cos(x); else if(x60) exp(x)-1; else if(x8
8、0) y=log(x+1); else y=0; printf(y=%lfn,y); return 0; 习题习题 4.4 用条件表达式的嵌套来完成此题:学习成绩90 分的同 学用 A 表示,7089 分之间的用 B 表示,6069 分之间用 C 表示,60 分以下的用 D 表示。 #include int main() int mark; char res; printf(“请输入成绩:”); scanf(“%d”, if(mark=90) res=A; else if(mark=70) res=B; else if(mark=60) res=C; else res=D; printf(“结
9、果 : %cn”,res); return 0; 习题习题 4.5 计算器程序。用户输入运算数和四则运算符,输出运算结 果。 #include int main() int a,b; float res; char t; printf(“请输入运算符(+ - * /):”); scanf(“%c”, printf(“请输入 a,b:”); scanf(“%d,%d”, switch (t) case+ : res=a+b;break; case- : res=a-b;break; case* : res=a*b;break; case/ : res=(float)a/b;break; prin
10、tf(“结果:%f”,res); return 0; 习题习题 4.6 企业发放的奖金根据利润提成。利润(I)低于或等于 10 万元时, 奖金可提成 10%; 利润高于 10 万元, 低于 20 万元时, 低于 10 万元的部分按 10%提成,高于 10 万元的部分,可提成 7.5%;20 万到 40 万之间时,高于 20 万的部分,可提成 5%; 40 万到 60 万之间时,高于 40 万的部分,可提成 3%;60 万 到 100 万之间时,高于 60 万的部分可提成 1.5%,高于 100 万时,超过 100 万的部分按 1%提成。从键盘输入当月的利润, 求应发放的奖金总数。 #inclu
11、de int main() C 语言程序设计 课后习题 参考程序 由宋飞、张斌编写 (西安邮电学院) 第 4 页 long i,sum; printf(请输入利润 I:); scanf(%ld, if(i100000) sum=i*0.1; else if(i200000) sum=10000+(i-100000)*0.075; else if(i400000) sum=17500+(i-200000)*0.05; else if(i600000) sum=27500+(i-400000)*0.03; else if(i1000000) sum=33500+(i-600000)*0.015;
12、else sum=39500+(i-1000000)*0.01; printf(奖金总数:%ldn,sum); return 0; 第五章 循环结构程序设计 第五章 循环结构程序设计 习题习题 5.1 编写一个程序,计算-32768+32768 之间的任意整数 (由键盘输入)中个位奇数的平方和。 #include int main() int n,ge,shi,bai,qian,wan,sum=0; printf(请输入一个数:n); scanf(%d, ge=n%10; /* 分离各位数 */ shi=n/10%10; bai=n/100%10; qian=n/1000%10; wan=n/
13、1000; if(ge%2=1) sum+=ge*ge; if(shi%2=1) sum+=shi*shi; if(bai%2=1) sum+=bai*bai; if(qian%2=1) sum+=qian*qian; if(wan%2=1) sum+=wan*wan; printf(总合是 %dn,sum); return 0; 习题习题 5.2 编写程序,判断从键盘输入的整数 X 的正负性和奇偶性。 #include int main() int n,data; printf(请输入一个数:n); scanf(%d, if(n=0) printf(X 是正数n); else printf(
14、X 是负数n); if(n%2=1) printf(X 是奇数n); else printf(X 是偶数n); return 0; 习题习题 5.3 鸡兔问题:鸡兔共 30 只,脚共有 90 个。编写一个程序, 求鸡、兔各有多少只。 #include int main() int i,j; /* 枚举法(穷举法) */ for(i=0;i=30;i+) j=30-i; if(2*i+4*i=90) printf(鸡:%dn 兔:%dn,i,j); return 0; C 语言程序设计 课后习题 参考程序 由宋飞、张斌编写 (西安邮电学院) 第 5 页 习题习题 5.4 编写一个程序,求 s=1
15、+(1+2)+(1+2+3)+ +(1+2+3+4+ +n) 的值。 #include int main() int n,i,j,s=0; printf(请输入 n :n); scanf(%d, for(i=1;i=n;i+) for(j=1;j=i;j+) s+=j; printf(s=%dn,s); return 0; 习题习题 5.5 编写一个程序,求 100 1 99 1 4 1 3 1 2 1 1的值。 #include int main() int i,s=1; float n=1.0,t=1,sum=0; for(i=1;i=100;i+) sum+=t; n+; s=-s; t
16、=s/n; printf(结果: %f,sum); return 0; 习题习题 5.7 编写一个程序,求 e 的近似值,当通项小于 10-7 时停止 计算。 ! 1 ! 2 1 ! 1 1 1 n e #include #include int main() int n=1; float e=1,t=1,s=1.0; while(fabs(t)=1e-6) e+=t; n+; s*=n; t=1/s; printf(e=%10.6fn,e); return 0; 习题习题 5.8 编写程序,打印以下图形(行 n 由键盘输入) 。 * * * * * * * #include int main
17、() int i,j,n; printf(请输入 n:); scanf(%d, for(i=0;in+1;i+) for(j=1;ji+1;j+) printf( ); C 语言程序设计 课后习题 参考程序 由宋飞、张斌编写 (西安邮电学院) 第 6 页 for(j=1;jn-i+1;j+) printf(*); printf(n); return 0; 习题习题 5.9 编写一个程序,打印乘法“九九表” ,即 第一行为 1x1=1,1x2=2,1x9=9 第二行为 2x1=2,2x2=4,2x9=9 第九行为 9x1=9;9x2=18,9x9=81 #include int main() i
18、nt i,j,sum; for(i=1;i10;i+) for(j=1;j10;j+) sum=i*j; printf(%d*%d=%2dt,i,j,sum); printf(nn); return 0; 习题习题 5.10 从键盘输入若干个学生某门课的成绩,计算出平均成绩, 并输出低于 60 分的学生成绩,当输入负数时结束输入。 #include int main() int i=0; float n,sum=0; printf(请输入成绩(负数结束):n); scanf(%f, if(n=0 i+; scanf(%f, if(n=0 sum=sum/i; printf(The averag
19、e is:%fn,sum); return 0; 习题习题 5.11 编写一个程序,输出 3100 间的全部素数,每行 10 个。 #include #include int main() int m,k,i,n=0; printf(3 to 100:n); for(m=3;m=100;m+=2) k=sqrt(m); for(i=2;i=k+1) printf(%3d,m); n+; if(n%10)=0) printf(n); return 0; C 语言程序设计 课后习题 参考程序 由宋飞、张斌编写 (西安邮电学院) 第 7 页 习题习题 5.13 编写一个程序,小学生可以用这个程序进行
20、两个数的四则 运算自我检测。要求:测验者可以选择难度(如取加减乘除或 位数为不同难度) ,可以选择每次做的题数 n,电脑会对结果进 行正确或者错误的评判。题目中的运算数据应随即产生。 #include #include #include #define N 3 /* 测验的题数 */ int main() int i,m,n,t,p,sum,k,j,cnt=0; /*初始化随机数 */ srand(unsigned)time(NULL); /* 简易菜单 */ printf(n-速算-nn); printf(1.加n2.减n3.乘n4.除n); printf(请选择:n); scanf(%d,
21、 for(i=1;i=N;i+) k=rand()%100; /* 产生 099 的随即数 */ j=rand()%100; switch(t) case 1:sum=k+j; printf(%d+%d=?n,k,j); break; case 2:sum=k-j; printf(%d-%d=?n,k,j); break; case 3:sum=k*j; printf(%d*%d=?n,k,j); break; case 4:sum=k; printf(%d/%d=?n,k*j,j); break; printf(和=:n); scanf(%d, if(sum=p) cnt+; /* 作对的题
22、数加一 */ printf(正确!n); else printf(错误!n); /* for */ printf(你已经作对了 %d 个题!n,cnt); return 0; 第六章 函数 第六章 函数 习题习题 6.3 编写一个程序,已知一个圆筒的半径、和高,计算该圆筒 的体积。 #define PI 3.14159 #include /* 定义一个函数 */ float v(float r,float h) return PI*r*r*h; int main() float rs,hs; printf(“请输入 r,h:”); scanf(“%f,%f”,; /* 函数调用 */ prin
23、tf(“体积 v= %f”,v(rs,hs); return 0; 习题习题 6.4 编写一个求水仙花数的函数,求 100 到 999 之间的全部 水仙花数。 所谓水仙花数,是指一个三位数,其各位数字的立方和等 于该数。例如:153 是一个水仙花数:153=13+53+33 #include C 语言程序设计 课后习题 参考程序 由宋飞、张斌编写 (西安邮电学院) 第 8 页 int shuixianhua(int num) int data,ten,hun; data=num%10; ten=num/10%10; hun=num/100%10; if(num=data*data*data+t
24、en *ten*ten+hun*hun*hun) return 1; else return 0; int main() int i; printf(水仙花数:); for(i=100;i1000;i+) if(shuixianhua(i)printf(%5d,i); return 0; 习题习题 6.5 编写一个函数,输出整数 m 的全部素数因子。 例如:n=120,因子为 2,2,2,3,5 #include int fun(int n) int i; for(i=2;i=n;) if(n%i=0) n=n/i; printf(%d ,i); else i+; int main() int
25、 m; printf(请输入一个数:); scanf(%d, fun(m); 习题习题 6.6 编写一函数,求 10000 以内所有的完数。 所谓完数是指一个数正好是它所有约数之和。例如:6 就 是一个完数,因为 6 的因子有 1,2,3,并且 6=1+2+3。 #include #define N 10000 /* 函数声明 */ int test(int n); int main() int i,j; for(i=1;iN;i+) j=test(i); if(i=j) printf(%6d,i); return 0; /* 函数定义 */ int test(int n) int i,sum
26、=0; for(i=1;i=n/2;i+) if(n%i=0)sum+=i; return sum; 习题习题 6.7 如果有两个数,每一个数的所有约数(除它本身以外)的 和正好等于对方,则称这两个数互为满数。求出 10000 以内所 有的互满数,并显示输出,并求一个数和它所有约数(除它本 身)的和用函数实现。 #include #define N 10000 int test(int n); int main() int i,m,n; C 语言程序设计 课后习题 参考程序 由宋飞、张斌编写 (西安邮电学院) 第 9 页 for(i=1;iN;i+) m=test(i); n=test(m);
27、 if(i=n int test(int n)/* 计算第一个数字 */ int i,sum=0; for(i=1;i=n/2;i+) if(n%i=0) sum+=i; return sum; 习题习题 6.8 编写一个计算幂级数的递归函数。 0nx*x 0n1 1n n x #include int fun(int i,int j); int main(void) int x,n; printf(Input two numbers(x and n):n); scanf(%d%d, printf(The result is:%d,fun(x,n); getch(); int fun(int
28、i,int j) int t; if(j=0) return 1; t=fun(i,j-1)*i; return t; 习题习题 6.9 用递归函数求 n 1i is #include long fun(long n) if(n=0) return 0; return fun(n-1)+n; int main() int n; long sum; printf(输入 n :); scanf(%d, sum=fun(n); printf(结果:%dn,sum); return 0; 习题习题 6.10 已知某数列前两项为 2 和 3,其后继项根据当前的前两项 的乘积按下列规则生成: (1)若乘积
29、是一位数,则该乘积就是数列的后继项; (2)若成绩为两位数,则成绩的十位和个位依次作为数 列的后继项。 例如,当 n=10,求出该数列的前 10 项是: 2 3 6 1 8 8 6 4 2 4 编程实现当 n=10 时的数列。 #include int fun(int f1,int f2,int n); int main() int f1=2,f2=3,n; printf(请输入一个数:); scanf(%d, fun(f1,f2,n); getch(); int fun(int f1,int f2,int n) int i,f; printf(%3d,f1); printf(%3d,f2);
30、 for(i=3;i=n;) C 语言程序设计 课后习题 参考程序 由宋飞、张斌编写 (西安邮电学院) 第 10 页 if(f1*f2/10=0) f1=f1*f2; printf(%3d,f1); i+; else f=f1; f1=f1*f2/10; printf(%3d,f1); f2=f*f2%10; printf(%3d,f2); i+=2; 第七章 数组 第七章 数组 习题习题 7.3 从键盘输入 10 个学生的成绩存储在数组中,求成绩最高 者的序号和成绩。 #include #define N 10 int main() int i; int markN; int min=0;
31、for(i=0;imarkmin) min=i; printf(n 序号:%d”,min+1); printf(“n 最高分:%d,markmin); return 0; 习题习题 7.4 计算和存储 0 90的正弦值和 0 45的正切值, 每隔 1 度计算一个值。 #include #include #define PI 3.14159 int main() int i; float n_sin90,n_tan90; for(i=0;i=90;i+) n_sini=sin(i*PI/180.0); /* 角度制转弧度制 */ if(i=45) n_tani=tan(i*PI/180.0);
32、for(i=0;i=90;i+) printf(“sin(%d)=%lf “,i,n_sini); if(i=45) printf(“tan(%d)=%lfn”,i,n_tani); return 0; 习题习题 7.5 将整型数组中的所有元素镜像对调,第一个与最后一个对 调,第二个与倒数第二个对调,按对调后的结果输出。 #include #define N 10 int main() int i,t,numN; for(i=0;iN;i+) printf(“请输入第%d 个数:”,i+1); scanf(“%d”, for(i=0;iN/2;i+) C 语言程序设计 课后习题 参考程序 由宋
33、飞、张斌编写 (西安邮电学院) 第 11 页 t=numi; numi=numN-1-i; numN-1-i=t; for(i=0;iN;i+) printf(“%d ”,numi); return 0; 习题习题 7.6 在有序数列中插入若干个数,使数列在插入的过程中始终 保持有序。 #include #define N 10 /原数组中元素个数 int num100=3,6,9,12,13,15,23,45,54,57; int main() int n,i,j,k; int x,count; count=N; printf(插入 n 个数,n=); scanf(%d, for(i=0;i
34、n;i+) printf(请输入第%d 个数,i+1); scanf(%d, /* 数组元素的插入 */ /* 从最后一个元素开始,往后移动 */ for(j=0;j=count;j+) if(xj;k-) numk=numk-1; numj=x; break; count+; for(i=0;icount;i+) printf(%d ,numi); return 0; 习题习题 7.7 将两个按升序排列的数列,仍按照升序合并存到另一个数 组中,要求每个数都一次到位,不得在新数组中重新排序。 #include #define M 10 #define N 10 int aM=3,5,6,9,1
35、0,23,34,36,38,50; int bN=1,2,5,9,51,55,59,63,65,68; int cM+N; int main() int i=0,j=0; int k=0; int min; /* 合并 */ while(iM|jbj) min=bj; j+; if(j=N) bj=65535; /置为最大值 else min=ai; i+; if(i=M) ai=65535; ck=min; C 语言程序设计 课后习题 参考程序 由宋飞、张斌编写 (西安邮电学院) 第 12 页 k+; /* 输出 */ for(i=0;iM+N;i+) printf(%5d,ci); if(
36、i+1)%10=0)printf(n); return 0; 习题习题 7.8 用数组存储 x 的 10 次多项式的各项系数,输入多个 x, 分别用秦九韶公式计算对应的多项式值。秦九韶公式: n a nnn nn n xaxaxaxaxaxaxaxP )a()( 12101 1 10 #include float a10=1,2,3,4,5,6,7,8,9,10; double p(double x) int i; double t; t=a0; for(i=1;i10;i+) t=t*x+ai; return t; int main() double x; while(1) printf(请
37、输入 x:); scanf(%lf, printf(p(%lf)=%lfn,x,p(x); if(x=-1)break; return 0; 习题习题 7.9 将矩阵 A 的转置矩阵存入矩阵 B,输出 B。 #include int main() int x,y; int m=3,n=3; /m*n 矩阵 int a33=1,2,3,4,5,6,7,8,9; /矩阵 A int b33; /* 转置 */ for(x=0;xn;x+) for(y=0;ym;y+) byx=axy; /* 输出 */ printf(矩阵 An); for(x=0;xn;x+) for(y=0;ym;y+) pr
38、intf(%d ,axy); printf(n); printf(n 矩阵 Bn); for(x=0;xn;x+) for(y=0;ym;y+) printf(%d ,bxy); printf(n); return 0; 习题习题 7.10 找出 6*6 矩阵每列绝对值最大的元素, 并与同行对角线元 素交换。 #include #include int num66= 3, 4, 1, 6, 7, 5, 6, 2,11, 2, 5, 8, 0, 9,-4, 8, 3,-7, 7, 8,21,-6, 1, 6, C 语言程序设计 课后习题 参考程序 由宋飞、张斌编写 (西安邮电学院) 第 13 页
39、 8,-7, 4, 3, 5, 1, 12, 4,-6, 7, 9, 2 ; int main() int x,y; int max_x,max_y; int t; /* 找到每列中绝对值最大的元素 */ for(y=0;y6;y+) max_x=0; for(x=0;x6;x+) if(nummax_xyabs(numxy) max_x=x; /* 和同行的对角线元素交换 */ t=nummax_xmax_x; nummax_xmax_x=nummax_xy; nummax_xy=t; /* 显示结果 */ for(y=0;y6;y+) for(x=0;x6;x+) printf(%2d ,
40、numyx); printf(n); return 0; 运行结果: 3 4 1 6 7 5 6 2 11 2 5 8 0 -4 9 8 3 -7 7 8 -6 21 1 6 8 -7 4 3 5 1 2 4 -6 7 12 9 习题习题 7.11 (略) 见配套练习册 75 页 习题习题 7.12 自己编程实现 strcpy()和 strlen()函数的功能。 #include char *_strcpy(char c1,char c2) int i=0; while(c2i!=0) c1i=c2i; i+; c1i=0; return c1; int _strlen(char c) int
41、 i=0; while(ci!=0) i+; return i-; int main() char a10=Hello; char b10; _strcpy(b,a); printf(%sn,b); printf(%dn,_strlen(b); return 0; 第八章 结构体与共用体 第八章 结构体与共用体 习题习题 8.6 用结构体数组存储某班的 30 名学生的信息,每个学生的 数据项有学号、姓名、性别和四门课的成绩。编写程序计算四 门课的平均成绩,要求用键盘输入学生数据,再按平均成绩排 序,并输出含平均成绩的报表。 #include #include #define N 30 stru
42、ct gr_type C 语言程序设计 课后习题 参考程序 由宋飞、张斌编写 (西安邮电学院) 第 14 页 float gs; /* 高数 */ float yy; /* 英语 */ float dw; /* 大物 */ float ty; /* 体育 */ ; struct st_type char num10; char name20; char sex2; struct gr_type gr; /* 成绩 */ float ave; stN,temp; int main() int i,j,k; for(i=0;iN;i+) printf(Input the %d student:,i
43、+1); scanf(%s%s%s,sti.num,, sti.sex); printf(Input the studentgrades:); scanf(%f%f%f%f, sti.ave=(sti.gr.gs+sti.gr.yy+ sti.gr.dw+sti.gr.ty)/4.0; for(i=0;iN;i+) k=i; for(j=i+1;jN;j+) if(sti.avestj.ave) k=j; if(k!=i) temp=sti; sti=stj; stj=temp; printf(Taxis with the average:n); for(i=0;iN;i+)
44、printf(%s%s%c%dn,sti.num, ,sti.sex, sti.ave); 习题习题 8.10 有一个商品信息表,除了商品号、商品名、进货日期、进 货单价、数量和销售单价等公共信息外,对于家电类商品应有 保修单位名和它的服务电话,而对于食品类则应有保质期。请 编程输入商品数据,以表格形式输出。 #include #include struct jd_type char num10; char name20; char date10; float value; int number; float price; char dep20; char tel20; jd;
45、 struct sp_type char num10; char name20; char date10; float value; int number; float price; char time10; sp; int main() int ch; printf(Please chose:n1.Jia dian lei.n2.Shi pin lei.n); scanf(%d, switch(ch) case 1:printf(请输入n 商品号 商品名 进货日期 进货单位 数量 销售单价 保修单位 服务电话 n); scanf(%s%s%s%f%d%f%s%s, jd.num,jd.nam
46、e,jd.date, printf(%s %s %s %f %d %f %s %s,jd.num,, jd.date,jd.value, C 语言程序设计 课后习题 参考程序 由宋飞、张斌编写 (西安邮电学院) 第 15 页 jd.number,jd.price, jd.dep,jd.tel); break; case 2:printf(请输入n 商品号 商品名 进货日期 进货单位 数量 销售单价 保质期n); scanf(%s%s%s%f%d%f%s%s, sp.num,,sp.date, printf(%s %s %s %f %d %f %s s, sp.num
47、,,sp.date, sp.value,sp.number, sp.price,sp.time); break; default:break; 第九章 指针 第九章 指针 题题 9.8 编写对数组进行排序的程序,要求用函数实现,用参数传 递数组。 #include #include /* 用指针变量传递数组 排序算法*/ void sort(int num,int n) int i,j; int t; for(i=0;in;i+) for(j=0;ji;j+) if(numinumj) t=numi; numi=numj; numj=t; int main() int a10=4
48、,6,2,7,23,66,93,12,3,27; int i; sort(a,10); for(i=0;i10;i+)printf(%5d,ai); return 0; 习题习题 9.9 编写求两个矩阵的乘积的函数,要求用函数参数传递矩 阵。 #include /* m*n 矩阵和 n*t 矩阵相乘 */ #define M 3 #define N 3 #define T 3 void cheng(int *a,int *b) int i,j,k; int res=0; int *u,*q; for(i=0;iM;i+) for(j=0;jT;j+) for(k=0;kN;k+) /* 找到 aik和 bkj */ u=a+i*N+k; q=b+k*T+j; res+=(*u)*(*q); printf(%5d ,res); res=0; printf(n); int main() int aMN=1,0,0,0,0,1,0,1,0; C 语言程序设计 课后习题 参考程序 由宋飞、张斌编写 (西安邮电学院) 第 16 页 int bNT=3,-1,1,-1,2,3,1,3,1; cheng(a,b); return 0; 习题习题 9.10 编写函数实现字符串小写转大写函数 strupr()功能, 用 两种方法实现。 #include /* 第一种方法 用数组实现 */ cha
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 八下语文期中小卷1(答案)
- 专业英语 Unit 3教案学习资料
- 2024年份9月家庭昆虫饲养员物种逃逸应急处理条款
- 角膜塑形镜验配基础知识
- 建筑行业会计基础知识
- 《优雅弧线:撑杆跳高》课件
- 激光开孔最小直径
- 电子商务合作协议委托书
- 货车合伙协议书二零二五年
- 2024-2025学年中考历史复习- 阶段检测卷四(世界史)(含答案)
- 建筑工人实名制管理及农名工工资支付有关事项流程图
- 欢迎上级领导莅临检查指导
- 信用修复申请书
- 影像核医学与分子影像复习试题(含答案)
- “十四五”生物质能源发展规划
- 《黄帝内经素问》注序.ppt
- 第4章不锈钢及耐热钢的焊接
- 大医院净化工程施工组织设计方案
- 长江重点生态区(含川滇生态屏障)生态保护和修复规划
- 陕旅版四年级下册英语全册教案及各单元知识点总结
- 二年级下册数学半期检测题
评论
0/150
提交评论