- 272
- 0
- 约4.41万字
- 约 52页
- 2021-08-11 发布于山东
- 举报
C语言程序设计及实验指导练习及习题参考答案(8--10)
C语言程序设计及实验指导练习及习题参考答案(8--10)
PAGE / NUMPAGES
C语言程序设计及实验指导练习及习题参考答案(8--10)
C 语言程序设计及实验指导练习及习题参照答案(
8—10
章)
8
练习参照答案
1、练习
8-1. 假如有定义: int m, n = 5, *p = m; 与 m = n 等价的语句是 B 。
A. m = *p; B. *p = *n; C. m = n; D. m = **p;
8-2. 设计一个程序计算输入的两个数的和与差,要求自定义一个函数 sum_diff(float op1,
float op2, float *psum, float *pdiff) ,此中 op1 和 op2 是输入的两个数, *psum 和*pdiff
是
计算得出的和与差。
解答:
#include stdio.h
int main (void)
{
float op1, op2, sum, diff;
void sum_diff(float op1, float op2, float *psum, float *pdiff);
printf( “ input op1 and op2: “ );
scanf( “ %f%f” , op1, op2);
sum_diff(op1, op2, sum, diff);
printf( “ %f+%f n” ,op1,op2,sum,op1,op2,diff);
return 0;
}
void sum_diff(float op1, float op2, float *psum, float *pdiff)
{
*psum = op1 + op2;
*pdiff = op1 –op2;
}
8-3. 两个同样种类的指针变量能不可以相加?为何?
解答:
不可以。 因为指针变量是一种特别的变量, 指针变量的值寄存的是所指向变量的地点, 两个地
址相加其实不可以保证结果为一个有效的地点值,因此在 C 语言中指针变量相加是非法的。
8-4. 依据表 8.2 所示,这组数据的冒泡排序其实循环到第 6 遍(即 n-2 )时就已经排好序了,
说明有时其实不必定需要 n-1 次循环。 请思虑怎样改良冒泡排序算法并编程实现 (提示: 当
发现一遍循环后没有数据发生互换,说明已经排好序了)。
解答:设置一个标记变量 flag ,进入一轮循环前设置为 0 ,在循环中有发生数据互换就改写
flag 值为 1。当该轮循环结束后检查 flag 值,假如变成 1 说明发生了数据互换,还没有排好
序,假如为 0 说明没有发生互换,已经排好序。
#include stdio.h
void bubble (int a[ ], int n);
int main(void)
{
int n, a[8];
int i;
printf(Enter n (n=8): );
scanf(%d, n);
printf(Enter a[%d] : ,n);
for (i=0; in;i++)
scanf(%d,a[i]);
bubble(a,n);
printf(After sorted, a[%d] = , n);
for (i=0; in; i++)
printf(%3d,a[i]);
return 0;
}
void bubble (int a[ ], int n) /* n 是数组 a 中待排序元素的数目 */
{
int i, j, t, flag;
for( i = 1; i n; i++ )
{ /* 外面循环 */ flag=0;
for (j = 0; j n-i; j++ ) /* 内部循环 */
if (a[j] a[j+1])
{ /* 比较两个元素的大小
*/
t=a[j]; a[j]=a[j+1]; a[j+1]=t; /*
flag=1; /* 发生互换, flag
假如前一个元素大,则互换置为1*/
*/
}
if (flag==0) /* 假如一轮循环没有发生数据互换,排序结束 */ break;
}
}
8-5. 重做例 8-9 ,要求使用选择排序算法。
解答:
#include stdio.h
void bubble (int a[ ], int n);
int main(void)
{
int n, a[8];
int i;
printf(Enter n (n=8): );
scanf(%d, n);
printf(Enter a[%d] : ,n);
for (i=0; in;i++)
scanf(%d,a[i]);
bubble(a,n);
prin
您可能关注的文档
- 2020年高考语文一轮复习语言文字应用专题八:压缩语段.doc
- 2020年高考语文作文素材之时事热评:莫让“悲情营销”消费爱心.doc
- 2020年黑龙江龙东地区中考语文考试说明.doc
- 2020年鼠年拜年短信大全.doc
- 2020江西高考作文题目预测及范文:克服恐惧,勇敢抉择.doc
- 2020深圳中考作文题目解析及范文.doc
- 2020申论考试热点及范文.doc
- 2020秋季学期幼儿园大班班主任工作计划.doc
- 2020管理学考研冲刺模拟试题及答案(一).doc
- 2020高考作文素材:习惯.doc
- 2026广东河源市东源县乡村公益性岗位安置人员招聘备考题库附参考答案详解(b卷).docx
- 2026广东河源市东源县乡村公益性岗位安置人员招聘备考题库有答案详解.docx
- 2026广东河源市东源县乡村公益性岗位安置人员招聘备考题库附答案详解(轻巧夺冠).docx
- 2026广东河源市东源县乡村公益性岗位安置人员招聘备考题库附答案详解(综合卷).docx
- 2026广东河源市东源县乡村公益性岗位安置人员招聘备考题库附答案详解(精练).docx
- 2026广东河源市东源县乡村公益性岗位安置人员招聘备考题库附答案详解(突破训练).docx
- 2026广东河源市东源县乡村公益性岗位安置人员招聘备考题库附答案详解(满分必刷).docx
- 2026广东河源市东源县乡村公益性岗位安置人员招聘备考题库附答案详解(模拟题).docx
- 2026广东河源市东源县乡村公益性岗位安置人员招聘备考题库附答案详解(研优卷).docx
- 2026广东河源市东源县乡村公益性岗位安置人员招聘备考题库附答案详解(巩固).docx
原创力文档

文档评论(0)