填空题以下程序的输出结果是【 】。
main()
{int a[3][3]={{1,2,9},{3,4,8},{5,6,7}},i,S=0;
for(i=0;i<3;i++)S+=a[i][i]+a[i][3-i-1];
printf("%d\n",S);
}
填空题有以下程序: #include <stdio.h> main() char ch1,ch2;int n1,n2; ch1=getchar();ch2=getehar(); n1=ch1-'0'; n2=n1*10+(ch2-'0'); printf("%d/n",n2); 程序运行时输入:12<回车>,执行后的输出结果是 【9】 。
填空题以下程序段打开文件后,先利用fseek函数将文件位置指针定位在文件末尾,然后调用ftell函数返回当前文件位置指针的具体位置,从而确定文件长度,请填空。
FILE*myf; long f1;
myf={{U}} 【20】 {{/U}}("test,t","rb");
fseek(myf,(),SEEK_END) ;f1+ftell(myf);
fclose(myf);
printf("%1d/n",f1);
填空题下列给定函数中,函数fun的功能是:统计字符串中各元音字母(即A、E、I、O、U)的个数。注意:字母不分大小写。
例如,输入“This is a boot”,则应输出是1 0 2 2 0。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdlib.h>
#include<conio.h>
#include<stdio.h>
/**********found**********/
fun(char *s, int num[5])
{
int k, i=5;
for(k=0; k<i; k++)
/**********found**********/
num[i]=0;
for(;*s; s++)
{
i=-1;
/**********found**********/
switch{s)
{
case"a":case"A":{i=0; break;}
case"e":case"E":{i=1; break;}
case"i":case"I":{i=2; break;}
case"o":case"O":{i=3; break;}
case"u":case"U":{i=4; break;}
}
if{i>=0)
num[i]++;
}
}
void main()
{
char s1[81]; int num1[5], i;
system("CLS");
printf("/nPlease enter a string:");
gets{s1);
fun(s1, num1);
for(i=0; i<5; i++)
printf("%d", num1[i]);
printf("/n");
}
填空题以下程序的功能是将字符串s中所有小写字母'a'删去,请填空。 #include<stdio.h> main() char s[]="absuWWUDJFKFLaaakdK"; int i,j; for(i=j=0;s[i]!='/0';i++) if( ) s[j++]=s[i]; s[j]='/0'; printf("%s",s);
填空题在计算机软件系统的体系结构中,数据库管理系统位于用户和 【5】 之间。
填空题若变量a,b已定义为int类型并分别赋值21和55,要求用printf函数以a=21,b=55的形式输出,请写出完整的输出语句行: 【14】 。
填空题给定程序中,函数fun的功能是:找出形参s所指字符串中出现频率最高的字母(不区分大小写),并统计出其出现的次数。
例如,形参s所指的字符串为:abcAbsmaxless,程序执行后的输出结果为:
letter"a":3times
letter"s":3times
请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
注意:不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
#include<string.h>
#include<ctype.h>
void fun(char * s)
{int k[26]={0},n,i,max=0;
char ch;
while(*s)
{if(isalpha(*s)){
/*********found*********/
ch=tolower(______);
n=ch-"a";
/*********found*********/
k[n]+=______;
}
s++;
/*********found*********/
if(max<k[n])max=______;
}
printf("/nAfter count:/n");
for(i=0;i<26;i++)
if(k[i]==max)
printf("/nletter"%c":%d times/n",i+"a",k[i]);
}
main()
{char s[81];
printf("/nEnter a string:/n/n");
gets(s);
fun(s);
}
填空题有下列程序:
#include<stdio.h>
main()
{ char c;
while((c=getchar())!=',')putchar(++c);
}
程序运行时,如果从键盘输入:A,B,<CR>,则输出结果为______。
填空题以下程序的定义语句中,x[1]的初值是______,程序运行后输出的内容是______。 #include <stdio.h> main() int x[]=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,*p[4],i; for(i=0;i<4;i++) p[i]= printf("/n");
填空题下列程序的运行结果为{{U}} 【14】 {{/U}}。
#include<stdio.h>
#include<string.h>
{ int a; char b[10]; double c; };
void f (struct A *t);
main()
{ struct A a={1001,"ZhangDa",1098.0};
f( printf("%d,%s,%6.lf/n",a.a,a.b,a.C);
}
void f(struct A*t)
{ strcpy(t->b, "ChangRong");}
填空题假设在当前盘的当前目录下有两个文件A.TXT和B.TXT,现在要将文件B.TXT合并连接到文件A.TXT的后面。若使用COPY命令,则完整的命令为【 】。
填空题请补充main()函数,该函数的功能是:把文本文件text2中的内容追加到文本文件text1的内容之后。
例如,文件text2的内容为“I"m very happy!”,文件text1的内容为“I"m a girl,”,追加之后文件text1的内容为“I"m a girl, I"m very happy”。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在函数main()的横线上填入所编写的若干表达式或语句。
试题程序:
#include<stdlib.h>
#include<stdio.h>
#include<conio.h>
#define M 80
void main()
{
FILE*fp, *fp1, *fp2;
int i;
char c[M], ch;
system("CLS");
if((fp=fopen("text1.dat", "r"))==NULL)
{
printf("file text1 cannot be opened/n");
exit(0);
}
printf("/n text1 contents are: /n/n");
for(i=0; (ch=fgetc(fp))!=EOF; i++)
{
c[i]=ch;
putchar(c[i]);
}
fclose(fp);
if((fp=fopen("text2.dat", "r"))==NULL)
{
printf("file text2 cannot be opened/n");
exit(0);
}
printf("/n/n/nB contents are: /n/n");
for(i=0; (ch=fgetc(fp))!=EOF; i++)
{
d[i]=ch;
putchar(c[i]);
}
fclose(fp);
if((fp1=fopen("text1.dat", "a")) ______ (fp2=fopen("text2.dat", "r")))
{
while((ch=fgetc(fp2))!=EOF)
______;
}
else
{
printf("Can not open text1 text2!/n");
}
fclose(fp2);
fclose(fp1);
printf("/n***new text1 contents***/n/n");
if((fp=fopen("text1.dat", "r"))==NULL)
{
printf("file text1 cannot be opened/n"):
exit(0);
}
for(i=0; (ch=fgetc(fp))!=EOF; i++)
{
c[i]=ch;
putchar(c[i]);
}
______;
}
填空题以下程序的输出结果是______。 #include<stdio.h> int fun(int x) static int t=0; return(t+=x); main( ) int s,i; for(i=1;i<=5;i++) s=fun(i); prinff("%d/n",s);
填空题给定程序中,函数fun的功能是:将a所指3×5矩阵中第k列的元素左移到第0列,第k列以后的每列元素依次左移,原来左边的各列依次绕到右边。
例如,有下列矩阵:
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
若k为2,程序执行结果为
3 4 5 1 2
3 4 5 1 2
3 4 5 1 2
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
给定源程序如下。
#include<stdio.h>
#define M 3
#define N 5
void fun(int(*a)[N],int k)
{ int i,j,p,temp;
/*********found********/
for(p=1;p<=______;p++)
for(i=0;i<M;i++)
{ temp=a[i][0];
/***********found*********/
for(j=0;j<______;j++)
a[i][j]=a[i][j+1];
/********found***********/
a[i][N-1]=______;
}
}
main()
{ int x[M][N]={ {1,2,3,4,5},{1,2,3,4,5},{1,2,3,4,5}},i,j;
printf("The array before moving:/n/n");
for(i=0;i<M;i++)
( for(j=0;j<N;j++)printf("%3d",x[i][j]);
printf("/n");
}
fun(x,2);
printf("The array after moving:/n/n");
for(i=0;i<M;i++)
{ for(j=0;j<N;j++)printf("%3d",x[i][j]);
printf("/n");
}
}
填空题请补充fun()函数,该函数的功能是求m的阶乘。不要改动主函数main()与他函数中的任何内容,仅在fun()函数的横线上填写所需的若干表达式或语句。 注意:部分源程序如下。 #include<stdio.h> long fun(int m) if (1) return(m*fun (2) ); return (3) ; main() printf("8!=%ld/n",fun(8));
填空题以下函数fun的功能是返回str所指字符串中以形参c中字符开头的后续字符串的首地址,例如,str所指字符串为Hello!,c中的字符为e,则函数返回字符串为ello!的首地址。若str所指字符串为空串或不包含c中的字符,则函数返回NULL。请填空。 char*fun(char*str,char c) int n=0;char*p=str; if(P!=NULL) while(p[n]!=c&&p[n]!='/0')n++; if(p[n]=='/0')return NULL; return______;
填空题若fp已下确定义为一个文件指针,d1.dat 为二进制文件,请填空,以便为“读”而打开此文件:fp= fopen({{U}} 【20】 {{/U}});。
填空题给定程序中,函数fun的功能是:用函数指针指向要调用的函数,并进行调用。规定在______处使f指向函数f1,在______处使f指向函数f2。当调用正确时,程序输出:
x1=5.000000,x2=3.000000,x1*x1+x1*x2=40.000000。
注意:不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
double f1(double x)
{return x*x;}
double f2(double x,double y)
{return x*y;}
double fun(double a,double b)
{
/*********found*********/
______(*f)();
double r1,r2;
/*********found*********/
f=______;
r1=f(a);
/*********found*********/
f=______;
r2=(*f)(a,b);
return r1+r2;
}
main()
{double x1=5,x2=3,r;
r=fun(x1,x2);
printf("/nx1=%f,x2=%f,
x1*x1+x1*x2=%f/n",x1,x2,r);
}
填空题现有两个C程序文件T18.c和myfun.c同在TC系统目录(文件夹)下,其中T18.c文件如下:
#include<stdio.h>
#include"myfun.c"
maim()
{fun();printf("/n");}
myfun.c文件如下:
void fun()
{char s[80],c;int n=0;
while((c=getchar())!='/n')s[n++]=c;
n--;
while(n>=0)printf("%c",s[n--]);
当编译连接通过后,运行程序T18时,输入Thank!,则输出结果是_______。
