C语言程序设计第十一讲ppt课件

上传人:仙*** 文档编号:151220452 上传时间:2022-09-12 格式:PPT 页数:30 大小:918KB
收藏 版权申诉 举报 下载
C语言程序设计第十一讲ppt课件_第1页
第1页 / 共30页
C语言程序设计第十一讲ppt课件_第2页
第2页 / 共30页
C语言程序设计第十一讲ppt课件_第3页
第3页 / 共30页
资源描述:

《C语言程序设计第十一讲ppt课件》由会员分享,可在线阅读,更多相关《C语言程序设计第十一讲ppt课件(30页珍藏版)》请在装配图网上搜索。

1、输入输入x n=0 count+for i=0 to n-1ai%10!=0T输出输出aiF x0an=xcount=0n+输入输入x#include void main()int a100,x,n,i,count;n=0;count=0;cinx;while(x0)an=x;n+;cinx;for(i=0;in;i+)if(ai%10!=0)coutai;count+;cout个数是:个数是:n;cinn;for(i=0;in;i+)for(i=0;iai;cinai;m=0;m=0;for(i=0;in;i+)for(i=0;in;i+)if(ai%5=0)if(ai%5=0)bm=ai;

2、bm=ai;m+;m+;for(i=0;im;i+)for(i=0;im;i+)coutbi;coutbi;输入输入nm=0 m+for i=0 to n-1ai%5=0Tbm=aiF for i=0 to n-1输入输入ai for i=0 to m-1输出输出bi#include#include void main()void main()int a100,i,n,x,low,high,mid;int a100,i,n,x,low,high,mid;cinn;cinn;for(i=0;in;i+)for(i=0;iai;cinai;cinx;cinx;low=0;low=0;high=n-

3、1;high=n-1;while(low=high)while(low=high)mid=(low+high)/2;mid=(low+high)/2;if(x=amid)if(x=amid)break;break;else if(xamid)else if(xamid)high=mid-1;high=mid-1;elseelselow=mid+1;low=mid+1;if(x=amid)if(x=amid)coutYES:mid;coutYES:mid;elseelsecoutNO;coutNO;#include#include void main()void main()int i,j,te

4、mp,n,a100;int i,j,temp,n,a100;cinn;cinn;for(i=0;in;i+)for(i=0;iai;cinai;for(i=0;in-1;i+)for(i=0;in-1;i+)for(j=i+1;jn;j+)for(j=i+1;jaj)if(aiaj)temp=ai;temp=ai;ai=aj;ai=aj;aj=temp;aj=temp;for(i=0;in;i+)for(i=0;in;i+)coutai;coutai;例:将恣意例:将恣意n个数由小到大排序。个数由小到大排序。#include#include void main()void main()int

5、i,j,n,temp,di,a100;int i,j,n,temp,di,a100;cinn;cinn;for(i=0;in;i+)for(i=0;iai;cinai;for(i=0;in-1;i+)for(i=0;in-1;i+)di=i;di=i;for(j=i+1;jn;j+)for(j=i+1;jaj)if(adiaj)di=j;di=j;if(i!=di)if(i!=di)temp=ai;temp=ai;ai=adi;ai=adi;adi=temp;adi=temp;for(i=0;in;i+)for(i=0;in;i+)coutai;coutai;选择排序法选择排序法 相邻两数比较

6、,大数相邻两数比较,大数 小数小数 a1 a2 a3 a4 a5 j=1 to 4 j=1 to 3 j=1 to 2 j=1 to 1由小到大排序由小到大排序#include#include void main()void main()int a100,n,i,j,temp;int a100,n,i,j,temp;scanf(%d,&n);scanf(%d,&n);for(i=1;i=n;i+)for(i=1;i=n;i+)scanf(%d,&ai);scanf(%d,&ai);for(i=1;in;i+)for(i=1;in;i+)for(j=1;j=n-i;j+)for(j=1;jaj+

7、1)if(ajaj+1)temp=aj;temp=aj;aj=aj+1;aj=aj+1;aj+1=temp;aj+1=temp;for(i=1;i=n;i+)for(i=1;i=n;i+)printf(%5d,ai);printf(%5d,ai);类型名类型名 数组名数组名常量常量1 常量常量2;例如:例如:int a34;整型二维数组整型二维数组 名字为名字为aa00数组数组a共共12个元素个元素 a12 a13 a20 a21 a22 a23是一个矩阵或一张表格是一个矩阵或一张表格第第0行行第第1行行第第2行行第第0列列 第第1列列 第第2列列 第第3列列a01a02a03a10a11a1

8、2a13a20a21a22a230 1 2 3一维数组个数一维数组个数一维数组中一维数组中元素的个数元素的个数例例 int a23=1,2,4;例例 int a 3=1,2,4;1 2 3 4 5 6 7 8 9 10 11 12例例1:将一个:将一个34矩阵输入到数组中并按行输出。矩阵输入到数组中并按行输出。#include stdio.h#include stdio.hvoid main()void main()int a34,i,j;int a34,i,j;for(i=0;i3;i+)for(i=0;i3;i+)for(j=0;j4;j+)for(j=0;j4;j+)scanf(%d,&

9、aij);scanf(%d,&aij);for(i=0;i3;i+)for(i=0;i3;i+)for(j=0;j4;j+)for(j=0;j4;j+)printf(%3d,aij);printf(%3d,aij);printf(n);printf(n);例例2:写结果。:写结果。#include#include void main()void main()int i,x33=6,5,4,3,2,1;int i,x33=6,5,4,3,2,1;for(i=0;i3;i+)for(i=0;i3;i+)printf(%d,xi2-i);printf(%d,xi2-i);032例例3:程序功能是求二

