程序设计上机实验课后答案(3)

2019-03-16 10:18

{ float data[10]; /*存放浮点数的一维数组*/

float result1=0.0,result2=0.0; /*定义变量,分别存放正数和、负数和*/ int i;

printf(\ for(i=0;i<10;i++)

scanf(\ /*逐一输入数据*/ for(i=0;i<10;i++) { if(data[i]>0.0)

result1+=data[i]; /*累加正数*/ else

result2+=data[i]; /*累加负数*/ }

printf(\ printf(\ }

2. #include

#include \#define N 101 main() {

int i,j,line,a[N];

for(i=2;i

if(a[i]!=0&&a[j]!=0) if(a[j]%a[i]==0) a[j]=0;} printf(\

for(i=2,line=0;i

if(a[i]!=0)

{printf(\ line++;} if(line==10) {printf(\line=0;} } }

3. #include

#define N 10 main()

{int i,j,min,tem,a[N]; /*input data*/

printf(\for(i=0;i

printf(\

11

scanf(\printf(\for(i=0;i

for(j=i+1;ja[j]) min=j; tem=a[i]; a[i]=a[min]; a[min]=tem; }

/*output data*/

printf(\for(i=0;i

4. #include

main() {

int a[11]={1,4,6,9,13,16,19,28,40,100}; int temp1,temp2,number,end,i,j; printf(\for(i=0;i<10;i++) printf(\printf(\

printf(\scanf(\end=a[9];

if(number>end) a[10]=number; else

{for(i=0;i<10;i++) { if(a[i]>number) {temp1=a[i]; a[i]=number;

for(j=i+1;j<11;j++) {temp2=a[j]; a[j]=temp1; temp1=temp2; }

break; } } }

for(i=0;i<11;i++) printf(\}

12

5. #include

#define N 5 main()

{ int a[N]={9,6,5,4,1},i,temp; printf(\ for(i=0;i

a[i]=a[N-i-1]; a[N-i-1]=temp; }

printf(\for(i=0;i

printf(\}

6. #include

main() {int i,j;

int a[10][10]; printf(\for(i=0;i<10;i++) {a[i][0]=1; a[i][i]=1;} for(i=2;i<10;i++) for(j=1;j

a[i][j]=a[i-1][j-1]+a[i-1][j]; for(i=0;i<10;i++) {for(j=0;j<=i;j++) printf(\ printf(\ } }

7. #include

main()

{int a,i,aa[4],t; scanf(\aa[0]=a; aa[1]=a0/10; aa[2]=a00/100; aa[3]=a/1000; for(i=0;i<=3;i++) {aa[i]+=5; aa[i]%=10; }

for(i=0;i<=3/2;i++) {t=aa[i];

aa[i]=aa[3-i]; aa[3-i]=t;

13

}

for(i=3;i>=0;i--) printf(\}

8. #include

main()

{ int matrix[4][4]; //定义数组,存放矩阵元素

int k,j,result1=0,result2=0; //result1和result2分别存放两对角线元素和 for(k=0;k<4;k++) //逐行输入数据 {

printf(\

for(j=0;j<4;j++) //逐列输入数据 {

scanf(\

if(k==j) //累加对角线上的元素 result1+=matrix[k][j];

if(k+j==3) //累加反对角线上的元素 result2+=matrix[k][j]; } }

printf(\}

该矩阵周边12个元素之和以及矩阵主对角线及其下方(共10个) 元素之和答案略。 9. #include

#define N 4

main(){ int i,j,med; int b[N][N];

static int a[N][N]={ 1, 2, 3, 4, 5,16,17,18,19, 6, 15,24,25,20, 7, 14,23,22,21, 8, 13,12,11,10, 9 };

printf(\ for(i=0;i<=N-1;i++) { for(j=0;j<=N-1;j++) printf(\分)

for(i=0;i<=N-1;i++)for(j=0;j<=N-1;j++)b[N-1-j]=a[j]; (3分) /*Try: b[N-1-j]=a[j];

(This Is Up And Down Convert ) Try: b[N-1-j]=a[j]; (This Is Left And Right Convert) */ printf(\for(i=0;i<=N-1;i++) {for(j=0;j<=N-1;j++) printf(\printf(\} }

10. 程序提示:

输入矩阵

flag2=0;//矩阵中无鞍点

for(i=0;i

max=a[i][0];maxj=0;

用for循环语句找第i行的最大值存放在max中,其下标j保存到maxj中

for(k=0,flag1=1;k

14

if(max>a[k][maxj]) flag1=0;//max不是该列的最小元素 if(flag1) {

printf(\第%d行第%d列的%d是鞍点\\n\1,maxj+1,max); flag2=1; } }//endfor if(!flag2)

printf(\矩阵中无鞍点\\n\

11. #include

main() {

static int month_tab[2][13] = {

{0,31,28,31,30,31,30,31,31,30,31,30,31}, /*利用数组,将非闰年的每月天数列成一个表*/ {0,31,29,31,30,31,30,31,31,30,31,30,31} /*闰年的每月天数对应的表*/ };

int year, month, day; int yearday,leap,i;

printf(\

scanf(\ /*输入年、月、日*/

leap = ((year %4 == 0) &&(year 0 != 0)||(year % 400 == 0));/*判定是否为闰年*/ yearday = day ;

for (i=1;i

yearday+=month_tab[leap][i]; /*计算是该年的第几天*/ printf(\ }

12. #include

main()

{ char a[41],b[21]; //定义两个字符型数组,用以分别存放两个字符串 int j,k; //定义两个循环因子

printf(\ scanf(\

printf(\ scanf(\

while (a[i]!=’\\0’)

i++ ; /*搜索到第一个字符串的结尾处*/

while (b[j]!=’\\0’) /*将第二个字符串中的字符逐一拷贝到第一个字符串的后面*/ { a[i]=b[j] ; i++ ; j++ ; }

a[i]='\\0'; /*加字符串结尾标志*/ printf(\}

13. #include

main()

{ char str1[100],str2[100]; //str1用于存放输入的数字,str2用于存放输入的字母 char c; //存放临时数据的变量 int i=0,j=0;

15


程序设计上机实验课后答案(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:管理会计

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: