2012年自考“高级语言程序设计”经典习题及答案(17)
来源:本站整理 时间:2020-02-13 15:55:27
}
解 程序第一段的功能是按行顺序输入数组a 的元素。程序第二段的功能是按行顺序输入数组b的元素。程序第三段的功能是顺序累加数组a和数组b的对应元素,并将和存于数组C的对应元素中。最后,按行顺序输出数组C的全部元素。
4.4 程序设计题
1.编程序,输入单精度型一维数组 a[10] ,计算并输出 a数组中所有元素的平均值。
解 为了计算数组元素的平均值,首先要累计它的全部元素的和,然后除以数组元素的个数,即得数组元素的平均值。写成C程序如下:
# include
main()
{ int i, n=10;
float s,a[10] ;
printf( Enter %d numbers! \n , n);
for( i=0;i n; i++)
{ scanf( %f , s); a= s;
}
for(s=0.0,i=0;i
s+= a ;
s /=n;
printf( 平均值是%.2f\n , s);
}
2.编程序,输入10个整数存入一维数组,再按逆序重新存放后再输出。
解 将数组的元素逆序重新存放,就是将数组的首尾对应元素两两交换。简单地可用两个游标变量i和j,i是前端元素的下标,j是后端元素的下标,交换以这两个变量值为下标的数组元素。开始时,i的值为0,j的值为末元素的下标。每次交换后,i增1,j减1.继续交换的
条件是i
# include
main()
{ int a[10], i,j,t,n=10;
printf( Enter %d numbers! \n , n);
for(i=0;i
scanf( %d , a );
for(i=0,j=n-1;i
t= a; a=a[j] ;a[j] =t;
}
for(i=0; i
printf( %d\t , a);
printf( \n );
}
3.编程序,输入两个字符串( 40个字符) ,连接后输出(不准用系统函数) .
解 将字符串s2连接到字符串s1的计算过程可分两个步骤完成。首先找到字符串s1的末尾,然后参照字符串s2,将字符串s2的全部有效字符逐一复制到字符串s1,最后在字符串s1的末尾接上字符率结束标记符。完整程序如下:
# include
# define N 40
main()
{ char s1[N] ,s2[N];
int i,j;
printf( Enter stringl!\n );
scanf( %s ,s1);
printf( Enter string2! \n );
scanf( %s , s2);
for(i=0; sl!= \0 ; i++) ;
for(j=0;s2[j]!= \0 ;i++,j++)
so=s[j] ;
s1= \0
printf( sl=%s\n ,sl);
}