问答题函数fun的功能是: 将s所指字符串中除了下标为偶数、同时ASCII值也为偶数的字符外,其余的全都删除;串中剩余字符所形成的一个新串放在t所指的数组中。
例如,若s所指字符串中的内容为:"ABCDEFG123456",其中字符A的ASCII码值为奇数,因此应当删除;其中字符B的ASCII码值为偶数,但在数组中的下标为奇数,因此也应当删除;而字符2的ASCII码值为偶数,所在数组中的下标也为偶数,因此不应当删除,其它依此类推。最后t所指的数组中的内容应是:"246"。
注意: 部分源程序存在文件PROG1.C中。请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
给定源程序:
#include
#include
void fun(char *s, char t[])
{
}
main()
{
char s[100], t[100];
printf("/nPlease enter string S:"); scanf("%s", s);
fun(s, t);
printf("/nThe result is: %s/n", t);
NONO();
}
问答题函数fun的功能是将s所指字符串中除了下标为奇数、同时ASCII值也为奇数的字符之外,其余的所有字符都删除,串中剩余字符所形成的一个新串放在t所指的数组中。
例如,若S所指字符串中的内容为“ABCDEFG12345”,其中,字符A的ASCII码值虽为奇数,但所在元素的下标为偶数,因此必需删除;而字符1的ASCII码值为奇数,所在数组中的下标也为奇数,因此不应当删除,其他依此类推。最后t所指的数组中的内容应是“135”。
注意:部分源程序存在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入编写的若干语句。
给定源程序如下。
#include<stdio.h>
#include<string.h>
void fun(char*s,char t[])
{
}
main()
{
char s[100],t[100];
printf("/nPlease enter string S:"):
scanf("%s",s);
fun(s,t);
printf("/nThe result is:%s/n",t);
}
问答题下列给定程序中,函数fun的功能是:将P所指字符串中的所有字符复制到b中,要求每复制3个字符之后插入一个空格。 例如,若给a输入字符串:“ABCDEFGHIJK”,调用函数后,字符数组b中的内容为:“ABC DEFGHI JK”。 请改正程序中的错误,使它能得出正确结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 试题程序: #include<stdio.h> void fun(char*p,char*b) (int i,k=0; while(*p) i=1; while(i<=3 k++;p++;1++; if(*p) /********found********/ b[k++]=…""; b[k]='/0';) main() (char a[80],b[80]; printf("Enter a string:"); gets(a); printf("The original string:"); puts(a); fun(a,b); printf("/nThe string after insert space:"); puts(b);printf("/n");
问答题编写函数fun,其功能是:计算n门课程的平均分,结果作为函数值返回。
例如,若有5门课程的成绩是:90.5,72,80,61.5,55,则函数的值为71.80。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include<stdio.h>
float fun(float *a,int n)
{
}
void main()
{
float score[30]={90.5,72,80,61.5,55},aver;
aver=fun(score,5);
printf("/nAverage score is:%5.2f/n",aver);
}
问答题下列给定程序中,函数fun的功能是:从n个学生的成绩中统计出低于平均分的学生人数,此人数作为函数值返回,平均分存放在形参aver所指的存储单元中。
例如,输入8名学生的成绩:80.5、60、72、90.5、98、51.5、88、64,则低于平均分的学生人数为4(平均分为755625)。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdlib.h>
#include<stdio.h>
#include<conio.h>
#define N 20
int fun(float *s,int n,float *aver)
{
float ave,t=0.0;
int count=0,k,i;
for(k=0;k<n;k++)
/********found********/
t=s[k];
ave=t/n;
for(i=0;i<n;i++)
if(s[i]<ave)count++;
/********found********/
*aver=&ave;
return count;
}
void main()
{
float s[30],aver;
int m,i;
system("CLS");
printf("/nPlease enter m:");
scanf("%d",&m);
printf("/nPlease enter%d mark/n",m);
for(i=0;i<m;i++)
scanf("%f",s+i);
printf("/nThe number of students:%d/n",fun(s,m,&aver));
printf("ave=%f/n",aver);
}
问答题给定程序中,函数fun的功能是:将形参std所指结构体数组中年龄最大者的数据作为函数值返回,并在main函数中输出。
请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
typeclef 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);
printf("\nThe result:\n");
/*********found*********/
printf("\nName:%s,Age:%d\n",
【3】
,max.age);
}
问答题调用随机函数为5×4的矩阵置100以内的整数,输出该矩阵,求出每行元素之和,并把和值最大的那一行与第一行上的元素对调。若已定义x为int类型,请参考下列调用随机函数。
#include<stdlib.h>
x=rand()%20; /*产生0到19的随机数*/
问答题给定程序MODI1.C中函数fun的功能是:求出s所指字符串中最后一次出现的t所指子字符串的地址,通过函数值返回,在主函数中输出从此地址开始的字符串:若未找到,则函数值为NULL。 例如,当字符串中的内容为''abcdabfabcdx",t中的内容为“ab”时,输出结果应是“abcdx”。 当字符串中的内容为“abcdabfabcdx”,t中的内容为“abd”时,则程序输出未找到信息“notbe found!”。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!1 #include<stdio.h>2 #include<string.h>3 char *fun(char*s,char*t)4 {5 char *p, *r, *a;6 /**********found**********/7 a=Null;8 while(*s)9 { p=s;r=t;10 while(*r)11 /**********found**********/12 if(r==p)13 { r++;p++;)14 else break;15 if(*r=='\0')a=s;16 s++;17 }18 return a;19 }20 main()21 {22 char s[100],t[100],*p;23 printf(''\nPlease enter string s:'');scanf(''%s'',s);24 printf(''\nPlease enter substringt:'');scanf(''%s'',t);25 p=fun(s,t);26 if (p)printf(''\nThe result is:%sin'',p);27 else printf(''\nNot found!\n'');28 }
问答题
请编写函数fun,函数的功能是:统计一行字符串中单词的个数,作为函数值返回。一行字符串在主函数中输入,规定所有单词由小写字母组成,单词之间由若干个空格隔开,一行的开始没有空格。
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#include <stdio.h>
#include <string.h>
#define N 80
int fun(char *s)
{
}
main()
{ char line[N];int num=0;void NONO();
printf("Enter a string:/n");gets(line);
num=fun(line);
printf("The number of word is:%d/n/n",num);
NONO();
}
void NONO()
{/* 请在此函数内打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。 */
FILE *rf,*wf;int i,num;char line[N],*p;
rf=fopen("in.dat","r");
wf=fopen("out.dat","w");
for(i=0;i<10;i++) {
fgets(line,N,rf);
p=strchr(line,"/n");
if(p!=NULL)*p=0;
num=fun(line);
fprintf(wf,"%d/n",num);
}
fclose(rf);fclose(wf);
}
问答题下列给定程序中,函数proc()的功能是:首先把b所指字符串中的字符按逆序存放,然后将str1所指字符串中的字符和str2所指字符串中的字符,按排列的顺序交叉合并到str所指数组中,过长的剩余字符接在str所指数组的尾部。
例如,当str1所指字符串中的内容为ABCDEFG,str2所指字符串中的内容为1234时,str所指数组中的内容应该为A483C2D1EFG;而当str1所指字符串中的内容为1234,str2所指字符串中的内容为ABCEDFG时,str所指数组中的内容应该为1G2F3E4DCBA。
请修改程序中的错误,使它能得出正确的结果。
注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include<stdlib.h>
#include<conio.h>
#include<stdio.h>
#include<string.h>
void proc(char*str1, char*str2, char*str)
{
int i, j; char ch;
i=0; j=strlen(str2)-1;
//****found****
while(i>j)
{
ch=str2[i]; str2[i]=str2[j]; str2[j]=ch;
i++; j--;
}
while(*str1 || *str2)
{
if(*str1){*str=*str1; str++; str1++; }
if(*str2){*str=*str2; str++; str2++; }
}
//****found****
*str=0;
}
void main()
{
char s1[100], s2[100], t[200];
system("CLS");
printf("/nEnter s1 string:");
scanf("%s", s1);
printf("/nEnter s2 string:");
scanf("%s", s2);
proc(s1, s2, t);
printf("/nThe result is: %s/n", t);
}
问答题请编一个函数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),数据域为整型。请分别编写函数,在链表中查找数据域值最大的结点:
