填空题下面函数要求计算两个整数x,y之和,并通过形参返回该值,请填空。
add(int x, int y, {{U}}【15】 {{/U}} z)
{{{U}} 【16】 {{/U}}=x+y;}
填空题设有chara.b;,若要通过a&b运算屏蔽掉a中的其他位,只保留第2位和第8位(右起为第1位),则b的二进制是{{U}} 【7】 {{/U}}。
填空题设有定义:float x=123.4567;,则执行以下语句后的输出结果是【 】。prinff("%f\n",(int)(x*100+0.5)/100.0);
填空题str为一个字符序列。请补充函数proc(),该函数的功能是:查找str中值为X的元素,返回该字符序列中值为X的元素个数,并把这些值为x的元素下标依次保存在数组bb中。例如,在“abcdedabcdab”中查找“C”,结果为:2个“c”,下标依次为2、8。 注意:部分源程序已给出。 请勿改动主函数main和其他函数中的任何内容。 试题程序: #include<stdlib.h> #inelude<stdio.h> #include<conio.h> #define M 20 int bb [M]; int proc(char * str, char ch) int i=0, n=0; char t=ch; char *p=str; while(*p) if( (1) ) (2) ; p++; i++; return (3) ; void main() char str[M]; char ch; int i, n; system("CLS"); printf("***Input the original string***/n"); gets(str); printf("***The Original***/n"); puts(str); printf("***Input character***/n"); scanf("%c", n=proc(str, ch); printf("/nThe nHmbr of character is: %d/n", n); printf("***The suffix of character***/n"); for(i=0: i<n: i++) printf("%d", bb[i]);
填空题以下程序的输出结果是 【8】 。 main() unsigned short a=65536; int b; printf("%d/n",b=A) ;
填空题请补充函数fun(),该函数的功能是求一维数组x[N]的平均值,并对所得结果进行四舍五入(保留两位小数)。 例如:当x[10]=15.6,19.9,16.7,15.2,18.3,12.1,15.5,11.0,10.0,16.0,结果为:avg=15.030000。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仪在函数fun的横线上填入所编写的若干表达式或语句。 试题程序: #include<stdio.h> #include<conio.h> double fun(double x[10]) int i; long t; double avg=0.0; double sum=0.0; for(i=0;i<l0;i++) 【1】 ; avg=sum/10; avg= 【2】 ; t= 【3】 ; avg=(double)t/100; return avg; main() double avg,x[10]=15.6,19.9,16.7,15.2,18.3,12.1,15.5,11.0,10.0,16.0; int i; clrscr(); printf("/nThe original data is:/n"); for(i=0;i<l0;i++) printf("%6.lf",x[i]); printf("/n/n"); avg=fun(x); printf("average=%f/n/n",avg);
填空题下列程序的输出结果是 【11】 。 void fun(int *n) while((*n)) printf("%d",(*n)--); main() int a=10; fun(
填空题下述函数用于统计一行字符中的单词个数,单词之间用空格分隔。
word_num(str
char str[];
{int i,num=0,word=0;
for(i=0; str[i]!={{U}} 【13】 {{/U}};i++)
if({{U}} 【14】 {{/U}}=")word=0
else if(word=0)
{
word=1;
{{U}}【15】 {{/U}};
}
return(num);
}
填空题以下程序运行后的输出结果是 【10】 。 void fun(int X,int y) x=x+y;y=x-y;x=x-y; printf("%d,%d,",x,y); main() int x=2,y=3; fun(x,y); printf("%d,%d/n",x,y);
填空题42. 当循环队列非空且队尾指针等于队头指针时,说明循环队列已满,不能进行人队运算。这种情况称为{{U}} {{/U}}。
填空题下列给定程序中,函数fun()的功能是:根据整型形参n,计算如下公式的值。 A1=1,A2=1/(5+A1),A3=1/(5+A2),…,An=1/(5+A(n-1)) 例如,若n=l0,则应输出0.192582。 请改正程序中的错误,使它能得到正确结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include <conio.h> #include <stdio.h> float fun(int n) { /***********found*************/ int A=1; int i; /*************found*************/ for(i=1;i<=n;i++) A=1.0/(5+A); return A; } main() { int n; clrscr(); printf("/nPlease enter n:"); scanf("%d",&n); printf("A%d=%lf/n”,n,fun(n)); }
填空题下列给定程序中函数insert的功能是:用插入排序法对字符串中的字符进行升序排列。插入法的基本算法是:先对头两个字符进行排序,然后把第三个字符插入到前两个字符中,插入后前三个字符依然有序;再把第四个字符插入到前三个字符中……待排序的字符串已在主函数中赋予。
请改正程序中的错误,使它能得出正确的结果。
注意
:不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:
#include <string.h>
#include <stdio.h>
#define N 80
void insert(char*aa)
{
int i,j,n;char ch;
/**********found********/
n=strlen[aa];
for(i=1;i<n;i**)
{
/********found********/
c=aa[i];
j=i-1;
while((j>0)
j--;
}
aa[j+1]=ch;
}
}
void main()
{
char a[N]="QWERTYUIOPASDFGHJKLMNBVCXZ";
printf("The original string:%s/n",a);
insert(a);
printf("The string after sorting:%s/n/n",a);
}
填空题给定程序中,函数fun()的功能是:使数组中的元素的值缩小5倍。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include<stdio.h>
#include<conio.h>
float m[10];
/*************found**************/
int fun (void)
{
int j;
printf("In subfunc after calling/n");
for(j=O;j<lO;j++)
{
;
/*************found**************/
print ("%f ",m[j]%5);
}
}
main()
{
int i;
printf ("In main before calling/n");
for (i=0;i<10;i++)
{
m[i]=i+20;
printf("%f ",m[i]);
}
fun();
printf("/nIn main after calling/n");
for(i=O; i<10;i++)
printf("%f ",m[i]/5);
}
填空题以下程序运行后输出结果是{{U}} 【18】 {{/U}}。
#include <stdio, h>
void swap(int x.int y)
{ int t;
t = x;x = y;y = t: printf( "% d % d ",x,y);
}
main ( )
{ iht a=3,b=4:
swap(a,b); prinff( "% d % d" ,a,b);
}
填空题下面程序中函数fun的功能是:找出一维数组元素中的最大值和它所在的下标,并将最大值和其下标通过形参传回。数组元素中的值已在主函数中赋予。主函数中x是数组名,n是x中的数据个数,max存放最大值,index存放最大值所在元素的下标。请填空。 #include <stdlib.h> #include <sldio.h> void fun(int a[],int n, int * max,int *d) int i; *max=a[0]; *d=0; for(i=0; 【15】 ;i++) if(*max< 【16】 ) *max=a[i];*d=i; main() int i, x[20], max, index, n=10; randomize(); for(i=0;i<n;i++) x[i]=rand()%50;printf("%4d",x[i]); printf("/n"); fun(x,n,&max.&index); printf("Max=%5d,Index=%4d/n",max,index);
填空题以下sstrcpy()函数实现字符串复制,即将t所指字符串复制到s所指内存空间中,形成一个新字符串s。 请填空。 void sstrcpy(char*s,char*t) while(*s++=______); main() char strl[100],str2[]="abcdefgh"; sstrcpy(strl,str2); printf("%s/n",strl);
填空题给定程序中规定输入的字符串全部为字母,fun函数的功能是:统计a所指字符串中每个字母在字符串中出现的次数(统计时不区分大小写),并将出现次数最高的字母输出(如果有多个相同,输出一个即可)。
例如对于字符串:dadbcdbabdb,对应的输出应为:b或d。
请改正函数fun中指定部位的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include<stdio.h>
#include<stdio.h>
#include<string.h>
void fun(char a[])
{int b[26],i,n,max;
for(i=0;i<26;i++)
/*********found*********/
a[i]=0;
n=strlen(a);
for(i=0;i<n;i++)
if(a[i]>="a"
else if(a[i]>="A"
max=0;
for(i=1;i<26;i++)
/*********found*********/
if(b[max]>b[i])
max=i;
printf("出现次数最多的字符是:%c/n",max+"a");
}
main()
{char a[200];
printf("请输入一个待统计的字符串:");scanf("%s",a);
fun(a);
}
填空题阅读下面程序,则执行后的输出结果是 【7】 。 #include"stdio.h" main() int x,y,z; x=1;y=2;z=3; if(x>y)if(x>z)printf("%d",x); else printf("%d",y); printf("%d/n",z);
填空题请补充函数proc(),函数proc()的功能是求7的阶乘。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的横线上填入所编写的若干表达式或语句。
试题程序:
#include<stdio.h>
long proc(int n)
{
if(______)
return(n*proc(______);
else if(______)
return 1;
}
void main()
{
int k=7;
printf("%d!=%ld/n", k, proc(k));
}
填空题下面程序的输出结果是 【15】 。 #define MAX 3 int a[MAX]; main() fun1();un2(A) ;printf("/n"); funl() int k,t=0; for(k=0;k<MAX;k++,t++)a[k]=t+t; fun2(int b[]) int k; for(k=0;k<MAX;k++)printf("%d",*(b+k));