栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

为整数编号-链表

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

为整数编号-链表

使用以下结构
struct nn
{
   int no;
   int num;
};

建立一个结构数组,从键盘输入若干个整数,保存在数组元素的num成员中,并根据输入的数按从小到大进行编号,将编号保存在no成员中。按整数的输入顺序输出整数及其编号。输入的整数不超过100个,每个整数的绝对值不大于1000,输入时以空格分隔整数。
例如输入:4 3 6 8 2 3 9
输出:
      4 4
      3 2
      6 5
      8 6
      2 1
      3 3
      9 7
要求:当两个整数相等时,整数的排列顺序由输入的先后次序决定。例如:输入的第2个整数为3,第6个整数也为3,则将先输入的整数3的编号在前,后输入的整数3的编号在后。编写函数完成为整数编号。

函数原型:int number( char *str, struct nn a[] );
其中:str:保存以字符串方式接收的键盘输入,
          a: 保存整数及编号的结构数组的首地址,
函数返回值:已输入的整数的个数。 

预设代码

前置代码

view plainprint?

  1.   
  2. #include   
  3. struct nn  
  4. {  int no;     
  5.    int num;     
  6. };  
  7.   
  8. typedef struct nn DATA;  
  9.   
  10. int number( char * , DATA []);  
  11.   
  12. int main( )  
  13. {     
  14.    DATA b[100];    
  15.    char sa[500];    
  16.    int i, n;    
  17.    gets( sa );   
  18.    n = number( sa, b );   
  19.    for ( i=0; i
  20.        printf("%d %dn", b[i].num, b[i].no );   
  21.    return 0;  
  22. }  
  23.   
  24.   
  25.   
  26.   
  27.   
    
    #include  
    #include
    #include 
    struct nn  
    {  int no;     
       int num;     
    };  
      
    typedef struct nn DATA;  
      
    int number( char * , DATA []);  
      
    int main( )  
    {     
       DATA b[100];    
       char sa[500];    
       int i, n;    
       gets( sa );   
       n = number( sa, b );   
       for ( i=0; i= '0')
            {
                a[n].num *= 10;
                a[n].num += *str - '0';
            }
            else
            {
                index = 1;
                for(i = 0;i < n; i ++)
                {
                    if(a[i].num > a[n].num)
                    {
                        a[i].no ++;
                    }
                    else index ++;
                }
                a[n].no = index;
                n ++;
                a[n].no = a[n].num = 0;
            }
     
            if(*str == 0) break;
            str ++;
        }
        return n;
      } 
      
      

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/997751.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号