c语言第9章书后习题编程题Word文件下载.docx

上传人:b****1 文档编号:4074485 上传时间:2023-05-02 格式:DOCX 页数:13 大小:16.96KB
下载 相关 举报
c语言第9章书后习题编程题Word文件下载.docx_第1页
第1页 / 共13页
c语言第9章书后习题编程题Word文件下载.docx_第2页
第2页 / 共13页
c语言第9章书后习题编程题Word文件下载.docx_第3页
第3页 / 共13页
c语言第9章书后习题编程题Word文件下载.docx_第4页
第4页 / 共13页
c语言第9章书后习题编程题Word文件下载.docx_第5页
第5页 / 共13页
c语言第9章书后习题编程题Word文件下载.docx_第6页
第6页 / 共13页
c语言第9章书后习题编程题Word文件下载.docx_第7页
第7页 / 共13页
c语言第9章书后习题编程题Word文件下载.docx_第8页
第8页 / 共13页
c语言第9章书后习题编程题Word文件下载.docx_第9页
第9页 / 共13页
c语言第9章书后习题编程题Word文件下载.docx_第10页
第10页 / 共13页
c语言第9章书后习题编程题Word文件下载.docx_第11页
第11页 / 共13页
c语言第9章书后习题编程题Word文件下载.docx_第12页
第12页 / 共13页
c语言第9章书后习题编程题Word文件下载.docx_第13页
第13页 / 共13页
亲,该文档总共13页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

c语言第9章书后习题编程题Word文件下载.docx

《c语言第9章书后习题编程题Word文件下载.docx》由会员分享,可在线阅读,更多相关《c语言第9章书后习题编程题Word文件下载.docx(13页珍藏版)》请在冰点文库上搜索。

c语言第9章书后习题编程题Word文件下载.docx

i<

=9;

i++)

printf("

%d字符的个数:

%d\n"

i,a[i]);

}

9.28编写函数,对具有10个整数的数组进行如下操作:

从下标为n的元素开始直到最后一个元素,依次向前移动一个位置。

输出移动后的结果。

#include<

stdlib.h>

voidfun(inta[],intn,intm)//m代表数组的大小

{inti;

for(i=n;

m;

i++)a[i-1]=a[i];

i++)printf("

%d"

a[i]);

printf("

\n"

);

inta[10],n,i;

i++)//产生10个0~39的随机数,并输出

{a[i]=rand()%40;

scanf("

%d"

&

n);

//指定n的值

fun(a,n,10);

9.29编写函数,把数组中所有奇数放在另一个数组中返回。

voidfun(inta[],intb[],int*n)//n代表b数组有效数的多少

{inti,j=0;

10;

i++)

if(a[i]%2)b[j++]=a[i];

*n=j;

inta[10],b[10]={0},i,n;

fun(a,b,&

n;

b[i]);

9.30编写函数,对字符数组中的字母按由大到小的字母顺序进行排序。

voidfun(chara[],intn)//n代表a数组的大小

{inti,j;

n-1;

for(j=i+1;

j<

j++)

if(a[i]<

a[j])

{c=a[i];

a[i]=a[j];

a[j]=c;

chara[10],i=0,n;

while((a[i++]=getchar())!

i<

=9);

//排序前输出数组中字符

{putchar(a[i]);

fun(a,10);

//排序

//排序后输出数组中字符

%c"

9.31输入若干个有序数放在数组中。

然后输入一个数,插入到此有序数列中,插入后,数组中的数仍然有序。

请对插在最前,插在最后,插在中间三种情况运行程序,以便验证程序是否正确。

chara[10],i,n,m,j;

请输入有序数有多少个\n"

//n代表具体有多少个有序数,它应在1~9之间

请输入%d个有序数:

n);

i++)//输入若干个有序的数

{scanf("

a[i]);

请输入要插入的数:

"

m);

//输入要插入的数

//找位置

if(a[i]>

m)break;

//空出位置

for(j=n-1;

j>

=i;

j--)a[j+1]=a[j];

//插入数m

a[i]=m;

n++;

//输入后的数组元素

9.32编写函数,把任意十进制正整数转换成二进制数。

提示:

把十进制数不断被2除的余数放在一个一维数组中,直到商为零。

在主函数中进行输出,要求不得逆序输出。

voiddtob(intn,inta[],int*m)

{inti=0,r,j;

a[0]=n%2;

n=n/2;

while(n>

0)

{r=n%2;

//求余

for(j=i;

=0;

//所有数后移,空出最前面的位置

a[0]=r;

//放入新的余数

i++;

n=n/2;

*m=i+1;

inta[20],i,n,m;

请输入一个任意整数:

//n代表要转换的整数

dtob(n,a,&

//m存放转换后的二进制位数

//输出结果

%d<

====>

9.33编写函数,调用随机函数产生0~19之间的随机数,在数组中存入15个不重复的整数。

要求在主函数中进行输出结果。

voidfun(inta[],intn)

{inti=0,x,j;

{x=rand()%20;

//产生随机数

//看是否有与前a[0]到a[i-1]相同

for(j=0;

i;

if(a[j]==x)break;

if(j>

=i)a[i]=x;

elsei--;

inta[15],i,n=15;

fun(a,n);

15;

9.34求任意方阵每行、每列、两对角线上元素之和。

#defineN6

inta[N][N],i,j,sum;

//产生随机数放入方阵中,并显示

N;

{for(j=0;

{a[i][j]=rand()%10;

printf("

%3d"

a[i][j]);

}

//计算行和

{sum=0;

sum+=a[i][j];

第%d行的元素和:

i,sum);

//计算列和

for(j=0;

for(i=0;

第%d列的元素和:

j,sum);

//计算两条对角线上元素之和

sum=0;

sum+=a[i][i]+a[i][N-1-i];

if(N%2)sum-=a[N/2][N/2];

//奇数方阵时,有个元素同时在两条线上

对角线元素和:

sum);

9.35求两个矩阵的和。

inta[2][3],b[2][3],c[2][3],i,j;

//产生随机数放入矩阵a中,并显示

2;

3;

===========\n"

//产生随机数放入矩阵b中,并显示

{b[i][j]=rand()%10;

b[i][j]);

//计算矩阵和放入c数组中

{c[i][j]=a[i][j]+b[i][j];

c[i][j]);

9.36九九乘法表

inti,j;

**AMULTIPLICATIONTABLE**\n"

"

for(i=1;

(%d)"

i);

\n------------------------------------------------\n"

{printf("

(%d)"

for(j=1;

j++)printf("

%5d"

i*j);

------------------------------------------------\n"

9.37调用随机函数为5*4的矩阵置100以内的整数,输出该矩阵,求出每行元素的之和,并把和值最大的那一行与第一行上的元素对调。

inti,j,max,temp;

inta[5][4],b[5]={0};

5;

4;

{a[i][j]=rand()%100;

b[i]+=a[i][j];

//计算行和

max=0;

//找行和最大值

第%d行的行和为%d\n"

i,b[i]);

if(b[i]>

b[max])max=i;

//交换两行

if(max!

=0)

{temp=a[max][j];

a[max][j]=a[0][j];

a[0][j]=temp;

//输出交换后的矩阵

{printf("

}

9.38调用随机函数为5*5的矩阵置100以内的整数,输出该矩阵,然后逆置该矩阵。

inti,j,temp;

inta[5][5];

i++)//产生方阵并输出

//逆置:

下三角与上三角的数据交换,对角线不放在内

{temp=a[i][j];

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

a[j][i]=temp;

//输出逆置的方阵

===============\n"

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2