问答题给定程序中,函数fun的功能是将形参给定的字符串、整数、浮点数写到文本文件中,再用字符方式从此文本文件中逐个读入并显示在终端屏幕上。 请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。 注意:请勿改动main函数和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。 试题程序:#include<stdio.h>void fun(char*s,int a,double f){/******found******/__1__fp;char eh;fp=fopen(“filel.txt”,“w”);fprinff(fp,“%s%d%f\n”,s,a,f);fclose(fp);fp=fopen(“filel.txt”,“r”);prinff(“\nThe result:\n\n”);eh=fgetc(fr,);/******found******/while(!feof(___2___)){/******found******/ putchar(___3___); ch=fgetc(fp); } putchar(‘\n’); felose(fp);}main(){ char a[10]=“Hello!”;int b=12345; double c=98.76; fun(a,b,c);}
问答题已知学生的记录由学号和学习成绩构成,N名学生的数据已存入a结构体数组中。请编写函数 fun,函数的功能是:找出成绩最低的学生记录,通过形参返回主函数(规定只有一个最低分)。
注意: 部分源程序存在文件PROG1.C文件中。
请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
给定源程序:
#include
#include
#define N 10
typedef struct ss
{ char num[10]; int s; } STU;
fun( STU a[], STU *s )
{
}
main ( )
{ STU a[N]={ {"A01",81},{"A02",89},{"A03",66},{"A04",87},{"A05",77},
{"A06",90},{"A07",79},{"A08",61},{"A09",80},{"A10",71} }, m ;
int i;
printf("***** The original data *****/n");
for ( i=0; i< N; i++ )printf("No = %s Mark = %d/n", a[i].num,a[i].s);
fun ( a,
printf ("***** THE RESULT *****/n");
printf ("The lowest : %s , %d/n",m.num, m.s);
NONO( );
}
问答题给定程序中,函数fun的功能是根据形参i的值返回某个函数的值。当调用正确时, 程序输出:
x1=5.000000, x2=3.000000, x1*x1+x1*x2=40.000000
请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构!
给定源程序:
#include
double f1(double x)
{ return x*x; }
double f2(double x, double y)
{ return x*y; }
/**********found**********/
__1__ fun(int i, double x, double y)
{ if (i==1)
/**********found**********/
return __2__(x);
else
/**********found**********/
return __3__(x, y);
}
main()
{ double x1=5, x2=3, r;
r = fun(1, x1, x2);
r += fun(2, x1, x2);
printf("/nx1=%f, x2=%f, x1*x1+x1*x2=%f/n/n",x1, x2, r);
}
问答题假定输入的字符串中只包含字母和*号。请编写函数 fun(),它的功能是:删除字符串中所有的*号。在编写函数时,不得使用C语言中提供的字符串函数。 例如,若字符串中的内容为****A*BC*DEF*G*******,删除后,字符串中的内容则应当是ABCDEFG。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。 试题程序: # include<conio, h> # include<stdio, h> void fun (char *a) main ( ) char s[81]; printf ("Enter a string: /n"); gets (s); fun(s); printf ("The string after deleted: /n"); puts (s);
问答题下列给定程序的功能是:读入一个整数k(2≤k≤10000),输出它的所有质因子(即所有为素数的因子)。例如,若输入整数2310,则应输出:2,3,5,7,11。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行。也不得更改程序的结构!试题程序:#inclucle<conio.h>#include<stdio.h>/*********found*********/ IsPrime(int n);{ int i,m; m=1; for(i=2;i<n;i++)/*********found*********/ if!(n%i) {m=0; break;} return(m);}main(){ int j,k; printf("\nplease enter an integer number between 2 and 10000:"); Scanf("%d",&k); printf("\n\nThe prime factor(s)of %d is(are):",k); for(j=2;j<k;j++) if((!(k%j))&&(IsPrirne(j))) printf("%4d,",j); printf("\n");}
问答题给定程序中,函数fun的功能是:
将形参std所指结构体数组中年龄最大者的数据作为函数值返回,并在main函数中输出。
请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!
试题程序:
#include < stdio.h >
typede f struct
{ char name[10];
int age;
}STD;
STD fun(STD std[],int n)
{ STD max;int i;
/*********found*********/
max=
【1】
;
for(i=1;i < n;i++)
/*********found*********/
if(max.age <
【2】
)
max=std[i];
return max;
}
main()
{ STD std[5]={"aaa",17,
“bbb”,16,“ccc”,18,“ddd”,
17,“eee”,15};
STD max;
max=fun(std,5);
print:f("/nThe result:/n");
/*********found*********/
print:f("/nlqame:%s,Age:%d/n",
【3】
,max.age);
}
问答题
问答题函数fun的功能是:根据所给的年、月、日,计算出该日是这一年的第几天,并作为函数值返回。其中函数isleap用来判别某一年是否为闰年。 例如,若输入:2008 51,则程序输出:2008年5月1日是该年的第122天。 请在程序的下画线处填入正确的内容,并把下画线删除,使程序得出正确的结果。 注意:不得增行或删行,也不得更改程序的结构! 试题程序:#include<stdio.h>int isleap(int year){ int leap; leap=fyear%4==0&&year%100 !=0‖ year%400==0); return___1___;}int fun(int year,int month,int day){ int table[13]={0,31,28,31,30,31,30,31,31,30,31,30,31}; int days=0,i; for(i=1;i<month;i++) days=days+table[i];/******found******/ days=days+___2___; if(isleap(year)&&month>2)/******found******/ days=days+___3___; return days;}main(){ int year,month,day,days; prinff(“请输入年、月、日:”); scanf(“%d%d%dtt,year,&month,&day); days=fun(year,month,day); prinff(“%d年%d B%d日是该年的第%d天\n”,year,month,day,days);
问答题n个人的成绩存放在score数组中,请编写函数proc(),它的功能是将低于平均分的人数作为函数值返回,将低于平均分的分数放在down所指的数组中。
例如,当score数组中的数据为{99,80,40,56,59,84,60,76,100}时,函数返回的人数应该是4,down中的数据应为40 56 59 60。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的花括号中填入所编写的若干语句。
试题程序:
#include<stdlib.h>
#include<conio.h>
#include<stdio.h>
#include<string.h>
int proc(int score[], int n, int down[])
{
}
void main()
{
int i, n, down[9];
int score[9]={99, 80, 40, 56, 59, 84, 60, 76, 100};
system("CLS");
n=proc(score, 9, down);
printf("/ndown to the average score are:");
for(i=0; i<n; i++)
printf("%d", down[i]);
printf("/n");
}
问答题给定程序MODI1.C中fun函数的功能是:将p所指字符串中每个单词的最后一个字母改成大写。(这里的“单词”是指由空格隔开的字符串)。 例如,若输入“I am a student to take the examination.”,则应输出“I aM A studenT tO takE thE examination.”。 请修改程序中的错误之处,使它能得出正确的结果。 注意:不要改动main函数,不得删行,也不得更改程序的结构!1 #include<ctype.h>2 #include<stdio.h>3 #include<string.h>4 void fun(char *p)5 {6 int k=0;7 for(;*p;p++)8 if(k)9 {10 /**********found**********/11 if(p==' ')12 {13 k=0;14 /**********found**********/15 (p)=toupper(*(p-1))16 }17 }18 else19 k=1;20 }21 main()22 {23 char chrstr[64];24 int d;2526 printf(''\nPlease enter an English sentence within 63 letters:'');27 gets(chrstr);28 d=strlen(chrstr);29 chrstr[d]=' ';30 chrstr[d+1]=0 ;31 printf(''\n\nBefore changing:\n%s'',chrstr);32 fun(chrstr);33 printf(''\nAfter changing:\n%s'',chrstr);34 }
问答题请编写函数fun,该函数的功能是:将M行N列的二维数组中的数据,按行的顺序依次放到一维数组中,一维数组中数据的个数存放在形参n所指的存储单元中。
例如,若二维数组中的数据为:
33 33 33 33
44 44 44 44
55 55 55 55
则一维数组中的内容应该是:33 33 33 33 44 44 44 44 55 55 55 55。
注意
:部分源程序给出如下。
请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include<stdio.h>
void fun(int(*s)[10],int*b,int*n,int mm,int nn)
{
}
void main()
{int w[10][10]={{33,33,33,33},
{44,44,44,44},{55,55,55,55}},i,j;
int a[100]={0},n=0;
printf("The matrix:/n");
for(i=0;i<3;i++)
{
for(j=0;j<4;j++)
printf("%3d",w[i][j]);
printf("/n");
}
fun(w,a,
printf("The A array:/n");
for(i=0;i<n;i++)
printf("%3d",a[i]);
printf("n/n");
}
问答题编写函数fun,其功能是:根据以下公式计算S,并将计算结果作为函数值返回,n通过形参传入。例如,若n的值为11时,函数的值为1.833333。注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。试题程序:#include<stcllib.h>#include<conio.h>#include<stctio.h>#include<string.h>floatfun(intn){}voidmain(){intn;floats;system("CLS");printf("/nPleaseenterN:");scanf("%d",&n);s=fun(n);printf("Theresultis:%f/n",s);}
问答题编写函数fun,其功能是:将ss所指字符串中所有下标为奇数位上的字母转换为大写 (若该位置上不是字母,则不转换)。 例如,若输入“abc4EFg”,则应输出“aBc4EFg”。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 试题程序:#include < conio.h >#include < stdio.h >#include < string.h >void fun(char*ss){}void main(void){ char tt[51]; printf ("/nPlease enter ancharacter string within 50characters:/n"); gets(tt); printf,"/n/ nAfter changing,the string/n%s",tt); fun(tt); printf("/nbecomes/n%s",tt);}
问答题下列给定程序中,函数fun的功能是:判断一个整数是否为素数,若是素数返回1,否则返回0。
在main函数中,若fun返回1输出YES,若fun返回0输出NO。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdlib.h>
#include<conio.h>
#include<stdio.h>
int fun(int m)
{
int k=2;
while(k<=m&&(m%k))
/********found********/
k++
/********found********/
if(m=k)
return 1;
else return 0;
}
void main()
{
int n;
system("CLS");
printf("/nPlease enter n:");
scanf("%d",&n);
if(fun(n))printf("YES/n");
else printf("NO!/n");
}
问答题下列给定程序中函数fun的功能是:逐个比较p、q所指两个字符串对应位置上的字符,并把ASCII值大或相等的字符依次存放到c所指的数组中,形成一个新的字符串。例如,若主函数中a字符串为“aBCDeFgH”,b字符串为“Abcd”,则c中的字符串应为“aBcdeFgH”。请改正程序中的错误,使它能得出正确的结果。注意:部分源程序在文件MODI1.C中,不得增行或删行,也不得更改程序的结构!#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 e[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,其功能是:求ss所指字符串中指定字符的个数,并返回此值。 例如,若输入字符串“123412132”,输入字符为 “1”,则输出3。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 试题程序:#include < stdlib.h >#include < conio.h >#include < stdio.h >#define M 81int fun(char*ss,char c){}void main(){ char a[M],ch; system("CLS"); printf("/nPlease enter astring:"); gets(a); printi("/nPlease enter achar:"); ch=getchar(); printf("/nThe number ofthe char is:%d/n",fun(a,ch));}
问答题请编写函数fun,其功能是:计算并输出下列多项式的值。例如,当n=10时,函数值为0.909091。注意:请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。试题程序:#include<conio.h>#include<stdio.h>#include<stdlib.h>doublefun(intn){}voidmain(){FILE*wf;system("CLS");printf("%f/n",fun(10));/******************/wf=fopen("out.dat","w");fprintf(wf,"%f",fun(10));fclose(wf);/******************/}
问答题编写函数fun,其功能是:将1-m(含m)能被7或11整除的所有整数放在数组a中,并通过n返回这些数的个数。例如,若传给m的值为50,则程序输出:
7 11 14 21 22 28 33 35 42 44 49
注意
:部分源程序给出如下。
请勿改动主函数main和其他函数的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include <stdlib.h>
#include <conio.h>
#include <stdio.h>
#define M 100
void fun(int m, int *a, int *n)
{
}
void main()
{
int aa[M],n,k;
system("CLS");
fun(50,aa,
for(k=0;k<n;k++)
if((k+1)%20==0)
/*每行输出20个数*/
{printf("%4d",aa[k]);
printf("/n");
}
else
printf("%4d",aa[k]);
printf("/n");
}
问答题请补充main函数,该函数的功能是:把一维数组中的元素逆置。结果仍然保存在原数组中。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在 main函数的横线上填入所编写的若干表达式或语句。
试题程序:
#include <stdio.h>
#define N 10
main ( )
{
int i, j, t;
int bb[N];
clrscr ();
for (i=0; i<N; i++)
bb[i]=i;
printf("/n*** original list ***/n");
for (i=0;i<N; i++)
printf ("%4d",bb [i] );
for({{U}} 【1】 {{/U}}; j<=i;{{U}} 【2】 {{/U}})
{
t=bb [j ];
bb [j ] =bb [i];
bb[i]=t;
}
printf("/n****** new list ******/n");
for (i=0; i<N; i++)
printf ("%4d",bb [i] );
}
问答题请编写函数fun,函数的功能是:统计各年龄段的人数。N个年龄通过调用随机函数获得,并放在主函数的age数组中;要求函数把0至9岁年龄段的人数放在d[0]中,把10至19岁年龄段的人数放在d[1]中,把20至29岁年龄段的人数放在d[2]中,其余依此类推, 把100岁 (含100)以上年龄的人数都放在d[10]中。结果在主函数中输出。
注意:部分源程序在文件PROG1.C中。请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
给定源程序:
#include
#define N 50
#define M 11
void fun( int *a, int *b)
{
}
double rnd()
{ static t=29,c=217,m=1024,r=0;
r=(r*t+c)%m; return((double)r/m);
}
main()
{ int age[N], i, d[M];
for(i=0; i
printf("The original data :/n");
for(i=0;i
printf("/n/n");
fun( age, d);
for(i=0;i<10;i++)printf("M---M : M/n",i*10,i*10+9,d[i]);
printf(" Over 100 : M/n",d[10]);
NONO(d);
}
