问答题下列给定的程序中,函数fun()的功能是:计算并输出k以内最大的10个能被13或17整除的自然数之和。K的值由主函数传入,若k的值为500,则函数的值为4622。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include<stdio.h> #include <conio.h> int fun(int k) int m=0,mc=0, j; while((k>=2)mc++; k--; /*************found**************/ return m; main() clrscr(); printf("%d/n ",fun(500));
问答题给定程序MODI1.C中函数 fun 的功能是:用下面的公式求π的近似值,直到最后一项的绝对值小于指定的数(参数num )为止:
π 1 1 1
┄┄≈1 - ┄┄ + ┄┄ - ┄┄ + ...
4 3 5 7
例如, 程序运行后, 输入0.0001, 则程序输出3.1414。
请改正程序中的错误,使它能输出正确的结果。
注意:不要改动 main 函数,不得增行或删行,也不得更改程序的结构!
给定源程序:
#include
#include
float fun ( float num )
{ int s ;
float n, t, pi ;
t = 1 ; pi = 0 ; n = 1 ; s = 1 ;
/**************found**************/
while(t >= num)
{
pi = pi + t ;
n = n + 2 ;
s = -s ;
/**************found**************/
t = s % n ;
}
pi = pi * 4 ;
return pi ;
}
main( )
{ float n1, n2 ;
printf("Enter a float number: ") ;
scanf("%f",
n2 = fun(n1) ;
printf("%6.4f/n", n2) ;
}
问答题请编写函数fun, 它的功能是:计算并输出n(包括n)以内能被5或9整除的所有自然数的倒数之和。
例如,在主函数中从键盘给n输入20后, 输出为: s=0.583333。
注意: 要求n的值不大于100。部分源程序在文件PROG1.C中。请勿改动主函数main和其他函数中的任何内容, 仅在函数fun的花括号中填入你编写的若干语句。
给定源程序:
#include
double fun(int n)
{
}
main()
{ int n; double s;
printf("/nInput n: "); scanf("%d",
s=fun(n);
printf("/n/ns=%f/n",s);
NONO();
}
问答题请编写一个函数fun(),它的功能是:求出1到m(含m)之内能被7或11整除的所有整数放在数组a中,通过n返回这些数的个数。 例如,若传给m的值为50,则程序输出: 7 11 14 21 X 28 33 35 42 44 49 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。 试题程序: #include<conio.h> #include<stdio.h> #define M 100 void fun(int m, int *a, int *n) main() int aa[M],n,k; clrscr(); fun(50,aa, k++) if((k+1)%20==0) /*每行输出20个数*/ printf("%4d",aa[k]); printf("/n"); else printf("%4d",aa[k]); printf("/n");
问答题编写函数fun,其功能是:将所有大于1小于整数m的非素数存入xx所指数组中,非素数的个数通过k返回。 例如,若输入17,则应输出:4 6 8 9 1012 14 15 16。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 试题程序: #include<stdlib.h> #include<conio.h> #include<sfdio.h> void fun(int m,int*k,int xx[]) void main() ( int m,n,zz[100]; system("CLS"); printf("/nPlease enter an integer number between 10 and 100:"); scanf("%d", fun(n, printf("/n/nThere are%d non-prime numbers less than%d:",m,n); for(n=O;n<m;n++) printf("/n%4d",zz[n]);
问答题请编写函数void fun(int x,int PP[],int,*n),它的功能是:求出能整除x且不是偶数的各整数,并按从小到大的顺序放在pp所指的数组中,这些除数的个数通过形参n返回。例如,若x中的值为30,则有4个数符合要求,它们是1、3、5、15。注意:部分源程序在文件PROG1.C中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。试题程序:#include<conio.h>#include<stdio.h>#include<stdlib.h>void fun(int x,int PP[],int *n){}void main(){ FILE*wf; int x,aa[1000],n,i; system("CLS"); printf("\nplease enter an integer number:\n"); scanf("%d",&x); fun(x,aa,&n); for(i=0;i<n;i++) printf("%d",aa[i]); printf("\n"); /*********found*********/ wf=fopen("out.dat","w"); fun(30,aa,&n); for(i=0;i<n;i++) fprintf(wf,"%d",aa[i]); fclose(wf); /*********found*********/ }
问答题下列给定程序中,函数fun和funx的功能是:用二分法求方程2x3-4x2+3x-6=0的一个根,并要求绝对误差不超过0.001。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动mam函数,不得增行或删行,也不得更改程序的结构! 试题程序: #include<stdio.h> #include<math.h> double funx(double x) return(2*x*x*x-4*x*x+3*x-6); double fun(double m, double n) /******************found*******************/ int r; r=(m+n)/2; /******************found*******************/ while(fabs(n-m)<0.001) if(funx(r)*funx(n)<0) m=r; else n=r; r=(m+n)/2; return r; main() double m, n, root; printf("Enter m n:/n"); scanf("%lf%lf", &m, &n); root=fun(m, n); printf("root=%6.3f/n", root),
问答题函数fun的功能是:将a、b中的两个正整数合并形成一个新的整数放在c中。合并的方式是:将a中的十位和个位数依次放在变量c的十位和千位上,b中的十位和个位数依次放在变量c的个位和百位上。 例如,当a=45,b=12。调用该函数后,c=5241。 注意:部分源程序在文件PROG1.C中。 请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。试题程序:#include < stdio.h >void fun(int a,int b,long*c){}main(){int a,b;long c;void NONO(); printf("Input a,b:"); scanf("%d%d",&a,&b); fun(a,b,&c); printf("The result is:%id/n",c); NONO();}void NONO(){/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/ FTT*rf,*wf; int i,a,b;long c; rf:fopen("in.dat","r"); wf=fopen("out.dat","w"); for(i=0;i < 10;i++){ fscanf(rf,"%d,%d",&a,&b); fun(a,b,&c); fprintf(wf,"a=%d,b=%d,c=%ld/n",a,b,c); } fclose(rf); fclose(wf);}
问答题函数fun的功能是:将两个两位数的正整数a、b合并成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数的千位和十位上,b数的十位和个位数依次放在c数的百位和个位上。 例如,当a=45,b=12时,调用该函数后C=4152。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 试题程序:#include < conio.h >#include < stdio.h >void fun(int a,int b,long*c){}main(){ int a,b; long c; printf("Input a,b:"); scanf("%d%d",&a,&b); fun(a,b,&c); printf("The result is:%d/n",c);}
问答题函数fun的功能是进行数字字符转换。若形参ch中是数字字符'0'~'9',则'0'转换成'9','1'转换成'8','2'转换成'7',……,'9'转换成'0';若是其他字符则保持不变:并将转换后的结果作为函数值返回。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
____1____ fun (char ch)
{
return '9'— (ch— ____3____) ;
return ch ;
}
main ()
{ char c1/ c2;
printf ("/nThe result :/n") ;
c1='2'; c2 = fun (c1) ;
printf ("c1=%C c2=%c/n",c1,c2) ;
cl='8'; c2 = fun (cl) ;
printf ("cl=% c2=%c /n " , c1, c2) ;
c1='a'; c2 = fun (c1) ;
printf ("c1=%c c2=ooC/n",c1,c2) ;
}
问答题下列给定程序中,函数fun的功能是:将s所指字符串中位于奇数位置的字符或ASCII码值为偶数的字符依次放入t所指数组中。例如,字符串中的数据为“AABBCCDDEEFF”,则输出应当是“ABBCDDEFF”。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 试题程序:#include < conio.h >#include < stdio.h >#include < string.h >#define N 8 0void fun(char*s,char t[]){ int i,j=0; for(i=0;i < (int)str1en(s);i++1/*********found*********/ if(i%2&&s[i]%2==0) t[j++]=s[i];/*********found*********/ t[i]='/0';}main(){ char s[N],t[N]; printf f"/nplease entherstring s:"); gets(s); fun(s,t); printf("/nThe result is:%s1n",t);}
问答题给定程序中,函数fun的功能是:有N×N矩阵,将矩阵的外围元素顺时针旋转。操作顺序是:首先将第一行元素的值存入临时数组r,然后使第一列成为第一行,最后一行成为第一列,最后一列成为最后一行,临时数组中的元素成为最后一列。
例如,若N=3,有下列矩阵:
1 2 3计算结果为 7 4 1
4 5 6 8 5 2
7 8 9 9 6 3
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
#define N 4
void fun(int (*t)[N])
{ int j ,r[N];
for(j=0; j=0;【2】)
t[N-l][N-l-j]=t[j][N-l];
for(j=N-l; j>=0; j --)
/*********found**********/
t[j] [N-l]=r[【3】];
}
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
问答题请编一个函数fun,函数的功能是使实型数保留2位小数,并对第三位进行四舍五入(规定实型数为正数)。
例如:实型数为1234.567,则函数返回1234.570000;
实型数为1234.564,则函数返回1234.560000。
请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
给定源程序:
#include<stdio.h>
float fun(float h)
{
}
main()
{ float a;
printf("Enter a:"); scanf("%f",
printf("The original data is:");
printf("%f/n/n", a);
printf("The result:%f/n", fun(a));
}
问答题由N个有序整数组成的数列已放在一维数组中,给定程序MODI1.C中函数fun的功能是:利用折半查找算法查找整数m在数组中的位置。若找到,返回其下标值;反之,返回-1。 折半查找的基本算法是:每次查找前先确定数组中待查的范围:low和high(low<high),然后把m与中间位置(mid)中元素的值进行比较。如果m的值大于中间位置元素中的值,则下一次的查找范围落在中间位置之后的元素中;反之,下一次的查找范围落在中间位置之前的元素中。直到low>high,查找结束。 请改正程序中的错误,使它能得出正确结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。1 #include<stdio.h>2 #define N 103 /**********found**********/4 void fun(int a[],int m)5 { int low=0,high=N-1,mid;6 while(low<=high)7 (mid=(low+high)/2;8 if(m<a[mid])9 high=mid-1;10 /**********found**********/11 else Tf(m>a[mid])12 low=mid+1;13 else return(mid);14 }15 return(-1);16 }17 main()18 {int i,a[N]={-3,4,7,9,13,45,67,89,100,180},k,m;19 printf(''a数组中的数据如下:'');20 for(i=0;i<N;i++) printf(''%d'',a[i]);21 printf(''Enter m:'');scanf(''%d'',22 k=fun(a,m);23 if(k>=0)printf(''m=%d,index=%d\n'',m,k);24 else printf(''Not be found!\n'');25 }
问答题给定程序MODI1. C中函数fun的功能是:逐个比较p、q所指两个字符串对应位置中的字符,把ASCII值大或相等的字符依次存放到c所指数组中,形成一个新的字符串。
例如,若主函数中a字符串为:aBCDeFgH,主函数中b字符串为:ABcd,则c中的字符串应为:aBcdeFgH。
请改正程序中的错误,使它能得出正确结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
#include <stdio. h>
#include <string. h>
void fun(char *p, char *q, char *c)
{
/************found************/
int k=1;
/************found************/
while(*p!= *q)
{if(*p<*q) c[k]=*q;
else c[k]=*p;
if(*p) p++;
if(*q) q++;
k++;
}
}
main( )
{char a[10]="aBCDeFgH",
b[10]="ABcd", c[80]={"/0");
fun(a, b, c);
printf("The string a: ");
puts(a);
printf("The string b: ");
puts(b);
printf("The result: ");
puts(c);
}
问答题编写函数fun,其功能是:求出1~ 1000之间能被7或1 1整除,但不能同时被7和1 1整除的所有整数,并将其放在a所指的数组中,通过n返回这些数的个数。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 试题程序:#include < stcllib.h >#include < conio.h >#include < stdio.h >void fun(int*a,int*n){}void main(){ int aa[1 0 00],n,k; system("CLS"); fun(aa,&n); for(k=0;k < n;k++) if((k+1)%1 0==0) (printf("%5 d",aa[k]); printf("/n");}/*一行写9个数*/ else pr2ntf("%5 d",aa[k]);}
问答题给定程序MODI1.C中,函数fun的功能是判断整数n是否是“完数”。当一个数的因子之和恰好等于这个数本身时,就称这个数为“完数”。例如:6的因子包括1、2、3,而6=1+2+3,所以6是完数。如果是完数,函数返回值为1,否则函数返回值为0。数组a中存放的是找到的因子,变量k中存放的是因子的个数。请改正函数fun中指定部位的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:
问答题规定输入的字符串只包含字母和*号。请编写函数fun,它的功能是:将字符串中的前导*号全部删除,中间和尾部的*号不删除。 例如, 字符串中的内容为:*******A*BC*DEF*G****,删除后,字符串中的内容应当是:A*BC*DEF*G****。在编写函数时,不得使用C语言提供的字符串函数。 注意:部分源程序在文件PROGl.C中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。1 #include<stdio.h>2 void fun(char *a)3 {4 }5 main()6 { char s[81];7 void NONO();8 printf(''Enter a string:\n''); gets(s);9 fun(s);10 prLntf(''The string after deleted:\n'');puts(s);11 NONO();12 }13 void NONO()14 {/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。 */15 FILE *in,*out;16 int i;char s[81];17 in=fopen(''in.dat'',''r'');18 out=fopen(''out.dat'',''w'');19 for(i=0;i<10;i++){20 fScanf(in,''%s'',s);21 fun(s);22 fprintf(out,''%s\n'',s);23 }24 fclose(in);25 fclose(out);}
问答题甲乙丙丁四人同时开始放鞭炮,甲每隔t1秒放一次,乙每隔t2秒放一次,丙每隔t3秒放一次,丁每隔t4秒放一次,每人各放n次。函数fun的功能是根据形参提供的值,求出总共听到多少次鞭炮声作为函数值返回。注意,当几个鞭炮同时炸响,只算一次响声,第一次响声是在第0秒。
例如,若t1=7,t2=5,t3=6,t4=4,n=10,则总共可听到28次鞭炮声。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANKl.C中。
不得增行或删行,也不得更改程序的结构!
#include
/**********found**********/
#define OK(i,t,r1)(( _____1_____ %t==0)
&&(i/t
问答题
给定程序MODI1.C中的函数Creatlink的功能是创建带头结点的单向链表,并为各结点数据域赋0到m-1的值。
请改正函数Creatlink中指定部位的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include <stdio.h>
#include <stdlib.h>
typedef struct aa
{ int data;
struct aa *next;
} NODE;
NODE *Creatlink(int n,int m)
{NODE *h=NULL,*p,*s;
int i;
/**********found***********/
p=(NODE)malloc(sizeof(NODE));
h=p;
p->next=NULL;
for(i=1;i<=n;i++)
{ s=(NODE *)malloc(sizeof(NODE));
s->data=rand()%m;s->next=p->next;
p->next=s;p=p->next;
}
/**********found***********/
return p;
}
outlink(NODE *h)
{NODE *p;
p=h->next;
printf("/n/nTHE LIST:/n/n HEAD");
while (p)
{ printf("->%d",p->data);
p=p->next;
}
printf("in");
}
main()
{NODE *head;
head=Creatlink(8,22);
outlink(head);
}