16.心得总结 2020-04-10

今日练习如下:

1.矩阵交换行

#include<stdio.h>

int fun(int m,int n);

int a[5][5]={0};

int main()

{

int m,n;

int i,j;

for(i=0;i<5;i++)

{

for(j=0;j<5;j++)

{

scanf("%d",&a[i][j]);

}

}

printf("请输入要交换的行数:");

scanf("%d%d",&m,&n);

if((m>0&&m<6)&&(n>0&&n<6))

{

fun(m,n);

}

for(i=0;i<5;i++)

{

for(j=0;j<5;j++)

{

printf("%d ",a[i][j]);

}

printf("\n");

}

}

int fun(int m,int n)

{

int j;

int b;

for(j=0;j<5;j++)

{

b=a[m-1][j];

a[m-1][j]=a[n-1][j];

a[n-1][j]=b;

}

}

2.编写一个程序,求出1到100之间每位数的乘积小于每位数的和的数。例如:13满足1*3<1+3

#include<stdio.h>

int fun(int m);

int main()

{

int i;

for(i=10;i<100;i++)

{

if(fun(i)==1)

{

printf("%d ",i);

}

}

}

int fun(int m)

{

int a,b;

a=m/10;

b=m%10;

if(a*b<a+b)

{

return 1;

}

else

{

return 0;

}

}

3.编写一个程序,从3个红球,5个白球,6个黑球中任意取出8个球,其中必有黑球,输出所有的可能方案

#include<stdio.h>

int main()

{

int black,red,white;

for(black=1;black<=6;black++)

{

for(red=0;red<=3;red++)

{

for(white=0;white<=5;white++)

{

if(black+red+white==8)

{

printf("黑球数量为:%d 红球数量为:%d 白球数量为:%d\n",black,red,white);

}

}

}

}

}

4.有一个分数序列2/1,3/2,5/3,8/5,13/8,21/13.。。。。。求前20项的和

#include<stdio.h>

float fun(int m,int n);

int main()

{

float a[2][20]={{2},{1}};

int i;

for(i=1;i<20;i++)

{

a[0][i]=fun(a[0][i-1],a[1][i-1]);

a[1][i]=a[0][i-1];

}

float sum=0;

for(i=0;i<20;i++)

{

sum+=a[0][i]/a[1][i];

}

printf("%f",sum);

}

float fun(int m,int n)

{

float a;

a=m+n;

return a;

}

5.有一个4*3的二维数组,把其转置,变成3*4的二维数组,输出

#include<stdio.h>

int main()

{

int a[4][3]={1,2,3,4,5,6,7,8,9,0,1,2};

int s[3][4]={0};

int i,j;

for(i=0;i<4;i++)

{

for(j=0;j<3;j++)

{

s[j][i]=a[i][j];

}

}

for(j=0;j<3;j++)

{

for(i=0;i<4;i++)

{

printf("%d ",s[j][i]);

}

printf("\n");

}

}

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容