C期末题库4

编程入门 行业动态 更新时间:2024-10-11 11:19:51

C期末<a href=https://www.elefans.com/category/jswz/34/1762675.html style=题库4"/>

C期末题库4

1

/*------------------------------------------------
【程序设计】
--------------------------------------------------题目:计算下式前n项的和作为函数值返回。s=(1*3)/2+(3*5)/4+(5*7)/6+(2*n-1)* (2*n+1)/(2*n)例如,当形参n的值为10时,函数返回:108.535516。
*********Begin**********和**********  End  **********不可删除------------------------------------------------*/
void  TestFunc(); 
#include <stdio.h>
double fun(int n)
{/*********Begin**********//**********  End  **********/
}main()
{  int n=-1;while(n<0){ printf("Please input(n>0): ");   scanf("%d",&n); }printf("\nThe result is: %f\n",fun(n));TestFunc();
}void TestFunc()
{FILE *IN,*OUT;int i;double s;IN=fopen("in.dat","r");if(IN==NULL){printf("Read FILE Error");}OUT=fopen("out.dat","w");if(OUT==NULL){printf("Write FILE Error");}fscanf(IN,"%d",&i);s=fun(i);fprintf(OUT,"%lf",s);fclose(IN);fclose(OUT);
}

答案

int i; double s,t;s=0;for(i=1;i<=n;i++){ t=2.0*i;s=s+(2.0*i-1)*(2.0*i+1)/t;}return s; 

2

/*------------------------------------------------
【程序设计】
--------------------------------------------------题目:用函数实现字符串的复制, 不允许用strcpy()函数。--------------------------------------------------
注意:部分源程序给出如下。请勿改动主函数main和其它函数中的任何内容,仅在函数的花括号中填入所编写的若干语句。
*********Begin**********和**********  End  **********不可删除------------------------------------------------*/#include <stdio.h>
void  bky(); void copy(char str1[],char str2[])
{/**********Begin**********//**********  End  **********/
}main()
{void copy();char c1[40],c2[40];gets(c1);copy(c1,c2);puts(c2);bky();
}void bky()
{FILE *IN,*OUT;char i[100];char o[100];IN=fopen("in.dat","r");if(IN==NULL){printf("Read FILE Error");}OUT=fopen("out.dat","w");if(OUT==NULL){printf("Write FILE Error");}fscanf(IN,"%s",i);copy(i,o);fprintf(OUT,"%s\n",o);fclose(IN);fclose(OUT);
}

答案

int i;for(i=0;str1[i]!='\0';i++)str2[i]=str1[i];str2[i]='\0';

3

/*------------------------------------------------------        
【程序改错】
--------------------------------------------------------题目:任意输入10个数,输出其中的最大数;并且要求最大数与第一个位置上的数互换后,输出这10个数。程序中共有4条错误语句,请改正错误。--------------------------------------------------------
注意:不可以增加或删除程序行,也不可以更改程序的结构。
------------------------------------------------------*/#include<stdio.h>
#define N 10
/**********ERROR**********/
void max(int a[],int n)
main()
{int a[N],i;for(i=0;i<N;i++)scanf("%d",&a[i]);for(i=0;i<N;i++)printf("%5d",a[i]);printf("\n");
/**********ERROR**********/max(int a,int N);for(i=0;i<N;i++)printf("%5d",a[i]);
}
void max(int a[],int n)
{int max,i,p=0,t;
/**********ERROR**********/max=a[i];for(i=0;i<n;i++)
/**********ERROR**********/if(max>a[i])   {max=a[i]; p=i;}t=a[0];a[0]=a[p];a[p]=t;printf("\nmax=%d\n",max);
}

答案

【学生答案】
【参考答案】
void max(int a[],int n);
【改错2】	错误
【学生答案】
max(int a[],int N);
【参考答案】
max(a,N);
【改错3】	正确
【学生答案】
max=a[0];
【参考答案】
max=a[0];==============================
【改错4】	正确
【学生答案】
if(max<a[i])   
【参考答案】
if(max<a[i])

4

/*------------------------------------------------------    
【程序改错】
--------------------------------------------------------功能:给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。如: 输入 1234输出 它是4位数: 4321 ------------------------------------------------------*/#include <stdio.h>
main( )
{/**********ERROR**********/long a,b,c,d,e,x,scanf("%ld",&x);a=x/10000;/**********ERROR**********/b=x/10000/1000;c=x%1000/100;d=x%100/10;e=x%10;/**********ERROR**********/if (a==0)printf("它是5位数: %ld %ld %ld %ld %ld\n",e,d,c,b,a);else if (b!=0)printf("它是4位数: %ld %ld %ld %ld\n",e,d,c,b);else if (c!=0) printf("它是3位数: %ld %ld %ld\n",e,d,c);else if (d!=0)printf("它是2位数: %ld %ld\n",e,d);else if (e!=0) printf("它是1位数: %ld\n",e);
}

答案

【改错1】	正确
【学生答案】
long a,b,c,d,e,x;
【参考答案】
long a,b,c,d,e,x;==============================
【改错2】	正确
【学生答案】
b=x%10000/1000;
【参考答案】
b=x%10000/1000;==============================
【改错3】	正确
【学生答案】
if (a!=0)
【参考答案】
if (a!=0)==============================

更多推荐

C期末题库4

本文发布于:2024-03-14 08:34:41,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1736070.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:题库   期末

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!