填空题有以下程序
#include
mian()
{int arr[]={1,3,5,7,2,4,6,8{, i, start;
Scanf(“%d”,
For(i=0,i,则输出结果为( )。
填空题有如下程序段:
main(int argc,char *argv[])
{ int n,i=0;
while(argv[1][i]!='/0')
{n=fun();i++;}
printf("%d/n",n*argc);
}
int fun()
{ static int s=0;
s+=1;
return s;
}
假设程序经编译、连接后生成可执行文件exam,exe,若键入如下命令行:
exam l23<回车>
则运行结果为{{U}} 【11】 {{/U}}。
填空题没有char a,b;,若要通过a&b运算屏蔽掉a中的其他位,只保留第2位和笫8位(右起为第1位),则b的二进制是 【8】 。
填空题以下程序将两个数从小到大输出。请填空。
{ float a,b,{{U}} {{U}} {{/U}}{{/U}};
scanf(,{{U}}{{U}} {{/U}}{{/U}}& a,& b);
if(a>b)
{t=a;
{{U}} {{U}} {{/U}}{{/U}};
b=t;
printf("%5.2f%5.2f/n",a,b);
}
填空题以上程序的输出结果是______。
#define MIN(x,y) (x)<(y)?(x):(y)
main()
{ int a=5,b=2,c=3,d=3,t:
t=MIN(a+b,c+d)*10;printf("%d/n" t);}
填空题设变量a和b已正确定义并赋初值。请写出a-=a+b等价的赋值表达式______。
填空题下列给定程序中,函数fun()的功能是:输出M行N列整数方阵,然后求两条对角线上的各元素之和,返回此和数。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构. 试题程序: #include <conio.h> #include <stdio.h> #define M 5 /**********************************/ iht 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++) /**********************************/ printf("%4f",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; clrscr(); printf("/nThe sum of all elements on 2 diagnals is %d",fun(M, aa));
填空题下面程序的运行结果是 【11】 。 #include<stdio.h> #define SIZE 12 main() char s[SIZE];int i;for(i=0;i<SIZE;i++) s[i]='A'+i+321; sub(s,7,SIZE-1); for(i=0;i<SIZE;i++) printf("%c",s[i]); printf("/n"); sub(char*a,int tl,int t2) char ch; while(t1<t2) ch=*(a+t1); *(a+t1)=*(a+t2); *(a+t2)=ch; t1++;t2--;
填空题请补充函数fun(),该函数的功能是:把字符串str中的字符按字符的ASCⅡ码降序排列,处理后的字符串仍然保存在原串中,字符串及其长度作为函数参数传入。
例如,如果输入“cdefgh”,则输出为“hgfedc”。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。
试题程序:
#include <stdio.h>
#define N 80
void fun (char s [], int n)
{
int i, j;
char ch;
for (i=0; i<n; i++)
for(j={{U}} {{U}} {{/U}}{{/U}};j<n;j++)
if (s[i]<s [j])
{
ch=s [j];
{{U}} {{U}} {{/U}}{{/U}};
s [i] =ch;
}
main ( )
{
int i=0, strlen=0;
char str [N];
clrscr ();
printf ("/nInput a string: /n");
gets (str);
while (str [i] !=' /0')
{
strlen++;
i++;
}
fun (str, strlen);
printf ("/n***display string ***/n");
puts (str);
}
填空题在对文件进行操作的过程中,若要求文件的位置回到文件的开头,应当调用的函数是 【9】 函数。
填空题有以下程序: # define f(x)x*x main() int i; i=f(4+4)/f(2+2); printf("% d//n", i); 执行后的输出结果是{{U}} {{/U}}。
填空题以下程序运行后的输出结果是{{U}} 【7】 {{/U}}。
#define S(x) 4*x*x+1
main()
{ int i=6,j=8;
printf("%d/n",s(i+j));
}
填空题下面rotate函数的功能是:将n行n列的矩阵A转置为A',例如:#defineN4voidrotate(inta()[N]){inti,j,t;for(i=0;i<N;i++)for(j=0;{{U}}【13】{{/U}};j++){t=a[i][j];{{U}}【14】{{/U}};a[j][i]=t;}}
填空题下面程序调用fun函数动态分配两个整型存储单元,并通过形参传回这两个整型存储单元的地址给 s1和s2,将程序补充完整。
┇
main()
{
int*s1,*s2;
┇
fun({{U}} 【11】 {{/U}});
┇
}
int fun({{U}} 【12】 {{/U}});
{
*p=(int *)malloc(sizeof(int));
*q=(int *)malloc(sizeof(int));
}
填空题下列程序的运行结果是{{U}} {{U}} {{/U}} {{/U}}。
main()
{ union EXAMPLE
{ struct
{ int x;int y;}in;
int a;
int b;
} e:
e.a=1;e.b=2;
e.in.x=e.a*e.b;
e.in.y=e.a+e.b;
printf("%d,%d/n",e.in.x,e.in.y);
}
填空题在索引查找或分块查找中,首先查找 【2】 ,然后再查找相应的 【3】 ,整个索引查找的平均查找长度等于查找索引表的平均查找长度与查找相应子表的平均查找长度之和。
填空题请补充函数proc(),该函数的功能是把数组arr中的奇数元素按原来的先后顺序放在原数组后面。
例如,原始数组为“33 67 42 58 25 76 85 16 41 55”,则输出结果为“42 58 76 16 33 67 25 85 41 55”。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的横线上填入所编写的若干表达式或语句。
试题程序:
#include<stdlib.h>
#include<stdio.h>
#define M 10
void proc(int arr[])
{
int i, j=0, k=0;
int bb[M];
for(i=0; i<M; i++)
{
if(______)
bb[k++]=arr[i];
else
arr[j++]=arr[i];
}
for(i=0; i<k; ______)
arr[j]=bb[i];
}
void main()
{
int i;
int arr[M]={33, 67, 42, 58, 25, 76, 85, 16, 41, 55};
system("CLS");
printf("/n***original list***/n");
for(i=0; i<M; i++)
printf("%4d", arr[i]);
proc(arr);
printf("/n***new list***/n");
for(i=0; i<M; i++)
printf("%4d", arr[i]);
}
填空题程序通过定义学生结构体变量,存储学生的学号、姓名和三门课的成绩。函数fun的功能是:对形参b所指结构体变量中的数据进行修改,并在主函数中输出修改后的数据。
例如,若b所指变量t中的学号、姓名和三门课的成绩依次是:10002、“ZhangQi”、93、85、87,修改后输出t中的数据应为:10004、“LiJie”、93、85、87。
请在下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
#include<string.h>
struct student{
long sno;
char name[10];
float score[3];
};
void fun(struct student *b)
{
/**********found**********/
b ______=10004;
/**********found**********/
strcpy(b ______, "LiJie");
}
main()
{struct student t=(10002, "ZhangQi", 93, 85, 87};
int i;
printf("/n/nThe original data:/n");
printf("/nNo:%ld Name:%s/nScores:", t.sno, t.name);
for(i=0; i<3; i++)
printf("%6.2f", t.score[i]);
printf("/n");
/**********found**********/
fun(______);
printf("/nThe data after modified:/n:);
printf("/nNo:%ld Name:%s/nScores:", t.sno, t.name);
for(i=0; i<3; i++)
printf("%6.2f", t.score[i]);
printf("/n");
}
填空题以下函数用来求出数组的最大元素在数组中的下标并存放在k所指的存储单元中。请填空。 #include<conio.h> #include<stdio.h> int fun(int *s,int t,int *k) int i; *k=0; ______ if(s[*k]<s[i])*k=i; return______; 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]);
填空题以下程序的功能是调用函数fun计算:m=1-2+3-4+…+9-10,并输出结果。请填空。 int fun(int n) int m=0,f=1,i; for(i=1;i<=n;i++) m+=i*f; f= 【11】 ; return m; main() printf("m=%d/n", 【12】 );
