填空题给定程序中,函数fun的功能是:把形参s所指字符串中最右边的n个字符复制到形参t所指字符数组中,形成一个新串。若s所指字符串的长度小于n,则将整个字符串复制到形参t所指字符数组中。
例如,形参s所指的字符串为:abcdefgh,n的值为5,程序执行后t所指字符数组中的字符串应为:defgh。
请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
注意:不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
#include<string.h>
#define N 80
void fun(char*s,int n,char*t)
{int len,i,j=0;
len=strlen(s);
/*********found*********/
if(n>=len)strcpy(______);
else {
/*********found*********/
for(i=len-n;i<=len-1;i++)
t[j++]=______;
/*********found*********/
t[j]=______;
}
}
main()
(char s[N],t[N];int n;
printf("Enter a string:");
gets(s);
printf("Enter n:");
scanf("%d",
fun(s,n,t);
printf("The string t:");
puts(t);
}
填空题下列程序的功能是把从终端读入的文本(用@作为文本结束标志)输出到一个名为 bi.dat的新文件中。请填空。 #include "stdio.h" FILE *fp; char ch; if((fp=fopen("bi.dat","w"))==NULL)exit(0); while(______)fputc(ch,fp); ______;
填空题有以下程序: prt[int *m,int n) int i; for(i=0;i<n;i++) m[i]++; main() int a[]=1,2,3,4,5,i; prt(a,5); for(i=0;i<5;i++) printf("%d,",a[i]); 程序运行后输出结果是______。
填空题以下程序的运行结果是 【6】 。 #include<stdio.h> #define MAX(a,b) (a>b?a:b)+1 main() int i=6,j=8,k; printf("%d/n",MAX(i,j));
填空题若从键盘输入24,则以下程序输出的结果是______。 #include<stdio.h> main() int a; scanf("%d", if(a>20) printf("%d",a); if(a>10) printf("%d",a); if(a>5) printf("%d",a);
填空题请补充main函数,该函数的功能是:从一个字符串中截取前面若干个给定长度的子字符串。其中,str1指向原字符串,截取后的字符存放在str2所指的字符数组中,n中存放需截取的字符个数。
例如:当str1=“cdefghij”,然后输入4,则str2=“cdef”。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。
试题程序:
#include<stdio.h>
#include<conio.h>
#define LEN 80
main()
{
char str1[LEN],str2[LEN];
int n,i;
clrscr();
printf("Enter the string:/n");
gets(str1);
printf "Enter the position of the string deleted:");
scanf({{U}} 【1】 {{/U}});
for(i=0;i<n;i++)
{{U}}【2】 {{/U}}
str2[i]=‘/0’;
printf("The new string is:%s/n",{{U}} 【3】 {{/U}});
}
填空题函数fun的功能是:计算的前n项。若x=2.5,函数值为12.182340。请在程序的下划线处填入正确的内容,使程序得出正确的结果。注意:部分源程序给出如下。不得增行或删行,也不得更改程序的结构。试题程序:#include<stdio.h>doublefun(doublex,intn){doublef,t;inti;f=1.0;/**********found**********/t=________;/**********found**********/for(i=________;i<n;i++){/**********found**********/t*=x/________;f+=t;}returnf;}main(){doublex,y;x=2.5;y=fun(x,12);printf("/nTheresultis:/n");printf("x=%-12.6fy=%-12.6f/n",x,y);}
填空题在树形结构中,树根结点没有{{U}} 【2】 {{/U}}。
填空题程序通过定义学生结构体变量,存储了学生的学号、姓名和三门课的成绩。所有学生数据均以二进制方式输出到文件中。函数fun的功能是重写形参filename所指文件中最后一个学生的数据,即用新的学生数据覆盖该学生原来的数据,其它学生的数据不变。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
不得增行或删行,也不得更改程序的结构!
给定源程序:
#include<stdio.h>
#define N 5
typedef struct student{
long sno;
char name[10];
float score[3];
}STU;
void fun(char*filename,STU n)
{FILE *fp;
/**********found**********/
fp=fopen(______,"rb+");
/**********found**********/
fseek(______,-(long)sizeof(STU),SEEK_END);
/**********found**********/
fwrite(
fclose(fp);
}
main()
{STU t[N]="10001,"MaChao",91,92,77},{10002,"CaoKai",75,60,88},
{10003,"LiSi",85,70,78},{10004,"FangFang",90,82,87},
{10005,"ZhangSan",95,80,88}};
STU n={10006,"ZhaoSi",55,70,68},ss[N];
int i,j; FILE*fp;
fp=fopen("student.dat","wb");
fwrite(t,sizeof(STU),N,fp);
fclose(fp);
fp=fopen("student.dat","rb");
fread(ss,sizeof(STU),N,fp);
fclose(fp);
printf("/nThe original data:/n/n");
for(j=0;j<N;j++)
{printf("/nNo:%ld Name:%-8s Scores:",ss[j].sno,ss[j].name);
for(i=0;i<3;i++)
printf("%6.2f".ss[j].sCore[i]);
printf("/n");
}
fun("student.dat",n);
printf("/nThe data after modifing:/n/n");
fp=fopen("student.dat","rb");
fread(ss,sizeof(STU),N,fp);
fclose(fp);
for(j=0;j<N;j++)
{printf("/nNo:%ld Name:%-8s Scores:",ss[j].sno,ss[j].name);
for(i=0;i<3;i++)
printf("%6.2f",ss[j].score[i]);
printf("/n");
}
}
填空题给定程序MODI1.C中函数fun的功能是:找出一个大于形参m且紧随m的素数,并作为函数值返回。
请改正程序中的错误,使程序能输出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
文件MODI1.C内容如下:
#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);
}
}
void main{{U}} {{/U}}{
int m,n;
printf("Please enter an integer number:/n"):
scanf("%d",&m);
n=fun(m);
printf("The prime number after m:/n");
printf("%d/n",n);
}
填空题若输入this test terminal,以下程序的输出结果为:terminal test this。请填空。 #define MAXLINE 20 【10】 int i; char * pstr[3],str[3][MAXLINE]; for(i=0;i<3;+ +)pstr[i]=str[i]; for(i=0;i<3;i + +)scanf("%s",pstr[1]); sort(pstr); for(i=0;i<3;i+ +)prntf("%s",pstr[i]); sort( 【11】 ) char * pstr[3]; int i,j; char * p; for(i=0;i<3;i+ +) for(j=i + 1;j<3;j + +) if(strcmp(* (pstr+i,* (pstr+j)>0 p=* (pstr + i); * (pstr + i= 【12】 ; * (pstr +j)=p;
填空题45.{{U}} {{/U}}是数据库设计的核心。
填空题下面程序
main()
{ int i,j,m,n;
i=5;
j=10;
m=++i;
n=j++;
printf("%d,%d,%d,%d",i,j,m,n);
}
运行后,i,j,m,n的值分别是_______。
填空题给定程序中,函数fun的功能是:找出形参s所指字符串中出现频率最高的字母(不区分大小写),并统计出其出现的次数。
例如,形参s所指的字符串为:abcAbsmaxless,程序执行后的输出结果为:
letter "a" : 3 times
letter "s" : 3 times
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
不得增行或删行,也不得更改程序的结构!
给定源程序:
#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":%dtimes/n",i+"a",k[i]);
}
main()
{char s[81];
printf("/nEnter a string:/n/n");gets(s);
fun(s);
}
填空题fun函数的功能是:首先对a所指的N行N列的矩阵,找出各行中的最大数,再求这 N个最大值中的最小的那个数作为函数值返回。请填空______。 #include <stdio.h> #define N 100 int fun(int(*a)[N]) int row, col,max,min; for(row=0;row<N;row++) for(max=a[row][0],col=1; col<N;col++) if( ) max=a[row][col]; if(row==0) min=max; else if( ) min=max; return min;
填空题若有定义int a=10,b=9,c=8;,接着顺序执行下列语句,变量b中的值是{{U}} 【6】 {{/U}}。
c=(a-=(b-5));
c=(a%11)+(b=3);
填空题函数fun的功能是:从三个形参a,b,c中找出中间的那个数,作为函数值返回。
例如,当a=3,b=5,c=4时,中间的数为4。 注意:部分源程序已给出。
请勿改动主函数main和其他函数中的任何内容,仅在fun函数的横线上填入所编写的若干表达式或语句。
试题程序: #include<stdio.h> int fun(int a,int
b,int c) { int t;
t=(a>b)?(b>c?b:(a>c?c:{{U}} {{U}} 1 {{/U}} {{/U}})):
((a>c)?{{U}} {{U}} 2 {{/U}} {{/U}}:((b>c)?c:{{U}}
{{U}} 3 {{/U}} {{/U}})); return t;
} void main() { int
a1=3,a2=5,a3=4,r; r=fun(a1,a2,a3);
printf("/nThe middle number is:%d/n",r); }
填空题以下程序的功能是将文件stud_data中第i个学生的姓名、学号、年龄、性别输出,请把程序补充完整。
#include<stdio.h>
struct student_type
{
char name[10];
int num;
int age;
char sex;
}stud[10];
int main()
{
int i;
FILE ______;
if((fp1=fopen("stud_data", "rb"))==NULL)
{
printf("error!/n");
exit(0);
}
scanf("%d",
fseek(______);
fread([______, sizeof(struct student_type), 1, fp1);
printf("%s%d%d%c/n", stud[i].name, stud[i].num, stud[i].age, stud[i].sex);
fclose(fp1);
return 0;
}
填空题下面程序的功能是:计算1~10之间的奇数之和与偶数之和,请填空。
#include<stdio.h>
main()
{ int a,b,c,i;
a=C=0;
for(i=0;i<=10;i+=2)
{a+=i;
______;
c+=b;}
printf("偶数之和=%d/n",a);
printf("奇数之和=%d/n",c-11);}