10、维数组每列元素的平均值,修正程序程序功能是求二维数组每列元素的平均值,修正程序中的错误。中的错误。#include iostream.h#include iostream.h#define M 3;#define M 3;void main()void main()int aMM=1,2,3,4,5,6,7 int aMM=1,2,3,4,5,6,7 int i,j;int i,j;for(i=0;iM;i+)for(i=0;iM;i+)for(j=0;jM;j+)for(j=0;jM;j+)avei=avei+aij;avei=avei+aij;avei=avei/M;avei=avei/M

11、;for(j=0;jM;j+)for(j=0;jM;j+)cout avej;cout avej;#include iostream.h#include iostream.h#define M 3#define M 3void main()void main()int aMM=1,2,3,4,5,6,7;int aMM=1,2,3,4,5,6,7;int i,j;int i,j;float aveM ;float aveM ;for(i=0;iM;i+)for(i=0;iM;i+)for(j=0;jM;j+)for(j=0;jM;j+)avei=avei+aji;avei=avei+aji;a

12、vei=avei/M;avei=avei/M;for(j=0;jM;j+)for(j=0;jM;j+)cout avej;cout avej;=0=0#include#include void main()void main()int a5050,m,n,i,j,row,column,max;int a5050,m,n,i,j,row,column,max;cinmn;cinmn;for(i=0;im;i+)for(i=0;im;i+)for(j=0;jn;j+)for(j=0;jn;j+)scanf(%d,&aij);scanf(%d,&aij);max=a00;max=a00;for(i=

13、0;im;i+)for(i=0;im;i+)for(j=0;jn;j+)for(j=0;jn;j+)if(maxaij)if(maxaij)max=aij;max=aij;row=i;row=i;column=j;column=j;printf(max=%d,row=%d,column=%d,max,row,column);printf(max=%d,row=%d,column=%d,max,row,column);row=0;column=0;row=0;column=0;例例5:将二维数组行列元素互换,存到另一个数组中:将二维数组行列元素互换,存到另一个数组中#include#includ

14、e#include#include void main()void main()int a5050,b5050;int a5050,b5050;int m,n,i,j;int m,n,i,j;cinmn;cinmn;for(i=0;im;i+)for(i=0;im;i+)for(j=0;jn;j+)for(j=0;jaij;cinaij;for(i=0;in;i+)for(i=0;in;i+)for(j=0;jm;j+)for(j=0;jm;j+)bij=aji;bij=aji;for(i=0;in;i+)for(i=0;in;i+)for(j=0;jm;j+)for(j=0;jm;j+)co

