77范文网 - 专业文章范例文档资料分享平台

C语言程序设计习题及答案(8)

来源:网络收集 时间:2019-06-17 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

printf(“s=%d\\t count=%d\\n”,s,count);

}

2.下面的程序用来分别求出矩阵两条对角线上的各元素之和。 #include “stdio.h” main()

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

int sum1,sum2,k,j; sum1=sum2=0; for(k=0;k<3;k++) ____________; for(k=0;k<3;k++)

for(j=2;_________;j--)

if(_________) sum2+=a[k][j];

printf(“sum1=%d\\tsum2=%d\\n”,sum1,sum2); } 3.函数int index(char string[ ],char substr[ ])用于检查字符串string中是否包含字符串substr,

如果包含则返回substr在string中的起始位置,即substr的第一字符在string中的下标值,否则返回-1。

int index(char string[ ], char substr[ ]) { int j,k,t;

for(j=0;string[j]!= ?\\0?;j++)

{for(k=j,t=0;_____________________;k++,t++) ; if(substr[t]== ?\\0?) __________________; }

___________________; }

4.函数delete_char(char str[ ],char ch)的功能从字符串str中删除所与的由ch指定的字符。 void delete_char(char str[ ],char ch) { int j,k;

for(j=k=0;_____________;j++)

if(str[j]!=ch) ________________; s[k]= ?\\0?; }

5.求所有不超过200的满足条件的数,该数的平方是具有对称性质的回文数。所谓回文

数是指一个数的左右是对称的,即最左边的数位和最右边的数位相同,次左边的数位与次右边的数位相同,依此类推,如121,12321。 #include “stdio.h” main( )

