自考“高级语言程序设计”习题答案详解(30)_工学-查字典自考网
 
请输入您要查询的关键词
  查字典自考网 >> 工学 >> 自考“高级语言程序设计”习题答案详解(30)

自考“高级语言程序设计”习题答案详解(30)

发布时间: 2016-06-29 来源:查字典自考网

2.编一个程序,输入15个整数存入一维数组,再按逆序重新存放后再输出。

「解」输入数组的元素,并重新颠倒存放后输出。将存储于数组中的元素颠倒存储,只要首尾相对应的元素两两交换即可。若用指针实现,可让一个指针p指向前端的元素,另一个指针q指向与前端元素对应的后端的元素。循环前,让p指向数组的首元素,让q指向数组的末元素。循环时,让p和q所指两个元素交换,并让p增1,q减l.循环条件是p所指元素在前,q所指元素在后,即p<q.程序如下:

# include

main()

{ int a[15],*p,*q, temp;

printf(“Enter 15 numbers.n”);

for(p=a;p<a+15;p++)

scanf(“%d”, p);

for(p=a,q=a+14;p<q;P++,q——) {

temp=*p; *p=*q;*q=temp;

}

for(p=a;p<A+15;P++)

printf(“%dt”,*p);

printf(“n”);

}

3.输入一个字符串,按相反的次序输出其中的全部字符。

「解」要相反的次序输出字符串的全部字符,可用一个字符指针变量,从指向字符串的本字符开始,逆序遍历字符串,输出指针所指字符即可。但为了让字符指针指向字符串的末字符,若不用字符串处理库函数,得用一个循环,让它从字符串的首字符开始,顺序移至字符串的结束标记符,然后倒退一个字符,就能让它指向字符串的末字符。程序如下:

# include

# define N 200

main()

{ char s[N],*p;

printf(“Enter a string.n”);

scanf(“%s”, s);

for(p=s;*p; p++);

for(p——; p=s; p——)

printf(“%c”,*p);

printf(“n”);

}

4.输入一个一维实型数组,输出其中的最大值、最小值和平均值。

「解」设实型数组的元素个数n不超过20.程序输入n,并用循环输入数组的元素,再用循环遍历数组,求出数组的最大值和最小值、数组元素的和。然后求出数组元素的平均值,最后输出结果。程序如下:

# include

# define N 20

main()

{ double a[N],max,min,ave,*p, t;

int n;

printf(“Enter n(0<n<20)。n”);

do{

scanf(“%d”,&n);

if(n0 && n<20) break;

printf(“n值不合要求,请重新输入!n”);

} while(l);

printf(“输入%d个实数n”, n);

for(n=a;n<A+N; P++){

scanf(“%lf”,&t);*p=t;

}

max=min=ave=*a;

for(p=p+l;p<A+N; P++){

if(max<*p) max=*p;

if(min*p) min=*p;

ave+=*p;

}

ave/=n;

printf(“最大值:%ft最小值:%ft平均值:%fn”,max,min,ave);

}

点击显示
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读

当前热点关注

  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • [相关地区]