上一题下一题
跳转到
 
 
  世界如此多姿,发展如此迅速,窥一斑未必还能知全豹。但正如万花筒一样,每一个管窥都色彩斑斓。  
 
 
  知识通道 | 学习首页 | 教师首页 | PK首页 | 知识创造首页 | 企业首页 | 登录
 
本文对应知识领域
c语言 上机题库(29-33)
作者:未知 申领版权
2010年12月12日 共有 1037 次访问 【添加到收藏夹】 【我要附加题目
受欢迎度:

    29. 函数FUN的功能是:将形参a所指数组中的前半部分元素中的值和后半部分元素中的值对换。形参n中存放数组中数据的个数,若n为奇数,则中间元素不动。例如:若a所指数组中的数据依次为:1 2 3 4 5 6 7 .8 9,则调换后为:6,7,8,9,1,2,3,4。
    #include    <stdio.h>
    #define    N    9
    void fun(int  a[], int  n)
    {  int  i, t, p;
    /**********************************found*********************************/
    p = (n%2==0)?n/2:n/___1____;                               2 1
    for (i=0; i<n/2; i )
    {
    t=a[i];
    /**********************************found*********************************/
    a[i] = a[p ___2___];                                      i
    /**********************************found*********************************/
    a[___3___]= t; p I                                     p i
    }
    }
    main( )
    {  int  b[N]={1,2,3,4,5,6,7,8,9}, i;
    printf("\nThe original data  :\n");
    for (i=0; i<N; i )  printf("%4d ", b[i]);
    printf("\n");
    fun(b, N);
    printf("\nThe data after moving  :\n");
    for (i=0; i<N; i )  printf("%4d ", b[i]);
    printf("\n");
    }
    
    30.给定程序中,函数FUN的功能是:有N X N矩阵,以主对角线为对称线,对称元素相加并将结果存放在左下三角元素中,右上三角元素置为0。
    例如,若N=3,有下列矩阵:  计算结果为
    1 2 2  1 0 0
    4 5 6 6 5 0
    7 8 9 10 14 9
    
    #include    <stdio.h>
    #define    N    4
    /**********************************found*********************************/
    void fun(int  (*t)___1___ )
    {  int  i, j;
    for(i=1; i<N; i )
    {  for(j=0; j<i; j )
    {
    /**********************************found*********************************/
    ___2___ =t[i][j] t[j][i];
    /**********************************found*********************************/
    ___3___ =0;
    }
    }
    }
    main( )
    {  int  t[][N]={21,12,13,24,25,16,47,38,29,11,32,54,42,21,33,10}, i, j;
    printf("\nThe original array:\n");
    for(i=0; i<N; i )
    {  for(j=0; j<N; j )  printf("%2d  ",t[i][j]);
    printf("\n");
    }
    fun(t);
    printf("\nThe result is:\n");
    for(i=0; i<N; i )
    {  for(j=0; j<N; j )  printf("%2d  ",t[i][j]);
    printf("\n");
    }
    }
    
    31. 给定程序中已建立一个带有头结点的单向链表,在main函数中将多次调用FUN函数,每调用一次FUN函数,输出链表尾部结点中的数据,并释放该结点,使链表缩短。
    #include    <stdio.h>
    #include    <stdlib.h>
    #define    N    8
    typedef  struct list
    {  int  data;
    struct list  *next;
    } SLIST;
    
    void fun( SLIST  *p)
    {  SLIST  *t, *s;
    t=p->next;    s=p;
    while(t->next != NULL)
    {  s=t;
    /**********************************found*********************************/
    t=____1_____;  t->next
    }
    /**********************************found*********************************/
    printf(" %d ",___2___);  s->data
    s->next=NULL;
    /**********************************found*********************************/
    free(___3___); t
    }
    SLIST *creatlist(int  *a)
    {  SLIST  *h,*p,*q;      int  i;
    h=p=(SLIST *)malloc(sizeof(SLIST));
    for(i=0; i<N; i )
    {  q=(SLIST *)malloc(sizeof(SLIST));
    q->data=a[i];  p->next=q;  p=q;
    }
    p->next=0;
    return  h;
    }
    void outlist(SLIST  *h)
    {  SLIST  *p;
    p=h->next;
    if (p==NULL)  printf("\nThe list is NULL!\n");
    else
    {  printf("\nHead");
    do { printf("->%d",p->data);  p=p->next;  } while(p!=NULL);
    printf("->End\n");
    }
    }
    main( )
    {  SLIST  *head;
    int  a[N]={11,12,15,18,19,22,25,29};
    head=creatlist(a);
    printf("\nOutput from head:\n");  outlist(head);
    printf("\nOutput from tail: \n");
    while (head->next != NULL){
    fun(head);
    printf("\n\n");
    printf("\nOutput from head again :\n");  outlist(head);
    }}
    
    32. 函数FUN的功能是:计算
    
    的前n项。若X=2.5,N=15时,函数值为:1.142857。
    #include    <stdio.h>
    #include    <math.h>
    double fun(double  x, int  n)
    {  double  f, t;      int  i;
    /**********************************found*********************************/
    f =___1___;                                               1.0
    t = -1;
    for (i=1; i<n; i )
    {
    /**********************************found*********************************/
    t *= (___2___)*x/n;                                      -1
    /**********************************found*********************************/
    f  = ___3___;                                            t
    }
    return  f;
    }
    main( )
    {  double  x, y;
    x=2.5;
    y = fun(x, 15);
    printf("\nThe result is :\n");
    printf("x=%-12.6f    y=%-12.6f\n", x, y);
    }
    
    33.给定程序中,函数FUN的功能是:计算N X N矩阵的主对角线元素和反向对角线元素之和,并作为函数值返回。注意:要求先累加主对角线元素中的值,软后累加反向对角线的值。例如,若N=3 有下列矩阵:
    1   2    3
    4   5    6
    7   8    9
    FUN函数首先累加1,5,9,然后累加3,5,7,喊素的返回值为30。
    #include    <stdio.h>
    #define    N    4
    fun(int  t[][N], int  n)
    {  int  i, sum;
    /**********************************found*********************************/
    ___1___;                                              sum=0
    for(i=0; i<n; i )
    /**********************************found*********************************/
    sum =___2___ ;                                      t[i][i]
    for(i=0; i<n; i )
    /**********************************found*********************************/
    sum = t[i][n-i-___3___] ;                                 1
    return sum;
    }
    main( )
    {  int  t[][N]={21,2,13,24,25,16,47,38,29,11,32,54,42,21,3,10},i,j;
    printf("\nThe original data:\n");
    for(i=0; i<N; i )
    {  for(j=0; j<N; j )  printf("%4d",t[i][j]);
    printf("\n");
    }
    printf("The result is:  %d",fun(t,N));
    }
    
    

 

