2021-01-30

本文档展示了C语言实现的字符串排序算法,包括按字母顺序排列三个输入字符串,并介绍如何读取并计算4x3二维数组的行、列和整体总和。此外,还涉及二维数组元素的行列互换,通过实例演示了如何将输入数组转换为新的矩阵形式。
摘要由CSDN通过智能技术生成

每日三题

1.输入三个字符串,按由小到大的顺序输出。

#include"stdio.h"
#include"string.h"
 void main()
{
    char st[20],string[3][20];
    int i,j,p;
    printf("input three string:\n");
    for(i=0;i<3;i++)
        gets(string[i]);
    printf("\n");
    
    for(i=0;i<3;i++)
    {
      p=i;
      strcpy(st,string[i]);
      for(j=i+1;j<3;j++)
        if(strcmp(string[j],st)<0)
           {
            p=j;
            strcpy(st,string[j]);
           }
      if(p!=i)
        {
        strcpy(st,string[i]);
        strcpy(string[i],string[p]);
        strcpy(string[p],st);
        }
      puts(string[i]);
   }
}

2.读入4*3的二维数组,分别求各行、各列及表中所有数之和。
1 2 3 [0][3]
4 5 6 [1][3]
7 8 9 [2][3]
10 11 12 [3][3]
[4][0] [4][1] [4][2] [4][3]

 #include"stdio.h"
 void main()
 {
     int arr[5][4];
     int i,j;
    printf("please input the arr:\n");
     for(i=0;i<4;i++)
         for(j=0;j<3;j++)
             scanf("%d",&arr[i][j]);
             
     for(i=0;i<4;i++)  
         arr[i][3]=0;
     for(j=0;j<3;j++)
         arr[4][j]=0; 
     for(i=0;i<5;i++)
       {
        for(j=0;j<4;j++)
             printf("%5d",arr[i][j]);
         printf("\n");   
      } 
    for(i=0;i<4;i++)
         for(j=0;j<3;j++)
         {   
             arr[4][3]+=arr[i][j];
            arr[i][3]+=arr[i][j];
             arr[4][j]+=arr[i][j];
        }     
    printf("the result is :\n");
    for(i=0;i<5;i++)
       {
        for(j=0;j<4;j++)
             printf("%5d",arr[i][j]);
         printf("\n");   
      }      
 }

3.将二维数组行列元素互换,存到另一个数组中。

#include "stdio.h"
 void main()
 {
     int arr[3][4];
     int arr_result[4][3];
     int i,j;
     printf("please input the arr:\n");
     for(i=0;i<3;i++)
         for(j=0;j<4;j++)
             scanf("%d",&arr[i][j]);
     for(i=0;i<3;i++)
       {
        for(j=0;j<4;j++)
             printf("%5d",arr[i][j]);
         printf("\n");   
      }  
     for(i=0;i<4;i++)
        for(j=0;j<3;j++)
            arr_result[i][j]=arr[j][i]; 
    printf("the result is :\n");
    for(i=0;i<4;i++)
       {
        for(j=0;j<3;j++)
             printf("%5d",arr_result[i][j]);
         printf("\n");   
      } 
 }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值