15、utsetw(3)bij;coutsetw(3)bij;coutendl;coutendl;v 矩阵的和运算矩阵的和运算1 2 34 5 67 8 9+1 1 16 5 49 8 7=2 3 410 10 1016 16 16v 矩阵的积运算矩阵的积运算1 2 34 5 67 8 93 2 16 5 49 8 7=?1*3+2*6+3*9v 矩阵的差运算矩阵的差运算1 2 34 5 67 8 9+1 1 16 5 49 8 7=0 1 2-2 0 2-2 0 2例例6:打印杨辉三角形。:打印杨辉三角形。1 1 1 1 2 1 1 3 3 1 1 4 6 4 1#include#include#

16、define M 30#define M 30void main()void main()int aMM=0,i,j,n;int aMM=0,i,j,n;scanf(%d,&n);scanf(%d,&n);for(i=0;in;i+)for(i=0;in;i+)ai0=1;ai0=1;aii=1;aii=1;for(i=2;in;i+)for(i=2;in;i+)for(j=1;ji;j+)for(j=1;ji;j+)aij=ai-1j+ai-1j-1;aij=ai-1j+ai-1j-1;for(i=0;in;i+)for(i=0;in;i+)for(j=0;j=i;j+)for(j=0;j=

17、i;j+)printf(%5d,aij);printf(%5d,aij);printf(n);printf(n);012340 1 2 3 4看实验指点书看实验指点书P140程序调试程序调试运转错误的判别与调试运转错误的判别与调试1、编写程序,从矩阵中找、编写程序,从矩阵中找“鞍点。假设某个元素是鞍点。假设某个元素是“鞍点鞍点,那么该元素在所处的行中最大,列上最小,也能够没有鞍,那么该元素在所处的行中最大,列上最小,也能够没有鞍点。要求:假设有鞍点,输出鞍点的值,以及其所处的行和列点。要求:假设有鞍点,输出鞍点的值,以及其所处的行和列下标,否那么输出下标,否那么输出NO。输入分。输入分m+1行

18、:第一行为行:第一行为m和和n的值,的值,以下以下m行代表二维数组,其中每一行包括行代表二维数组,其中每一行包括n个数。个数。样例输入:样例输入:3 4 1 2 4 3 5 6 7 8 6 8 9 4 样例输出:样例输出:4 0 2 样例输入:样例输入:3 4 1 2 3 4 5 6 7 0 8 7 6 5 样例输出:样例输出:NO 2、编写程序,计算两个矩阵均为、编写程序,计算两个矩阵均为2行行2列之积。输入分列之积。输入分2*2行:前两行为第一个矩阵,后两行为第二个矩阵。行:前两行为第一个矩阵,后两行为第二个矩阵。样例输入:样例输入:1 2 4 5 3 5 1 7 3、编写程序,输出矩阵、

19、编写程序,输出矩阵3行行3列的左上三角。列的左上三角。样例输入:样例输入:1 2 3 4 5 6 7 8 9 样例输出:样例输出:5 19 17 55 样例输出:样例输出:1 2 3 4 5 7 4、编写程序,输出、编写程序,输出n层正方形图案。正方形图案最外层是第一层正方形图案。正方形图案最外层是第一层,每层用的数字和层数一样。层,每层用的数字和层数一样。样例输入:样例输入:3 5、编写程序,计算二维数组中各行之和、各列之和以及一切、编写程序,计算二维数组中各行之和、各列之和以及一切元素之和。元素之和。样例输入:样例输入:2 3 1 2 3 4 5 6 样例输出:样例输出:1 1 1 1 1

20、1 2 2 2 11 2 3 2 11 2 2 2 11 1 1 1 1 样例输出:样例输出:6 15 5 7 9 21 6、编写程序,找出、编写程序,找出m行行n列的二维数组中每行元素的最大值以列的二维数组中每行元素的最大值以及每列元素的最小值。输入分及每列元素的最小值。输入分m+1行:第一行为行:第一行为m和和n的值,以的值,以下下m行代表二维数组,其中每一行包括行代表二维数组,其中每一行包括n个数。输出分两行:第个数。输出分两行:第一行为每行元素的最大值,第二行为每列元素的最小值。一行为每行元素的最大值,第二行为每列元素的最小值。样例输入:样例输入:3 31 2-1-3 4 27 9 8样例输出:样例输出:2 4 9-3 2-1

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!