相关新闻

肢体语言塑造你自己
杂谈语言(之六)——文字改革(下):一失足成千古恨的文字改革
杂谈语言(之五)——文字改革(上):半吊子的改革最糟糕!
杂谈语言(之四)——续谈广东话的口头语(2)
杂谈语言(之四)——续谈广东话的口头语(1)
杂谈语言(之三)——那些深受古汉语影响的语言(方言)
杂谈语言(之二)——语言学习的边际成本递减效应
波兰(二)
捷克(二)
SQL语言入门教程(16 )

您可能对这些感兴趣  

第7讲 综合分析BIM在运用与推广中的障碍问题
考核学生质量的困难
日本福岛核电站事故初步分析
论科技异化与科技人化
中国科技计划项目管理现状与对策
财政科技资金的审计重点和内容
软科学研究机构在政府决策中的功效、困境及对策研究
打造超级DOS系统(下)
DOS命令基础应用(6)
打造超级DOS系统(上)

题目筛选器
日期:
类型:
状态:
得分: <=
分类:
作者:
职业:
关键字:
搜索

 
 
 
  焦点事件
 
  知识体系
 
  职业列表
 
 
  最热文章
 
 
  最多引用文章
 
 
  最新文章
 
 
 
 
网站介绍 | 广告服务 | 招聘信息 | 保护隐私权 | 免责条款 | 法律顾问 | 意见反馈
版权所有 不得转载
沪ICP备 10203777 号 联系电话:021-54428255
  帮助提示    
《我的太学》是一种全新的应用,您在操作中遇到疑问或者问题,请拨打电话13564659895,15921448526。
《我的太学》