填空题下面程序是计算100以内能被4整除且个位数为4的所有整数,请填空。 main() int m,n; for(m=0; 【9】 ;m++) n=m*10+4; if( 【10】 )Continue; printf("%d/n",n);
填空题下面程序的运行结果是:{{U}} 【17】 {{/U}}。
int f(int a[],int n)
{ if(n>1)return a[0]+f(&a[1],n-1);
elsel return a[0];
}
main()
{ int aa[3]={1,2,3},s;
s=f(&aa[0],3);printf("%d/n",s);
}
填空题设变量已正确定义为整型,则表达式n=i=2,++i,i++的值为 【7】 。
填空题请补充函数proc(),该函数的功能是:计算M×M维矩阵元素的方差,结果由函数返回。维数M在主函数中输入。例如,输入4,则求方差的公式为:其中注意:部分源程序给出如下。请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的横线上填入所编写的若十表达式或语句。试题程序:#include<stdio.h>#include<conio.h>#include<stdlib.h>#include<math.h>#defineM20doubleproc(________,intn){inti,j;doubles=0.0;doublef=0.0;doubleaver=0.0;doublesd=0.0;for(i=0;i<n;i++)for(j=0;j<n;j++)s+=a[i][j];aver=________;for(i=0;i<n;i++)for(j=0;j<n;j++)f+=(a[i][j]-aver)*(a[i][j]-aver);f/=(n*n);sd=________;returnsd;}voidmain(){intarr[M][M];intn;inti,j;doubles;system("CLS");printf("****InputthedimensionofarrayM****/n");scanf("%d",printf("****Thearray"***/n");for(i=0;i<n;i++){for(j=0;j<n;j++){arr[i][j]=rand()%50;while(arr[i][j]==0)arr[i][j]=rand()%60;printf("%4d",arr[i][j]);}printf("/n/n");}s=proc(arr,n);printf("****THERESULT****/n");printf("%4.3f/n",s);}
填空题当运行以下程序时,输入abcd,程序的输出结果是【 】
insert(char str[])
{int i;
i=strlen(str);
while(i>0)
{str[2*i]=str[i];str[ 2*i-1]=''*'';i--;}
printf("%S\n",str);
}
main()
{char str[40];
scanf("%S",str);insert(str);
}
填空题以下程序运行后的输出结果是 {{U}} 【10】 {{/U}} 。
main( )
{ int a [4][4]={{1,2,3,4},{5,6,7,8},{11,12,13,14},{15,16,17,18}};
int i=0,j=0,s=0;
while(i++<4)
{
if(i==2||i==4) continue;
j=0;
do{ s+= a[j]; j++; } while(j<4);
}
printf("%d/n",s);
}
填空题若有以下程序:
main()
{ int p, a=5;
if(p=a!=0)
printf("% d/n", p);
else
printf("% d/n", p+2);
执行后的输出结果是{{U}} 【7】 {{/U}}。
填空题下列给定程序中,函数proc()的功能是:用冒泡法对6个字符串按由小到大的顺序进行排序。 请修改程序中的错误,使它能得到正确结果。 注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include<string.h> #include<stdlib.h> #include<conio.h> #include<stdio.h> #define MAX 20 void proc(char * pstr[6]) int i, j; char *p; for(i=0; i<5; i++) for(j=i+1; j<6; j++) //************found************* if(strcmp((pstr+i), (pstr+j))>0) p=*(pstr+i); *(pstr+i)=*(pstr+j); //************found************* *(pstr+j)=*p; void main() int i; char *p[6], str[6] [MAX]; system("CLS"); for(i=0; i<6; i++) p[i]=str[i]; printf("/nEnter 6 string(1 string at each line): /n"); for(i=0; i<6; i++) scanf("%s", p[i]); proc(p); printf("The strings after sorting: /n"); for(i=0; i<6; i++) printf("%s/n", p[i]);
填空题人员的记录由编号和出生年、月、日组成,N名人员的数据已在主函数中存入结构体数组std中。函数fun的功能是:找出指定出生年份的人员,将其数据放在形参k所指的数组中,由主函数输出,同时由函数值返回满足指定条件的人数。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
#define N 8
typedef struct
{int num;
int year, month, day;
}STU;
int fun(STU *std, STU *k, inf year)
{int i, n=0;
for(i=0; i<N; i++)
/**********found**********/
if(______==year)
/**********found**********/
k[n++]=______;
/**********found**********/
return(______);
}
main()
{STU std[N]={{1,1984,2,15}, {2,1983,9,21}, {3,1984,9,1}, {4,1983,7,15}, {5,1985,9,28}, {6,1982,11,15}, {7,1982,6,22}, {8,1984,8,19}};
STU k[N]; int i, n, year;
printf("Enter a year:");
scanf("%d",
n=fun{std, k, year);
if(n==0)
printf("/nNo person was born in %d/n", year);
else
{printf("/nThese persons were born in %d/n", year);
for{i=0; i<n; i++)
printf("%d %d-%d-%d/n", k[i].num, k[i].year, k[i].month, k[i].day);}
}
填空题深度为5的满二叉树有{{U}} 【2】 {{/U}}个叶子结点。
填空题以下程序运行后的输出结果是______。 struct NODE int k; struct NODE*link; ; main() struct NODEm[5],*p=m,*q=m+4; int i=0: while(p!=q) p->k=++i;p++;q->k=1++;q--; q->k=i: for(i=0;i<5;i++)printf("%d",m[i].k); printf("/n");
填空题设y是int型变量,请写出y为奇数的关系表达式 【6】 。
填空题下列给定程序中函数fun的功能是:计算正整数num各位上的数字之积。
例如,若输入252,则输出应该是20。若输入202,则输出应该是0。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。
试题程序 #include
<stdio.h> #include <conio.h> long fun long
num) { /* * * * *found* * * * * / long
k; do { k*=num% 10; /* * * *
*found* * * * * / num /=10;
}while(num); return(k); }
main() { long n; printf("please enter a
number:"); scanf("% ld", printf("/n%
ld/n", fun(n)); }
填空题下列给定程序中,函数fun()的功能是:从形参ss所指字符串数组中,删除所有串长超过k的字符串,函数返回剩余字符串的个数。SS所指字符串数组中共有N个字符串,且串长小于M。
请在标号处填入正确的内容,使程序得出正确的结果。 注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构。
试题程序 #include
<stdio.h> #include <string.h> #define N
5 #define M 10 int fun(char (* ss)[M], int
k) { int i, j=0, len; for(i=0; i<______;
i++) { len=strlen (ss[i];
if(len<=______) strcpy(ss[j++], ______);
} return j; }
main() { char x[N][M]={"Beijing", "Shanghai", "Tianjin",
"Nanjing", "Wuhan"}; int i, f; printf("/nThe
original string/n/n"); for(i=0; i<N; i++)puts(x[i]);
printf("/n"); f=fun(x, 7); printf("The
string witch length is less than or equal to 7:/n"); for(i=0;
i<f; i++) puts(x[i]); printf("/n"); }
填空题阅读下面程序,则执行后的输出结果是______。 #include"stdio.h" main() int x, y, 2; x=1; y=2; z=3; if(x>y)if(x>z)printf("%d", x); else printf("%d", y); printf("%d/n",z);
填空题以下程序的功能是从键盘上输入一行字符,存入一个字符数组中,然后输出该字符串。请填空。 main() char str[81],*sptr; int i; for(i=0;i<80;i++) str[i]=getchar(); if(str[i]=='/n')break; str[i]= 【10】 ; sptr=str1 while(* sptr)putchar(* sptr 【11】 );
填空题以下程序运行后的输出结果是______。 main() int m=011,n=11; printf("%d%d/ff",++m,n++);
填空题有以下程序 #include <stdio.h> int a=5; void fun(int b) int a=10; a+=b;printf("%d",a); main() int c=20; fun(c);a+=c;printf("%d/n",a); 程序运行后的输出结果是______。
填空题以下程序段打开文件后,先利用fseek函数将文件位置指针定位在文件末尾,然后调用 ftell函数返回当前文件位置指针的具体位置,从而确定文件长度。请填空。 FILE * myf;long f1; myf= 【20】 ("test.t","rb"); fseek(myf,0,SEEK END) ; f1=ftell(myf); fclose(myf); printf("%d/n",f1);
填空题下述程序在数组中同时查找最大元素下标和最小元素下标,分别存放在main()函数的变量max和min中,请填空。
试题程序 #include
<stdio.h> void find(int*a, int n, int*max, int*min)
{ int i; *max=*min=0; for(i=1; i<n;
i++) if(a[i]>a[*max]) ______;
else if(a[i]<a[*min]) ______;
} main() { int a[]={5,8,7,6,2,7,3};
int max, min; find(_______);
printf("/n% d, % d", max, min); }
