问答题请编一个函数float proc(double h),函数的功能是对变量h中的值保留两位小数,并对第3位进行四舍五入(规定h中的值为正数)。 例如,若h值为7.32596,则函数返回7.33;若h值为7.32496,则函数返回7.32。 注意:部分源程序已给出。 请勿改动主函数main和其他函数中的任何内容,仅在函数proc的花括号中填入所编写的若干语句。 试题程序: #include<stdlib.h> #include<stdio.h> #include<conio.h> float proc(float h) void main() float f; system("CLS"); printf("Enter f: "); scanf("%f", &f); printf("The original data is: "); printf("%f/n/n", f); printf("The result: %f/n", proc(f));
问答题请编写函数proc(),其功能是:将str所指字符串中除下标为偶数、同时ASCII码值为奇数的字符外,其余的字符都删除,串中剩余字符所形成的一个新串放在t所指的数组中。例如,若str所指字符串中的内容为ABCDEFG12345,其中字符B的ASCII码值为偶数,所在元素的下标为奇数,因此必须删除;而字符A的ASCII码值为奇数,所在数组中的下标为偶数,因此不应当删除。依此类推,最后t所指的数组中的内容应是ACEG。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的花括号中填入所写的若干语句。
试题程序:
#include<stdlib.h>
#include<conio.h>
#include<stdio.h>
#include<string.h>
void proc(char*str, char t[])
{
}
void main()
{
char str[100], t[100];
system("CLS");
printf("/nPlease enter string str: ");
scanf("%s", str);
proc(str, t);
printf("/nThe result is: %s/n", t);
问答题请编写函数fun,它的功能是计算下列级数和,和值由函数值返回。例如,当n=10,x=0.3时,函数值为1.349859。注意:请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。试题程序:#include#include#include#includedoublefun(doublex,intn){}voidmain(){FLE*wf;system(“CLS”);prinff(“%f.,fun(0.3,10));/******************/wf=fopen(“out.dat”,“W”);fprintf(wf,“%f.’,fun(0.3,10));fclose(wf);/******************/}
问答题基本操作
给定程序中,函数fun的作用是:不断从终端读入整数,由变量a统计大于0的个数,用变量c来统计小于0的个数,当输入0时结束输入,并通过形参pa和pb把统计的数据传回主函数进行输出。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构!
#include
void fun( int *px, int *py)
{
/**********found**********/
int __(1)__ ;
scanf( "%d",
/**********found**********/
while __(2)__
{ if (k>0 ) a++;
if(k<0 ) b++;
/**********found**********/
__(3)__;
}
*px=a; *py=b;
}
main()
{ int x, y;
fun(
printf("x=%d y=%d/n", x,y );
}
问答题下列给定程序中,函数fun()的功能是:计算s所指字符串中含有t所指字符串的数目,并作为函数值返回。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include <conio.h> #include <string.h> #include <stdio.h> #define N 80 int fun(char *s,char *t) int n; char *p, *r; n=0; while(*s) p=s; /**************found***************/ r=p; while(*r) if*r==*p) r++; p++; else break; /**************found***************/ if(*r==0) n++; s++; return n; main() char a[N],b[N]; int m; clrscr(); printf("/nPlease enter string a:"); gets(a); printf("/nPlease enter substring b:"); gets(b); m=funa,b); printf("/nThe result is :m=%d/n",m);
问答题改错题
下列给定程序中,函数fun()的功能是求出数组中最小数和次最小数,并把最小数和a[0]中的数对调,次最小数和a[1]中的数对调。
请改正程序中的错误,使它能得到正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include
#include
#define N 20
void fun(int *a,int n)
{
int i, m, t, k;
/**********************found***********************/
for(i=0; i
问答题下列给定程序中函数fun的功能是:求出如下分数序列的前n项之和,和值通过函数值返回。例如,若n=5,则应输出8.391667。请改正程序中的错误,使其得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!试题程序:#include<stdlib.h>#include<conio.h>#include<stdio.h>/**********found**********/voidfun(intn){inta=2,b=1,c,k;doubles=0.0;for(k=1;k<=n;k++){/**********found**********/s=s+(Double)a/b;c=a;a=a+b;b=c;}return(s);}voidmain(){intn=5;system(CLS);printf(/nThevalueoffunctionis:%1f/n,fun(n));}
问答题请编写函数fun,其功能是:统计s所指字符串中的数字字符个数,并作为函数值返回。例如,s所指字符串中的内容是:2det35adh253kjsaf7/kj8655x,函数fun返回值为:11注意:部分源程序在文件PROG1.C文件中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。试题程序:#include<stdio.h>void NONO();int fun(char*s){}main(){char*S="2clef35adh25 3kjsdf7/kj8655x"; printf("%S\n",S); printf("%d\n",fun(s)); NONO();}void NONO(){/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/ FILE*fp,*wf; int i; char s[256]; fp=fopen("in.dat","r"); wf=fopen("out.dat","w"); for(i=0;i<10;i++){ fgets(s,255,fp); fprintf(wf,"%d\n",fun(s)); } fclose(fp); fclose(wf);}
问答题给定程序MODIl.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);}
问答题已知head指向一个带头结点的单向链表,链表中每个结点包含数据域(data)和指针域(next),数据域为整型。请分别编写函数,在链表中查找数据域值最大的结点:
问答题请编写函数fun(),其功能是:将s所指字符串中下标为奇数的字符删除,串中剩余字符形成的新串放在t所指数组中。 例如,当s所指字符串中的内容为siegAHdied,则在t所指数组中的内容应是seAde。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。 试题程序: #include<conio.h> #include<stdio.h> #include<string.h> void fun(char*s,char t[]) main() char s[100],t[100]; clrscr(); printf("/nPlease enter string s:"); scanf("%s",s); fun(s,t); printf("/nThe result is:%s/n",t);
问答题请编一个函数void fun(int tt[M][N],int PP[N]),tt指向一个M行N列的二维数组,求出二维数组每列中最大元素,并依次放入pp所指的一维数组中。二维数组中的数已在主函数中给出。注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。试题程序:#include<stdlib.h>#include<conio.h>#include<stdio.h>#define M 3#define N 4void fun(int tt[M][N],int pp[N]){}void main() { int t[M][N]={{68,32,54,12},{14,24,88,58},{42,22,44,56}}; int P[N],i,j,k; system("CLS"); printf("The riginal data is:\n"); for(i=0;i<N;i++) { for(j=0;j<N;j++) printf("%6d",t[i][j]); printf("\n"); } fun(t,P); printf("\nThe result is:\n"); for(k=0;k<N;k++) printf("%4d",P[k]); printf("\n"); }
问答题请编写一个函数proc(),它的功能是:比较两个字符串的长度(不得调用C语言中求字符串长度的函数),函数返回较长的字符串。若两个字符串长度相等,则返回第1个字符串。 例如,若输入jiangxi<CR> beijing<CR>(<CR>为回车键) 则函数返回jiangxi。 注意:部分源程序已给出。 请勿改动主函数main和其他函数中的任何内容,仅在函数proc的花括号中填入所编写的若干语句。 试题程序: #include<stdio.h> char * proc(char *s, char *t) void main() char a[20], b[10], *p, *q; printf("Input 1th string: "); gets(a); printf("Input 2th string: "); gets(b); printf("%s", proc(a,b));
问答题学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是:按分数的高低排列学生的记录,高分在前。
注意:部分源程序在文件PROG1.C文件中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#include
#define N 16
typedef struct
{ char num[10];
int s;
} STREC;
void fun(STREC a[])
{
}
main ()
{STREC s[N]={{"GA005",85},
{"GA003",76},{"GA002",69},
{"GA004",85},{"GA001",91},
{"GA007",72},{"GA008",64},
{"GA006",87}, {"GA015", 85},
{"GA013",91},{"GA012",64},
{"GA014",91},{"GA011",66},
{"GA017",64},{,,GA018",64},
{"GA016",72}};
int i;FILE *out ;
fun(s);
printf("The data after
sorted:/n");
for(i=0;i
问答题下列给定程序中函数fun的功能是:求出如下分数序列的前n项之和,和值通过函数值返回。例如,若n=5,则应输出8.391667。请改正程序中的错误,使其得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!试题程序:#include<stdlib.h>#include<conio.h>#include<stdio.h>/**********found**********/voidfun(intn){inta=2,b=1,c,k;doubles=0.0;for(k=1;k<=n;k++){/**********found**********/s=s+(Double)a/b;c=a;a=a+b;b=c;}return(s);}voidmain(){intn=5;system("CLS");printf("/nThevalueoffunctionis:%1f/n",fun(n));}
问答题(补充每对/**/之间的程序段,完成题目的要求)
问答题假定输入的字符串中只包含字母和*号。请编写函数proc(),它的功能是:只删除字符串前导和尾部的*号,串中字母之间的*号都不删除。形参m给出了字符串的长度,形参h给出了字符串中前*号的个数,形参e给出了字符串中最后*号的个数。在编写函数时,不得使用C语言提供的字符串函数。
例如,若字符串中的内容为****a*bc*def*g****,删除后,字符串中的内容则应当是a*bc*def*g。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的花括号中填入所编写的若干语句。
试题程序:
#include<stdio.h>
#include<conio.h>
void proc(char*a, int m, int h, int e)
{
}
void main()
{
char s[81], *t, *f;
int m=0, tn=0, fn=0;
printf("Enter a string:/n");
gets(s);
t=f=s;
while(*t)
{t++; m++; } //m为字符串的长度
t--; //指针t指向字符串尾部
while(*t=="*")
{t--; tn++; }
//指针t指向最后一个字母,tn统计尾部"*"的个数
while(*f=="*")
{f++; fn++; }
//指针f指向第一个字母,tn统计前导"*"的个数
proc(s, m, fn, tn);
printf("The string after deleted:/n");
puts(s);
}
问答题下列给定程序的功能是:从键盘输入若干行字符串(每行不超过80个字符),写入文件myfile4.txt中,用一1作字符串输入结束的标志,然后将文件的内容显示在屏幕上。文件的读写分别由函数ReadText和Write.Text实现。请在程序的下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。注意:部分源程序在文件BLANK1.C中。不得增行或删行,也不得更改程序的结构! #include<stdio.h> #include<string.h> #include<stdlib.h> void WriteText(FILE*); void ReadText(FILE*); main() { FILE*fp; if((fp=fopen(“myfile4.txt”,“w”))==NULL) {prinff(“open fail!!\n”);exit(0);} WriteText(f0); fclose(fp); if((fo=fopen(“my6le4.txt”,“r”))==NULL) {prinff(“open fail!!\n”);exit(0);} ReadText(fp); fclose(fp); } /**********found**********/ void WriteText(FILE[1]) { char str[81]; printf(“\nEnter string with一1 to end:\n”); gets(str); while(strcmp(str,“一1”)!=0){ /**********found**********/ fputs([2],fw);fpnts(“\n”,fw); gets(str); } } void ReadText(FILE*fr) { char str[81]; prinff(“\nRead file and output to screen:\n”); fgets(str,81,fr); while(!feof(fr)){ /**********found**********/ prinff(“%s”,[3]); fsets(str,81,fr); } }
问答题给定程序中,函数fun的功能是将形参给定的字符串、整数、浮点数写到文本 文件中,再用字符方式从此文本文件中逐个读入并显示在终端屏幕上。 请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
给定源程序:
#include
void fun(char *s, int a, double f)
{
__1__ fp;
char ch;
fp = fopen("file1.txt", "w");
fprintf(fp, "%s %d %f\n", s, a, f);
fclose(fp);
fp = fopen("file1.txt", "r");
printf("\nThe result :\n\n");
ch = fgetc(fp);
while (!feof(__2__)) {
putchar(__3__); ch = fgetc(fp); }
putchar('\n');
fclose(fp);
}
main()
{ char a[10]="Hello!"; int b=12345;
double c= 98.76;
fun(a,b,c);
}
问答题给定程序中,函数fun的功能是:计算形参X所指数组中N个数的平均值(规定所有数均为正数),将所指数组中小于平均值的数据移至数组的前部,大于等于平均值的数据移至K所指数组的后部,平均值作为函数值返回,在主函数中输出平均值和移动后的数据。
例如,有10个正数:46 30 32 40 6 17 45 15 48 26,平均值为:30.500000
移动后的输出为:30 6 17 15 26 46 32 40 45 48
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANKl.C中。
不得增行或删行,也不得更改程序的结构!
#include
#include
#define N 10
double fun(double *x)
{ int i,j;double aV,y[N];
av=0;
/**********found***********/
for(i=0; i