问答题写出下列程序的运行结果。
fun(int a, int b)
{ if(a>b) return (a);
Else return (b); }
main()
{ int x=3,y=8,z=6,r;
r=fun(fun(x,y),2*z); printf(“%d\n”,r); }
问答题下列给定的程序中,函数fun()的功能是:计算并输出k以内最大的10个能被13或17整除的自然数之和。k的值由主函数传入,若k的值为500,则函数的值为4622。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。
试题程序 #include
<stdio.h> #include <conio.h> #include
<stdlib.h> int fun(int k) { int m=0, mc=0,
j; while((k>=2) mc++;} k--; /* * * * *found* * * * *
/ return m; } void
main() { printf("% d/n", fun(500)); }
问答题请编写函数fun(),该函数的功能是:移动一维数组中的内容,若数组中有n个整数,要求把下标从p~n-1(p<n-1)的数组元素平移到数组的前面。 例如,一维数组中的原始内容为1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, P的值为6。移动后,一维数组的内容应为7, 8, 9, 10, 11, 12, 13, 14, 15, 1, 2, 3, 4, 5, 6。 [注意] 部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。 [试题源程序] #inciude <stdio.h> #define N 80 void fun(int *w, int p, int n) main() int a[N]=(i, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15); int i, P, n=15; printf("The original data:/n"); for(i=0; i<n; i++) printf("%3d", a[i]); printf("/n/nEnter p: "); scanf("%d", &p); fun(a, P, n); printf("/nThe data after moving:/n"); for(i=0; i<n; i++) printf("%3d", a[i]); printf("/n/n");
问答题下列程序定义了N×N的二维数组,并在主函数中赋值。请编写函数fun,函数的功能是:求出数组周边元素的平均值并作为函数值返回给主函数中的s。例如,若a数组中的值为:则返回主程序后s的值应为3.375。注意:请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。试题程序:#include<stdio.h>#include<tonio.h>#include<stdlib.h>#defineN5doublefun(intw[][N]){}voidmain(){FILE*wf;inta[N][N]={0,1,2,7,9,1,9,7,4,5,2,3,8,3,1,4,5,6,8,2,5,9,1,4,1};inti,j;doubles;system("CLS");printf("***Thearray***/n");for(i=0;i<N;i++){for(j=0;j<N;j++){printf("%4d",a[i][j]);}printf("/n");}s=fun(a);printf("***THERESULT***/n");printf("Thesumis:%lf/n",s);/******************/wf=fopen("out.dat","w");fprintf(wf,"%lf",s);fclose(wf);/******************/}
问答题请编写输出以下图案的程序,图案的行数由输入的整数值确定(每行中字符之间没有空格)。
A BBB CCCCC
DDDDDDD EEEEEEEEE
问答题下列给定程序中,函数fun的功能是:将s所指字符串中的所有数字字符移到所有非数字字符之后,并保持数字字符串和非数字字符串原有的次序。
例如,s所指的字符串为“def35adh3kjsdt7”,执行后结果为“defadhkjsdf3537”。
请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
void fun(char*s)
{
int i,j=0,k=0;
char t1[80],t2[80];
for(i=0;s[i]!='\0';i++)
if(s[i]>='0'&&s[i]<='9')
{
t2[j]=s[i];
【1】
;
}
else
{
t1[k++]=s[i];
}
t2[j]=0;
t1[k]=0;
for(i=0;i<k;i++)
【2】
;
for(i=0;i<
【3】
;i++)
s[k+i]=t2[i];
}
main()
{
char s[80]="ba3a54j7sd567sdffs";
printf("\nThe original string is:%s\n",S);
fun(s);
printf("\nThe result is:%s\n",s);
}
问答题有一个一维数组,内放10个学生成绩,写一个函数,求出平均分。
问答题下列给定程序中,函数proc()的功能是:根据输入的3个边长(整型值),判断能否构成三角形:若能构成等边三角形,则返回3;若是等腰三角形,则返回2;若能构成三角形则返回1;若不能,则返回0。
例如,输入3个边长分别为3,4,5,实际输入时,数与数之间以Enter键分隔而不是逗号。
请修改程序中的错误,使它能得出正确的结果。
注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include<stdio.h>
#include<math.h>
int proc(int a, int b, int c)
{
if(a+b>c
else if(a==b||b==-c||a==c)
return 2;
||****found****
else return 3;
}
else return 0;
}
void main()
{
int a, b, C, shape;
printf("/nInput a, b, c:");
scanf("%d%d%d",
printf("/na=%d, b=%d, c=%d/n", a, b, c);
shape=proc(a, b, c);
printf("/n/nThe shape: %d/n", shape);
}
问答题编写函数fun,其功能是:将所有大于1小于整数m的非素数存入xx所指数组中,非素数的个数通过k返回。例如,若输入17,则应输出:4 6 8 9 10 12 14 15 16。 注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。试题程序:#include<stdlib.h>#include<conio.h>#include<stdio.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",&n); fun(n,&m,zz); printf("\n\nThere are % d non-prime numbers less than %d:",m,n); for(n=0;n<m;n++) printf("\n%4d",zz[n]);}
问答题下列给定程序中函数fun的功能是:从低位开始依次取出长整型变量s中偶数位上的数,构成一个新数放在t中。高位仍在高位,低位仍在低位。
例如,当s中的数为7654321时,t中的数为642。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
/**********found********** /
void fun(long 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;
}
}
void main()
{
long s, t;
system ("CLS");
printf("/nPlease enter s: ");
scanf("% ld",
fun(s,
printf("The result is: % ld/n", t);
}
问答题请编写一个函数proc(),它的功能是:将str所指字符串中所有下标为奇数位置的字母转换为大写(若该位置上不是字母,则不转换)。 例如,若输入abcde123, 则应输出aBcDe123。 注意:部分源程序已给出。 请勿改动主函数main和其他函数中的任何内容。 试题程序: #include<stdlib.h> #include<conio.h> #include<stdio.h> #include<string.h> void proc(char*str) void main() char tt[81]; system ("CLS"); printf("/nPlease enter an string within 80 characters: /n"); gets(tt); printf("/n/nAfter changing, the string / %s", tt); proc(tt); printf("/nbecomes/n %s/n", tt);
问答题请编写函数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的花括号中填入你编写的若干语句。
给定源程序:
#include
void fun(int s[][10], int b[], int *n, int mm, int nn)
{
/* 以下代码仅供参考 */
int i,j,np=0; /* np用作b数组下标 */
*n=np;
}
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("=",w[i][j]);
printf("/n");
}
fun(w,a,
printf("The A array:/n");
for(i=0;i
NONO();
}
问答题函数fun的功能是:把形参a所指数组中的偶数按原顺序依次存放到a[0]、a[1]、a[2]、……中,把奇数从数组中删除,偶数个数通过函数值返回。例如:
若a所指数组中的数据最初排列为:9、1、4、2、3、6、5、8、7,删除奇数后a所指数组中的数据为:4、2、6、8,返回值为4。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
#define N 9
int fun(int a[], int n)
{ int i,j;
j = 0;
for (i=0; i
问答题编写函数fun,其功能是:利用下面的简单迭代方法求方程cos(x)-x=0的一个实根。 xn+1=cos(xn) 迭代步骤如下: (1)取x1初值为0.0; (2)x0=x1,将x1的值赋给x0; (3)x1=cos(x0),求出一个新的x1; (4)若x0-x1的绝对值小于0.000001,执行步骤(5),否则执行步骤(2); (5)所求x1就是方程cos(x)-x=0的一个实根,作为函数值返回。 程序将输出结果Root=0739086。 注意:部分源程序给出如下。 请勿改动主函数数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 试题程序: #include<conio.h> #include<math.h> #include<scdio.h> double fun() main() double f=fun(); printf("Root=%f/n",f);
问答题下列程序定义了N×N的二维数组,并在主函数中自动赋值。请编写函数fun(int a[][N]),该函数的功能是:将数组左下半三角元素中的值全部置成0。例如a数组中的值为:
1 9 7
2 3 8
4 5 6
则返回主程序后a数组中的值应为:
0 9 7
0 0 8
0 0 0
注意:部分源程序给出如下。
请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#define N 5
void fun (int a[][N])
{
}
void main()
{
int a[N][N],i,j;
system("CLS");
printf("*****The array*****/n");
for(i=0;i<N;i++)
/*产生一个随机的5*5矩阵*/
{
for(j=0;j<N;j++)
{
a[i][j] = rand()%10;
printf("%4d", a[i][j]);
}
printf("/n");
}
fun(a);
printt("THE RESULT/n");
for(i=0;i<N;i++)
{
for(j=0;j<N;j++)
printf("%4d",a[i][j]);
printf("/n");
}
}
问答题给定程序MODI1.C中函数fun的功能是:输出M行M列整数方阵,然后求两条对角线上元素之和,返回此和数。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
给定源程序:
#include <stdio.h>
#define M 5
/************found************/
int fun(int n,int xx[][])
{ int i,j,sum=0;
printf("/nThe%d x %d matrix:/n",M,M);
for(i=0;i<M;i++)
{ for(j=0;j<M;j++)
/************found************/
printf("%f",xx[i][j]);
printf("/n");
}
for(i=0;i<n;i++)
sum+=xx[i][i]+xx[i][n-i-1];
return(sum);
}
main()
{ int aa[M][M]={{1,2,3,4,5},{4,3,2,1,0},
{6,7,8,9,0},{9,8,7,6,5},{3,4,5,6,7}};
printf("/nThe sum of all elements on 2 diagnals is%d.",mn(M,aa));
}
问答题下列程序定义了N×N的二维数组,并在主函数中自动赋值。请编写函数fun(inta[][N],intm),该函数的功能是使数组右上半三角元素中的值乘以m。例如,若m的值为2,a数组中的值为:则返回主程序后a数组中的值应为:注意:请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。试题程序:#include<conio.h>#include<stdio.h>#include<stdlib.h>#include<string.h>#defineN5voidfun(inta[][N],intm){}main(){inta[N][N],m,i,j;FILE*out;printf("***Thearray***/n");for(i=0;i<N;i++)(for(j=0;j<N;j++){a[i][j]=rand()%20;printf("%4d",a[i][j]);}printf("/n");}m=rand()%4;printf("m=%4d/n",m);fun(a,m);printf("THERESULT/n");for(i=0;i<N;i++){for(j=0;j<N;j++)printf("%4d",a[i][j]);printf("/n");}/*********found*********/out=fopen("out.dat","w");for(i=0;i<N;i++)for(j=0;j<N;j++)a[i][j]=i*j;fun(a,8);for(i=0;i<N;i++){for(j=0;j<N;j++)fprintf(out,"%4d",a[i][j]);fprintf(out,"/n");}fclose(out);/*********found*********/
问答题请编写一个函数fun,它的功能是:将ss所指字符串中所有下标为奇数值置的字母转换为大写(若该位置上不是字母,则不转换)。例如,若输入”abc4Efg“,则应输出”aBc4EFg“。注意:部分源程序在文件PROGl.C中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。试题程序如下:
问答题给定程序MODI1.C中函数fun的功能是:根据输入的三个边长(整型值),判断能否构成三角形:构成的是等边三角形,还是等腰三角形。若能构成等边三角形函数返回3,若能构成等腰三角形函数返回2,若能构成一般三角形函数返回1,若不能构成三角形函数返回0。
请改正函数fun中指定部位的错误,使它能得出正确的 结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include
#include
/**********found**********/
v02d fun(int a,int b,int c)
{ if(a+b>c&&b+c>a&&a+c>b){
if(a==b&&b==c)
return 3;
el se if(a==b || b==c || a==c)
return 2;
/**********found**********/
else return 1
}
else retl5trn 0;
}
main()
{ int a,b,c,shape ;
printf("/nInput a,b,c:");scarlf
("%d%d%d",&a, &b,&c);
printf("/na=%d, b=%d, c=%d/n",a,b,c);
shape=fun(a,b,c);
printf("/n/nThe shape:%d/n",
shape);
}
问答题综合应用
请编写函数fun,其功能是:判断形参n中的正整数是几位数(输入数据的位数不超过4位),并将结果通过函数值返回。 例如:若输入的数据为 123,则输出结果为:输入的数字是3位。
注意:部分源程序存在PROG1.C中,请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
#include
int fun(int n)
{
}
main()
{ int n, place ;
do{
printf("请输入一个4位以内的正整数: ");
scanf("%d",
} while (n9999);
place = fun(n);
printf( "输入的数字是%d位/n", place );
}