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

C语言课后习题部分答案-原版2012-12-10

来源:用户分享 时间:2025/6/6 14:43:02 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

}

for (k = 0; k < 4; k++) //k作为横坐标 {

//如果存在k大于array[i][minY],则不是鞍点 if (array[k][minY] > rowMin) {

break; } }

if (k == 4) {

//如果循环k未找到大于array[minX][minY]的值,则表示找到鞍点 printf(\是鞍点,值为 %d\\n\, i, minY, rowMin); } }

return 0;

【6.9】 编函数,将给定数组中0元素全部移到后部,且所有非0元素顺序不变 #include int main(void) {

int array[10] = {12, 34, 91, 0, 44, 82, 94, 0, 0, 44};

int i, j, count = 0;

for (i = 0; i < 10 - count; ) {

if (array[i] == 0) {

for (j = i; j < 9; j++) {

array[j] = array[j + 1]; }

array[9] = 0; count++; } else {

i++; } }

for (i = 0; i < 10; i++) {

printf(\, array[i]); }

return 0; }

【6.14】对任意给定的m*n阶整数矩阵的每行按递增排序, #include int main(void) {

int array[3][4] = {{12, 33, 45, 67}, {99, 78, 88, 69}, {5, 123, 66, 51}};

int i, j, k;

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

}

//对每行的数组元素进行排序 for (j = 0; j < 4; j++) {

for (k = j + 1; k < 4; k++) {

if (array[i][j] > array[i][k]) {

int temp = array[i][j]; array[i][j] = array[i][k]; array[i][k] = temp; } } }

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

//根据数组每行第一个元素,对行进行排序 for (k = i + 1; k < 3; k++) {

if (array[i][0] > array[k][0]) {

//交换两行

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

int temp = array[i][j]; array[i][j] = array[k][j]; array[k][j] = temp;

}

} } } }

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

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

printf(\, array[i][j]); }

printf(\); }

return 0;

【6.15】 编函数,对任意给定的m*n阶整数矩阵排序 #include int main(void) {

int array[3][4] = {{67, 33, 12, 45}, {99, 78, 88, 69}, {5, 123, 66, 51}};

int i, j, m, n;

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

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

m = i; //设置开始比对的行 n = j + 1; //设置开始比对的列 for (; m < 3; m++) {

for (; n < 4; n++) {

if (array[i][j] > array[m][n]) {

int temp = array[i][j]; array[i][j] = array[m][n]; array[m][n] = temp; } }

n = 0; //纵坐标归0 }

}

} }

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

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

printf(\, array[i][j]); }

printf(\); }

return 0;

【6.16】 数组A未排序;今有一个索引数组B保存A的下标,编程序,不改变A,只改变数组B完成对A的排序

#include int main(void) {

int datas[5] = {10, 7, 5, 8, 4}; int index[5] = {1, 2, 3, 4, 5};

int i, j;

for (i = 0; i < 5; i++) {

int count = 1;

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

if (datas[i] > datas[j]) {

}

count++; //记录当前数字大于数组中的其他数字的次数 } }

index[i] = count;

for (i = 0; i < 5; i++) {

printf(\, datas[i]); }

printf(\);

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

搜索更多关于: C语言课后习题部分答案-原版2012-12-10 的文档
C语言课后习题部分答案-原版2012-12-10.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c67z5v2llog6i8ss1cmtb_4.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top