填空题给定程序中,函数fun的功能是:找出100~999之间(含100和999)所有整数中各位上数字之和为x(x为一正整数)的整数,然后输出;符合条件的整数个数作为函数值返回。
例如,当x值为5时,100~999之间各位上数字之和为5的整数有:104、113、122、131、140、203、212、221、230、302、311、320、401、410、500。共有15个。当x值为27时,各位数字之和为27的整数是:999。只有1个。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构!
源程序如下:
#include<stdio.h>
fun(int x)
{int n, s1, s2, s3, t;
n=0;
t=100;
/********found********/
while(t<=______){
/********found********/
s1=t%10; s2=(______)%10; s3=t/100;
/********found********/
if(s1+s2+s3==______)
{printf("%d", t);
n++;
}
t++;
}
return n;
}
main()
{int x=-1;
while(x<0)
{printf("Please input(x>0): "); scanf("%d", }
printf("/nThe result is: %d/n", fun(x));
}
填空题下列给定程序中函数fun的功能是:统计substr所指的字符串在str所指的字符串中出现的次数。 例如,若字符串为aaas 1kaaas,子字符串为as,则应输出2。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 试题程序: #include<stdio.h> int fun(char*str,char*substr) int i,j,k,num=0; /*********found*********/ for(i=0,str[i],i++) for(j=i,k=0; substr[k]==str[j]; k++,j++) /*********found*********/ If(substr[k+1]=='/0') num ++; break; return num; main() char str[80],substr[80]; printf("Input a string:"); gets(str); printf("Input a substring:"); gets(substr); printf("%d/n".fun(str,substr));
填空题有以下程序: #inciude<stdio.h> int *f(int *P,int *q); main() int m=1,n=2,*r=&m; r=f(r,&n);printf("%d/n",*r); int *f(int*p,int*q) return(*p>*q)?p:q; 程序运行后的输出结果是 (11)
填空题以下程序的功能是输出字符串。请填空。 main( ) char * a[]="Pascal" ,"C language","dbase","Cobol"; char 【14】 ; int j=0; p=a; for(;j<4;j+ +) print("%s/n",* 【15】 );
填空题有以下程序段,且变量已正确定义和赋值 for(s=1.0,k=1;k<=n;k++)s=s+1.0/(k*(k+1)); printf("s=%f/n/n",s); 请填空,使下面程序段的功能与之完全相同 S=1.0;k=1; while( [8] )s=s+1.0/(k*(k+1)); [9] ; printf("s=%f/n/n",s);
填空题以下程序中,fun函数的功能是求3行4列二维数组每行元素中的最大值,请填空。
void fun(int, int, int(*)[4], int*);
main()
{ int a[3][4]={{12, 41, 36, 28}, {19, 33, 15, 27}, {3, 27, 19, 1}}, b[3], i;
fun(3, 4, a, b);
for(1=0; i<3; i++)printf("% 4d", b[i]);
printf("/n");
}
void fun(int m, int n, int ar[][4], int * bar)
{ int i, j, x;
for(i=0; i<m; i++)
{ x=ar[i][0];
for(j=0; j<n; j++)if(x<ar[i][j])x=ar[i][j];
{{U}} {{U}} {{/U}} {{/U}}=x;
}
}
填空题下列给定程序中,函数fun的功能是:把形参a所指数组中的奇数按原顺序依次存放到a[0]、a[1]、a[2]...中,把偶数从数组中删除,奇数个数通过函数值返回。 例如,若a所指数组中的数据最初排列为:9,1,4,2,3,6,5,8,7,删除偶数后a所指数组中的数据为:9,1,3,5,7,返回值为5。 请在下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。 注意:部分源程序给出如下。 不得增行或删行,也不得更改程序的结构! 试题程序: #include<stdio.h> #defineN 9 int fun(int a[],int n) int i,j; j=0; for(i=0;i<n;i++) /*************found************/ if(a[i]%2==______) /**************found************/ a[j]=a[i];______; /***********found************/ return______; main() int b[N]=9,1,4,2,3,6,5,8,7,i,n; printf("/nThe original data:/n"); for(i=0;i<N;i++) printf("%4d",b[i]); printf("/n"); n=fun(b,N); printf("/nThe number of odd:%d/n",n); printf("/nThe odd number:/n"); for(i=0;i<n;i++) printf("%4d",b[i]); printf("/n");
填空题若有如下程序:
#include "stdio.h"
main()
{ char s[30];
Strcpy(
Strcpy(
strcpy(;
printf("%S/n",s);
则程序运行后的输出结果是{{U}} 【7】 {{/U}}。
填空题下述函数统计—个字符串中的单词个数,单词是指处在空格之间的字符序列,请填空。 int word(char *s) int num=0,flag=0; while(*s) if( 【18】 ='') flag=0; else if( 【19】 )flag=1;num++ return 【20】 ;
填空题以下函数用来求出数组的最大元素在数组中的下标并存放在k所指的存储单元中。请填空。
#include<conio.h>
#include<stdio.h>
int fun(int *s,int t,int *k)
{int i;
*k=0;
{{U}} [8] {{/U}}
if(s[*k]<s[i])*k=i;
return{{U}} [9] {{/U}};}
main()
{ int a[10]:{876,675,896,101,301,401,980,431,451,777},k;
fun(a,10,&k);
pfintf("%d,%d/n",k,a[k]);}
填空题以下程序的功能是:输出x、y、z三个变量中的最大值,请填空。 main() int x,y,z,u; printf("Enter x,y,x;");scanf("%d%d%d",&x,&y,&z); if(______) u=x; else u=y; if(______) u=z; printf("u=%d",u);
填空题设有以下程序: main() int i,sum=0; for(i=2;i<10;i++) if((i%2)==0) continue; sum+=i; printf("%d/n",sum); 程序执行后的输出结果是______。
填空题设有宏定义: # define WIDTH 80 # define LENGTHWIDTH+40 则执行赋值语句“v=LENGTH * 20;"(v为int型变量)后,v的值是 【16】 。
填空题下列给定程序中,函数fun()的功能是:找出一个大于给定整数m且紧随m的素数,并作为函数值返回。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构. 试题程序: #include <conio.h> #include <stdio.h> int fun( int m) int i,k; for (i=m+1; ;i++) for (k=2;k<i;k++) /*************found**************/ if (i%k!=0) break; /*************found**************/ if (k<i) return(i); main() int n; clrscr (); printf("/nPlease enter n: "); scanf ("%d", printf ("%d/n",fun(n));
填空题以下程序运行后的输出结果是______。 main inn a=1. b=3. c=5: if (c=a+b) printf ( "yes/n); else printf ("no/n);
填空题以下程序运行时输入10,20↙,输出结果是______。
#include<stdio.h>
int main()
{
int x, y, t=0;
scanf("%d, %d",
if(x>y)
t=x; x=y; y=t;
printf("%d, %d/n", x, y);
return 0;
}
填空题请补充函数proc(),该函数的功能是:求能整除x且是奇数的数,把这些数保存在数组bb中,并按从大到小的顺序输出。
例如,当x=15时,依次输出:15 5 3 1。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的横线上填入所编写的若干表达式或语句。
试题程序:
#include<stdlib.h>
#include<conio.h>
#include<stdio.h>
void proc(int x, int bb[])
{
int i;
int j=0;
for(______; i<=x; i+=2)
{
if(______)
bb[j++]=i;
}
printf("/n/n");
for(i=______; i>=0; i--)
printf("%d", bb[i]);
}
void main()
{
int k=1;
int str[100];
system("CLS");
printf("/nPlease input X=");
scanf("%d",
proc(k, str);
}
填空题下列语句的输出结果是 【11】 。 char a=3;printf("%d,%o,%x,%u/n",a,a,a,a);
填空题输出指针数组各元素所指的整数值和它存放的地址值。
#include <stdio.h>
main()
{ int i;
int a[5]={1,3,5,7,9};
int*num[5];
int{{U}} {{U}} {{/U}} {{/U}};
for(i=0;i<5;i++)
num[i]={{U}} {{U}} {{/U}} {{/U}};
p=num+0;
for(i=0;i<5;i++)
{ printf("%d %d/n",{{U}} {{U}} {{/U}} {{/U}});
p++;
}
}
填空题以下程序运行后的输出结果是______。 struct NODE int k; struct NODE *link; ; main() struct NODE m[5],*pm,*q=m+4; int i=0; while(P!=q) p->k=++i;p++; q->k=i++;q--; q->k=i; for(i=0;i<5;i++)printf("%d",m[i].k); printf("/n");