云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > C语言课后习题部分答案-原版2012-12-10

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

  • 62 次阅读
  • 3 次下载
  • 2026/1/27 13:11:03

}

【6.1】编函数判断任意给定的二维整数组(100X100)中是否有相同元素。 #include int main(void) {

int i = 0, j = 0; int array[100][100];

int value = 1;

for (; i < 100; i++) {

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

array[i][j] = value; value++; } }

int m,n;

array[17][99] = 8888; //预设置一个相同的数值 _Bool bSame = 0;

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

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

int temp = array[i][j];

n = j + 1;

for (m = i; m < 100; m++) {

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

if (temp == array[m][n]) {

printf(\, m, n); bSame = 1; goto over; } }

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

} }

over:

if (bSame) {

printf(\包含相同元素\); } else {

printf(\不包含相同元素\); }

return 0; }

【6.3】 编写函数将矩阵转置 #include

void print(int array[][4]) {

int i,j;

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

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

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

printf(\); } }

int main(void) {

int i = 0, j;

int array[4][4] = {{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}, {13, 14, 15, 16}};

print(array);

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

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

}

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

printf(\转置之后的结果为\\n\); print(array);

return 0; }

【6.6】 编写函数,把数组中的相同元素删除 #include

#define GET_ARRAY_LEN(array,len){len = (sizeof(array) / sizeof(array[0]));}

//本题将删除元素后的数组最后一个元素设置为-1 int len;

void removeArray(int *array) {

int i, j, k;

for (i = 0; i < len - 1; i++) {

for (j = i + 1; j < len; ) {

if (array[j] == -1 || array[i] != array[j]) {

j++; } else { }

//移动后面的元素

for (k = j; k < len - 1; k++) {

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

array[len - 1] = -1; //设置最后一个元素为-1 } } }

int main(void) {

int array[] = {12, 14, 50, 67, 14, 45, 50, 50, 1, 32};

GET_ARRAY_LEN(array, len);

removeArray(array);

int i = 0;

for (; i < len; i++) {

printf(\, array[i]); }

return 0; }

【6.7】 找出给定二维数组中所有鞍点。若数组元素A[i][j]恰好是第i行的最小值,第j列的最大值则称为鞍点。 #include

void print(int array[][4]); int main(void) {

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

int i, j, k;

print(array);

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

int rowMin = array[i][0]; int minY = 0;

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

if (array[i][j] < rowMin) {

rowMin = array[i][j]; //记录当前行的最小值 minY = j; } }

//内层循环结束,表示完成一行比对,获取到了当前行的最小值,使用minY坐标获取该列的最大值

搜索更多关于: C语言课后习题部分答案-原版2012-12-10 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

} 【6.1】编函数判断任意给定的二维整数组(100X100)中是否有相同元素。 #include int main(void) { int i = 0, j = 0; int array[100][100]; int value = 1; for (; i < 100; i++) { for (j = 0; j < 100; j++) { array[i][j] = value; value++; } } int m,n; array[17][99] = 8888; //预设置一个相同的数值 _Bool bSame = 0; for (i = 0;

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com