(6)巩固一下C语言基础知识,谁动手,谁收获。

简介: 问题21: 有一个3×4的矩阵,要求编写程序找出每一行中最大值并与第一列交换。(20分) 问题22: 用指针实现:把一个整数插入到由小到大排列的数列中,插入后仍然保持由小到大的顺序。

问题21:
有一个3×4的矩阵,要求编写程序找出每一行中最大值并与第一列交换。(20分)


问题22:
用指针实现:把一个整数插入到由小到大排列的数列中,插入后仍然保持由小到大的顺序。(20分)

问题21实现代码:

/* author:宋金时 */
/* date:2011/11/04 */

#include "Stdio.h"
#include "Conio.h"
#define HANG 3
#define LIE 4

int main(void)
{
 /* 此处添加你自己的代码 */
  int arr_num[HANG][LIE],m_i,m_j,m_max;
  puts("please a 3*4 number:");
  for(m_i=0;m_i<HANG;m_i++)
  {
    for(m_j=0;m_j<LIE;m_j++)
    {
        scanf("%d",&arr_num[m_i][m_j]);
    }
  }
  for(m_i=0;m_i<HANG;m_i++)
  {
    m_max = 0;
    for(m_j=0;m_j<LIE;m_j++)
    {
       if(arr_num[m_i][m_j]>arr_num[m_i][m_max])
       {
        m_max = m_j;
       }
    }
    arr_num[m_i][0]^=arr_num[m_i][m_max];
    arr_num[m_i][m_max]^=arr_num[m_i][0];
    arr_num[m_i][0]^=arr_num[m_i][m_max];
    for(m_j=0;m_j<LIE;m_j++)
    {
        printf("%d ",arr_num[m_i][m_j]);
    }
    printf("\n");
  }
  getch();
  return 0;
}

问题22实现代码:
/* author:宋金时 */
/* date:2011/11/04 */

#include "Stdio.h"
#include "Conio.h"

#define N 20
#define INIT_COUNT 5
int g_count=INIT_COUNT;
void insert(int arr_num[],int num);

int main(void)
{
 /* 此处添加你自己的代码 */
  int m_arr[N]={1,2,3,4,5},m_input;
  puts("please input insert's number:");
  scanf("%d",&m_input);
  insert(m_arr,m_input);
  getch();
  return 0;
}

void insert(int arr_num[],int num)
{
    int m_i,m_pos=-1;
    int* m_p = arr_num;
    for(m_i=0;m_i<g_count;m_i++)
    {
        if(num<=*(m_p+m_i))
        {
            m_pos = m_i;
            break;
        }
    }
    if(m_pos!=-1)
    {
        for(m_i=g_count;m_i>m_pos;m_i--)
        {
           *(m_p+m_i) = *(m_p+m_i-1);
        }
        *(m_p+m_pos) = num;
    }
    else
    {
        *(m_p+g_count) = num;
    }
    g_count++;
    puts("inserted data:");
    for(m_i=0;m_i<g_count;m_i++)
    {
        printf("%d ",*(m_p+m_i));
    }
    printf("\n");
}


目录
相关文章
|
4月前
|
存储 机器学习/深度学习 算法
c语言基础知识帮助理解(函数递归详解)
c语言基础知识帮助理解(函数递归详解)
35 0
|
4月前
|
C语言
c语言基础知识整理与帮助理解——二.数据的输出与输入
c语言基础知识整理与帮助理解——二.数据的输出与输入
59 0
|
4月前
|
Java C语言
c语言基础知识整理与帮助理解(第一篇)
c语言基础知识整理与帮助理解(第一篇)
61 0
|
4月前
|
C语言
C语言中指针的基础知识
C语言中指针的基础知识
37 0
|
4月前
|
人工智能 算法 编译器
C语言初阶测评题:测试你的基础知识和编程技能!!
C语言初阶测评题:测试你的基础知识和编程技能!!
50 1
|
6月前
|
存储 C语言 索引
初识C语言——C语言基础知识(三)(数组和操作符)
初识C语言——C语言基础知识(三)(数组和操作符)
57 0
|
6月前
|
程序员 编译器 C语言
初识C语言——C语言基础知识(一)
初识C语言——C语言基础知识(一)
44 0
初识C语言——C语言基础知识(一)
|
5月前
|
C语言
C语言结构体基础知识
C语言结构体基础知识
41 0
|
2月前
|
存储 缓存 编译器
C语言:基础知识
C语言:基础知识
|
4月前
|
存储 编译器 C语言
c语言基础知识帮助理解(详解数组)
c语言基础知识帮助理解(详解数组)
48 0