填空题给定程序中,函数fun的功能是:将自然数1~10以及它们的平方根写到文本文件中,然后再顺序读出显示在屏幕上。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
#include<math.h>
#include<stdio.h>
int fun(char*fname)
{FILE*fp;int i,n;float x;
if((fp=fopen(fname,"w"))==NULL)return 0;
for(i=1;i<=10;i++)
/**********found**********/
fprintf(______,"%d%f/n",i,sqrt((double)i));
printf("/nSucceed!!/n");
/**********found**********/
______;
printf("/nThe data in file:/n");
/**********found**********/
if((fp=fopen(______,"r"))==NULL)
return 0;
fscanf(fp,"%d%f",
while(!feof(fp))
{printf("%d %f/n",n,x);fscanf(fp,"%d%f",
}
fclose(fp);
return 1;
}
main()
{char fname[]="myfile3.txt";
fun(fname);
}
填空题以下程序运行后的输出结果是 【11】 。 main() int i,n[]=0,0,0,0,0; for(i=1;i<=4;i++) n[i]=n[i-1]*2+1; printf("%",n[i]);
填空题若有下列定义和语句:
char*s1="12345",*s2="1234";
printf("%d/n",strlen(strcpy(s1,s2)));
则输出结果为______。
填空题函数sstrcmp()的功能是对两个字符串进行比较。当s所指字符串和t所指字符串相等时,返回值为0;当s所指字符串大于t所指字符串时,返回值大于0;当s所指字符串小于t所指字符串时,返回值小于0(功能等同于库函数strcmp())。请填空。
#include <stdio.h>
int sstrcmp(char *s,char *t)
{
while(*s t++;}
rerurn {{U}}【16】 {{/U}};
}
填空题以下函数把b字符串连接到a字符串的后面,并返回a中新字符串的长度。请填空。 strcen(char a[],char b[]) int num=0,n=0; while(*(a+num)! = 【15】 )num++; while(b[n])*(a+num)=b[n];num++; 【16】 ; return(num);
填空题以下程序从终端读入数据到数组中,统计其中正数的个数,并计算它们之和。请填空。
main( )
{ int i,a[20],sum,count;
sum=count=0;
for(i=0;i<20;i++= scanf("%d",【 】);
fro(i=0;i<20;i++=
{ if(a>0)
{ count++;
sum+=【 】;
}
}
printf("sum=%d,count=%d\n",sum,count);
=
填空题给定程序中,函数fun的功能是计算下式直到,并把计算结果作为函数值返回。例如:若形参e的值为1e-3,函数的返回值为0.551690。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。不得增行或删行,也不得更改程序的结构!给定源程序:#include<stdio.h>doublefun(doublee){inti,k;doubles,t,x;s=0;k=1;i=2;/**********found**********/x=________/4;/**********found**********/while(x________e){s=s+k*x;k=k*(-1);t=2*i;/**********found**********/x=________/(t*t);i++;}returns;}main(){doublee=1e-3;printf("/nTheresultis:%f/n",fun(e));}
填空题请补充函数proc(),该函数的功能是把数组arr中的奇数元素按原来的先后顺序放在原数组后面。 例如,原始数组为33 67 42 58 25 76 85 16 41 55,则输出结果为42 58 76 16 33 67 25 85 41 55。 注意:部分源程序已给出。 请勿改动主函数main和其他函数中的任何内容。 试题程序: #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( (1) ) bb[k++]=arr[i]; else arr[j++]=arr[i]; for(i=0; i<k; (2) ) 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的功能是:统计person所指结构体数组中所有性别(sex)为M的记录的个数,存入变量n中,并作为函数值返回。请填空。
#include <stdio.h>
#define N 3
typedef struct
{ int num; char nam[10]; char sex;} SS;
int fun(SS person[])
{ int i,n=0;
for(i=0; i<N; i++)
if({{U}} 【14】 {{/U}}=='M') n++;
return n;
}
main()
{ SS W[N]={{1,"AA",'F'},{2,"BB",'M'},{3,"CC",'M'}}; int n;
n=fun(W); printf("n=%d/n", n);
}
填空题有以下程序,若运行时从键盘输入:18,11<回车>,则程序的输出结果是______。main () int a, b; printf("Enter a, b:"); scanf("%d, %d", while(a!=b) while(a>b)a-=b; while(b>a)b-=a; printf("%3d%3d/n",a,b);
填空题下列程序运行时,若输入1abcedf2df<回车>,则输出结果为______。 #include<stdio.h> main() char a=0, ch; while((ch=getchar())!='/n') if(a%2!=0 a++; putchar(ch); printf("/n");
填空题下面程序功能是求两个浮点数的和,请把程序补充完整。
#include<stdio.h>
void add(double x, double y, double*p)
{
______=x+y;
}
int main()
{
double a=55.44, b=44.55;
double k;
add(a, b, ______);
printf("%.2lf/n", k);
return 0;
}
填空题下列给定程序中函数fun的功能是:在字符串的最前端加入n个*号,形成新串,并且覆盖原串。
字符串的长度最长允许为79。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
#include<string.h>
void fun(char s[],int n)
{
char a[80],*p;
int i;
/*********found*********/
s=p;
for(i=0;i<n;i++)a[i]="*";
do
{a[i]=*p;
i++;
}
/*********found*********/
while(*p++)
a[i]=0;
strcpy(s,a);
}
main()
{int n;char s[80];
printf("/nEnter a string:");
gets(s);
printf("/nThe string"%s"/n",s);
printf("/nEnter n(number of*):");
scanf("%d",
fun(s,n);
printf("/nThe string after insert:"%s"/n",s);
}
填空题有以下程序:
fun(int a,int b)
{ if(a>b)return(a);
else return(b);
}
main()
{ int x=3,y=8,z=6,r;
r=fun(fun(x,y),2*z);
printf("%/d/n",r);
}
程序运行后的输出的结果是{{U}} 【7】 {{/U}}。
填空题若从键盘输入58,则以下程序输出的结果是______。 main ) int a; scanf ("%d" , if (a>50) print f ("%d" ,a); if (a>40) print f ("%d" ,a); if (a>30) printf ("%d" ,a);
填空题有以下程序: #define N 20 fun(int a[],int n,int m) inf i,j; for(i=m;i>n;i--)a[i+1]=a[i]; main() int i,a[N]=(1,2,3,4,5,6,7,8,9,10); fun(a,2,9); for(i=0;i<5;i++)printf(“%d”,a[i]); 程序运行后的输出结果是______。
填空题下列给定程序中,函数fun的功能是:将s所指字符串中位于奇数位置的字符或ASCII码值为偶数的字符依次放入t所指数组中。例如,字符串中的数据为“AABBCCDDEEFF”,则输出应当是“ABBCDDEFF”。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:
#include<conio.h>
#include<stdio.h>
#include<string.h>
#define N 80
void fun(char*s,char t[])
{
int i,j=0;
for(i=0;i<(int)strlen(s);i++)
/*********found*********/
if(i%2
/*********found*********/
t[i]="/0";
}
main()
{
char s[N],t[N];
printf("/nPlease enther string s:");
gets(s);
fun(s,t);
printf("/nThe result is:%s/n",t);
}
填空题以下程序运行后的输出结果是______。
main()
{ int i,n[]={0,0,0,0};
for(i=1;i<=3;i++)
{n[i]=n[i-1]*3+2;
printf("%d",n[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<回车> 则运行结果为 【11】 。
填空题在DOS环境下,表示打印机的设备文件名是【 】。
