问答题函数fun的功能是:将s所指字符串中除了下标为偶数、同时ASCII值也为偶数的字符外,其余的全都删除;串中剩余字符所形成的一个新串放在t所指的数组中。 例如,若s所指字符串中的内容为:"ABCDEFG123456",其中字符A的ASCII码值为奇数,因此应当删除;其中字符B的ASCII码值为偶数,但在数组中的下标为奇数,因此也应当删除;而字符2的ASCII码值为偶数,所在数组中的下标也为偶数,因此不应当删除,其他依此类推。最后t所指的数组中的内容应是:”246”。 注意:部分源程序存在文件PROG1.C中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。#include <stdio.h>#include <string.h>void fun(char *s, char t[]){}main(){char s[100], t[100];void NONO ();printf("/nPlease enter string S:"); scanf("%s", s);fun(s, t); printf("/nThe result is:%s/n",t);NONO();}void NONO (){/* 函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。 */char s[100], t[100] ;FILE *rf, *wf ;int i ;rf = fopen("in.dat","r");wf = fopen("out.dat","w") ;for(i = 0 ; i < 10 ; i++) {fscanf(rf, "%s", s);fun(s, t);fprintf(wf, "%s/n", t);}fclose(rf);fclose(wf) ; }
问答题请编写函数fun,对长度为7个字符的字符串,除首、尾字符外,将其余5个字符按ASCⅡ码降序排列。例如,原来的字符串为“CEAedca”,排序后输出为“CedcEAa”。 注意:请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 试题程序:#include<stdio.h>#include<ctype.h>#include<string.h>void fun(char*s,int num){}main(){ void NONO(); char S[10]; printf(“输入7个字符的字符串:”); gets(s); fun(s,7); prinff(“\n%s”,s); NONO();}void NONO()/*请在此函数内打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。*/{ char S[10]; FILE*rf,*wf; int i=0; rf=fopen(“in.dat”,“r”); wf=fopen(“out.dat”,“w”); while(i<10) { fgets(s,10,rf); s[7]=0; fun(s,7); fprinff(wf,“%s\n”,S); i++: } felose(rf); felose(wf);}
问答题学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组S中,请编写函数fun,它的功能是:把分数最高的学生数据放在h所指的数组中,注意:分数最高的学生可能不止一个,函数返回分数最高的学生的人数。
注意:部分源程序在文件PROGI.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#include
#define N 16
typedef struct
{ char num[10];
int S;
}STREC;
int fun(STREC*a,STREC*b)
{
}
main()
{STREC s[N]={{“GA05”,85},{“GA03”,76},{“GA02”,69},{“GA04”,85},{“GA01”,91),{“GA07”,72},{“GA08”,64),{“GA06”,87},{“GA015”,85},{“GA013”,91},{“GA012”,64},{“GA014”,91),{“GA011”,77},{“GA017”,64},{“GA018”,64},{“GA016”,72)};
STREC h[N];
int i,n;FILE*out;
n=fun(s,h);
printf(“The %d highest score:\n”,n);
for(i=0;i
问答题请编一个函数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 4
void 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 original data is:/n");
for(i=0; i<M; 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");
}
问答题下列给定程序中,函数fun的功能是:从s所指字符串中,找出t所指字符串的个数作为函数值返回。例如,当s所指字符串中的内容为“abcdabfab”,t所指字符串的内容为“ab”,则函数返回整数3。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!试题程序:#include<stdlib.h>#include<conio.h>#include<stdio.h>#include<string.h>int fun(char*s,char*t){ int n;char*p,*r; n=0; while(*s) { p=s; r=t; while(*r)/*********found*********/ if(*r=*p){r++;p++} else break;/*********found*********/ if(r=='\0') n++; s++; } return nj}void main(){ char s[100],t[100];int:m; system("CLS"); printf("\nplease enter string s:"); Scanf("%s",s); printf("\nPlease enter substring t:"); scanf("%s",t); m=fun(s,t); printf("\nThe result is:m=%d\n",m);}
问答题给定程序MODI1.C中函数fun的功能是:首先把b所指字符串中的字符按逆序存放, 然后将a所指字符串中的字符和b所指字符串中的字符,按排列的顺序交叉合并到c所指数组中,过长的剩余字符接在c所指数组的尾部。例如,当a所指字符串中的内容为"abcdefg",b所指字符串中的内容为"1234"时,c所指数组中的内容应该为"a4b3c2d1efg";而当a所指字符串中的内容为"1234",b所指字符串中的内容为"abcdefg"时,c所指数组中的内容应该为"1g2f3e4dcba"。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
给定源程序:
#include
#include
void fun( char *a, char *b, char *c )
{
int i , j; char ch;
i = 0; j = strlen(b)-1;
/************found************/
while ( i > j )
{ ch = b[i]; b[i] = b[j]; b[j] = ch;
i++; j--;
}
while ( *a || *b ) {
/************found************/
If ( *a )
{ *c = *a; c++; a++; }
if ( *b )
{ *c = *b; c++; b++; }
}
*c = 0;
}
main()
{
char s1[100],s2[100],t[200];
printf("/nEnter s1 string : ");scanf("%s",s1);
printf("/nEnter s2 string : ");scanf("%s",s2);
fun( s1, s2, t );
printf("/nThe result is : %s/n", t );
}
问答题下列程序定义了N×N的二维数组,并在主函数中自动赋值。请编写函数fun(inta[][N]),该函数的功能是:将数组左下半三角元素中的值全部置成0。例如a数组中的值为:则返回主程序后a数组中的值应为:注意:部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。试题程序:注意:部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。试题程序:
问答题给定程序中函数fun的功能是:根据整型形参m,计算如下公式的值。例如,若m中的值为:5,则应输出:1.463611。请改正程序中的错误,使它能得到正确结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。[试题源程序]#include<stdio.h>doublefun(intm){doubley=1.0;inti;/**********found**********/for(i=2;i<m;i++)/**********found**********/y+=1/(i*i);return(y);}main(){intn=5:printf("/nTheresultis%lf/n",fun(n));}
问答题下列给定程序中,函数fun的功能是:计算并输出下列级数的前N项和SN,直到SN+1的值大于q为止,q的值通过形参传入。例如,若q的值为50.0,则函数值应为49.394948。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!试题程序:#include<conio.h>#include<stdio.h>doublefun(doubleq)intn;doublesf;n=2;s=2.0;while(s<=q)t=s;/********found********/s=s+(n+1)/n;n++;printf("n=%d/n",n);/********found********/returns;]main()printf"%f/n",fun(50));
问答题请在函数fun()的横线上填写若干表达式,使从键盘上输入一个整数n,输出n对应的斐波那契数列。斐波那契数列是一整数数列,该数列自第三项开始,每数等于前面两数之和,即0,1,1,2,3,5,8,13,21,34,55,…。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。 试题程序: #include<stdio.h> int fun(int n); main() int i,n=0; scanf("%d", for(i=0;i<n; i++) printf("%d",fun(i)); int fun(int n) if( 【1】 ) return 0; else if( 【2】 ) return 1; else return 【3】 ;
问答题请编写函数fun,其功能是求出数组的最大元素在数组中的下标并存放在k所指的存储单元中。
例如, 输入如下整数: 876 675 896 101 301 401 980 431 451 777
则输出结果为: 6, 980
注意: 部分源程序在文件PROG1.C文件中。请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
给定源程序:
#include
int fun(int *s, int t, int *k)
{
}
main( )
{
int a[10]={876,675,896,101,301,401,980,431,451,777}, k ;
fun(a, 10,
printf("%d, %d/n", k, a[k]) ;
NONO( ) ;
}
问答题某学生的记录由学号、8门课程成绩和平均分组成,学号和8门课程的成绩已在主函数中给出,请编写函数fun,其功能是:求出该学生的平均分,并放入记录的ave成员中。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun部位中填入你编写的若干语句。 试题程序: #include <stdio .h> #define N 8 typedef struct char num[10]; double s[N]; double ave; STREC; void fun (STREC * a) void main () STREC s= "GA005", 85.5, 76, 69.5, 85, 91, 72, 64.5, 87.5; int i; fun(&s); printf("The % s's student data:/n", s.num); printf("% 4.1f/n", s.s[i]); printf "/nave=% 7.3f/n", s. ave);
问答题
给定程序MODI1.C中函数fun的功能是:从低位开始取出长整型变量s中偶数位上的数,依次构成一个新数放在t中。高位仍在高位,低位仍在低位。
例如,当s中的数为:7654321时,t中的数为:642。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include<stdio.h>
/**********found**********/
void fun(10ng s, long t)
{long s1=10;
s/=10;
*t=s%10;
/**********found**********/
while(s<0)
{s=s/100;
*t=s%10*s1+*t;
s1=s1*10;
}
}
main()
{long s, t;
printf("/nPlease enter s: "); scanf("%ld",
fun(s,
printf("The result is: %ld/n", t);
}
问答题编写程序outch,程序读入一行字符,根据命令行中的参数进行不同的输出。若有以下命令行:
outch -2
程序对所读入的一行字符输出最后两个字符。若有以下命令行:
outeh +6
程序对所读入的一行字符输出开头6个字符。若命令行中没有参数,则隐含规定输出最后10个字符。为简单起见,命令行的参数中只包含一位数字。
问答题编写函数fun,其功能是:将s所指字符串中ASCII码值为奇数的字符删除,剩余字符形成的新串放在t所指数组中。 例如,若s所指字符串中的内容 “ABCDEFGl2345”,其中字符A的ASCII码值为奇数,字符1的ASCII码值也为奇数,都应当删除,其他依此类推。最后t所指的数组中的内容应是 “BDF24”。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 试题程序:#include < conio.h >#include < stdio.h >#include < string.h >void fun(char*s,char t[]){}main(){ char s[100],t[100],Msg[]="Please enter string s:"; printf(Msg); Scanf("%s",s); fun(s,t); printf("/nThe resuit is:%s/n",t);}
问答题请编写函数fun,函数的功能是:统计一行字符串中单词的个数,作为函数值返回。一行字符串在主函数中输入,规定所有单词由小写字母组成,单词之间由若干个空格隔开,一行的开始没有空格。
请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
给定源程序:
#include<stdio.h>
#include<string.h>
#define N 80
int fun(char*s)
{
}
main()
{char line[N];int num=0;
printf("Enter a string:/n");gets(line);
num=fun(line);
printf("The number of word is:%d/n/n",num);
}
问答题请编写函数void fun(int x,int pp [],int*n),它的功能是:求出能整除x且不是偶数的各整数,并按从小到大的顺序放在pp所指的数组中,这些除数的个数通过形参n返回。 例如,若x中的值为30,则有4个数符合要求,它们是1、3、5、1 5。 注意:部分源程序在文件PROG1.C中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 试题程序:#include < conio.h >#include < stdio.h >#include < stdlib.h >v02d fun(int x,int pp[],int,* n){)void main(){ FILE*wf; int x,aa[1 00 0],n,i; system("CLS"); printf("/nPlease enter aninteger 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*********/}
问答题给定程序MODll.C中,函数fun的功能是:在有n名学生,2门课成绩的结构体数组std中,计算出第l门课程的平均分,作为函数值返回。例如,主函数中给出了4名学生的数据,则程序运行的结果为:第l门课程的平均分是:76.125000请改正函数fun中指定部位的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:
问答题下列给定程序中,函数fun的功能是:有N×N矩阵,以主对角线为对称线,对称元素相加并将结果存放在左下三角元素中,右上三角元素置为O。 例如,若N=3,有下列矩阵: 1 2 3 …… 4 5 6 …… 7 8 9 计算后结果为: 1 0 0 …… 6 5 0 …… 10 14 9 请在下划线处填人正确的内容并把下划线删除,使程序得出正确的结果。 注意:部分源程序给出如下。 不得增行或删行,也不得更改程序的结构! 试题程序: #include<scdio.h> #define N 4 /********found********/ void fun(int(*t) (1) ) int i,j; for(i=l;i<N;i++) for(j=0;j<i=j++) /********found********/ (2) =t[i][j]+t[j][i]; /********found********/ (3) =0; 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<N;i++) for(j=0;j<N;j++) printf("%2d",t[i][j]; printf("/n"); fun(t); printf("/nThe result is:/n"); for(i=0;i<N;i++) for(j=0;j<N;j++) printf("%2d",t[i][j])= printf("/n");
问答题请编写函数fun,该函数的功能是:将M行N列的二维数组中的数据,按列的顺序依次存放到一维数组中。函数fun中给出的语句仅供参考。 例如,二维数组中的数据为: 33 33 33 33 44 44 44 44 55 55 55 55 则一维数组中的内容应是: 33 44 55 33 44 55 33 44 55 33 44 55 注意:部分源程序在文件PROG1.C中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 文件PROG1.C内容如下: #include<stdio.h> void fun(int(*s)[10],int *b,int *n,int mm,int nn) /*以下代码仅供参考*/ int i,j,np=0; /*np用作b数组的下标*/ 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,&n,3,4); printf("The A array: /n"); for(i=0;i<n;i++)printf("%3d",a[i]); printf("/n/n");