{int decs[10],n,j,t; unsigned a; for(n=10;n<200;n++) {a=n*n;

for(j=1;a!=0;j++)

{ ______________; a/=10; }

for(t=0;t

if(decs[t]!=decs[j-t-1]) ___________;

if(_________________) printf(“=*==m”,n,n,n*n); } }

6.下面的程序用于从键盘输入一行字符(规定一行字符最多只能80个字符),并将其中的空格字符都轮换为字符 ?*?,并存入数组str中,若是其他字符则原样存入数组str中。 #include “stdio.h” main( )

{int i; char ch,str[81];

for(i=0;________________;i++)

{ if((ch=getchar())= = ?\\n?) ____________________; if(ch= =?\\40?) _________________; str[i]=ch; }

str[i]= ?\\0?; puts(str); }

7.下面的程序用于将一个无符号整数转换为八进制表示(各数位用相应数字字符表示)存入字符数组中。 #include “stdio.h” main( )

{char oct[32],i=0,j,ch; unsigned long num; printf(“input an interger:”); scanf(“%lu”,&n); do

{ oct[i++]=___________; num/=8; }while(_______________); for(--i,j=i;j>i/2;j--)

{ch=oct[j]; oct[j]=oct[i-j]; oct[i-j]=ch; } ________________; puts(oct); }

8. 已知一矩阵,下面的程序实现将每行的各元素均除以该行上绝对值最大的元素。 #include

#include ______________ main()

{ float a[3][4]={{1.3,2.7,3.6,-2.1},{2,3,-6.2,4.7},{-5,3,4,1.27}}; int i,j; float max; for(i=0;i<3;i++)

{ ____________; for(j=1;j<4;j++) if(fabs(a[i][j])>fabs(max)) max=a[i][j];

for(j=0;j<4;j++) ________________; }

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

{for(j=0;j<4;j++) printf(\ printf(\ } }

9.x[i],y[i]表示点d(i)的平面坐标,求d(0)至d(1)、d(1)至d(2)、...、d(4) 至d(0)的连线所构成的5边形面积。 #include \ #include \ void main()

{int i; float s,a,b,c,sdim;

float x[5]={-4.5,0.5,4.2,2.7,-3}, y[5]={2.3,4.7,1.3,-2.5,-3.3}; _____________; for(i=2;i<5;i++)

{ a=____________________________________________________________; b=sqrt((x[0]-x[i-1])*(x[0]-x[i-1])+(y[0]-y[i-1])*(y[0]-y[i-1])); c=sqrt((x[i]-x[i-1])*(x[i]-x[i-1])+(y[i]-y[i-1])*(y[i]-y[i-1])); s=______________;

s=sqrt(s*(s-a)*(s-b)*(s-c)); sdim+=s; }

printf(\}

10.如下程序使用冒泡法对输入的10个浮点数从小到大进行排序。排好序的10个数分两行输出(即每行输出5个数)。程序如下: # include main( )

{float a[10], t ; int i , j ; printf(“Input 10 float numbers please\\n”);

for(i=0;i<10;i++) scanf(“%f”,&a[i]); printf(“\\n”); for(i=1; __________;i++) for(j=0; ________;j++)

if(a[j]>a[j+1]) { t=a[j]; a[j]=a[j+1]; a[j+1]=t; }

printf(“The sorted 10 numbers:\\n”); for(i=0;i<10;i++)

{ if(______________) printf(“\\n”); printf(“%.2f\\t”,a[i]); }

printf(“\\n”); }

11.如下程序使用选择法排序对输入的10个浮点数从大到小进行排序。排好序的10个数分两行输出(即每行输出5个数)。程序如下: #include main( )

{float a[10]; int i,j,t;

printf(“Input 10 float numbers please\\n”); for(i=0;i<10;i++) scanf(“%f”,&a[i]); printf(“\\n”); for(i=0; i<9;i++) { ___________;

for(_________; j<10;j++)

if(a[j]>a[t]) t=j;

if(___________) { x=a[j]; a[j]=a[j+1];a[j+1]=x;}

printf(“The sorted 10 numbers:\\n”); for(i=0;i<10;i++)

{if(______________) printf(“\\n”); printf(“%.2f\\t”,a[i]); }

printf(“\\n”); }

五、阅读程序,写出程序运行结果 1.#include

main( )

{ int i,j; int a[6]={12,4,17,27,16}, b[6]={27,13,4,25,16}; for(i=0;i<6;i++)

{for(j=0;j<6;j++)

if(a[i]==b[j]) break; if(j<6) printf(“M”,a[i]);

}

printf(“\\n”); }

2.#include main( )

{ int a[8]={1,0,1,0,1,0,1,0},j;

for(j=2;j<8;j++) a[j]+=a[j-1]+a[j-2]; for(j=0;j<8;j++) printf(“]”,a[j]);

}

3.#include “math.h” main( ) { int i,j,r,c,

float a[3][4]={{1,3,4,2},{-10,9,12,0},{6,7,8,9}} , max;;

max=fabs(a[0][0]); r=0; c=0; for (i=0;i<3;i++) for (j=0;j<4;j++)

if (fabs(a[i][j])>max)

{max=a[i][j]; r=i; c=j; }

printf (“max=%0.2f,row=%d,column=%d\\n”,max,r,c); }

4. main( )

{ char str[20]= “Programming”; int i;

for(i=0;i

for(i-0;str[i]!= ?\\0?;i++) printf(“%c”,str[i]); printf(“\\n”); puts(str); printf(“%s\\n”,str); } 5.main( )

{int a[11]={1,4,6,9,10,15,28,40,100,120}; int t1,t2,num,end,i,j; printf(“original array is :”);

for(i=0;i<10;i++) printf(“]”,a[i]); printf(“\\n”); printf(“\\n”);

printf(“please enter a number\\n”); scanf(“%d”,&num); end=a[9];

if(num>end) a[10]=num; else {for (i=0;i<10;i++) {if (a[i]>num)

{ t1=a[i];a[i]=num; for (j=i+1;j<11;j++)

{ t2=a[j]; a[j]=t1; t1=t2;} break; } } }

for (i=0;i<11;i++) printf (“]”,a[i]); printf (“\\n”);

}

运行该程序并输入:5 6.main( )

{int a[5]={8,6,5,4,1},i,temp; printf (“\\n original array is :”)

for (i=0;i<5;i++) printf(“]”,a[i]); for (i=0;i<5/2;i++)

{temp=a[i]; a[i]=a[5-i-1]; a[5-i-1]=temp;}

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库C语言程序设计习题及答案(8)在线全文阅读。

C语言程序设计习题及答案(8).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/660825.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: