C语言程序填空

2019-07-29 11:11

功能:当输入“2,5”的时候输出为“2 5 5” #include #define max 100 main() {

int f[max],i,j,k,m;

scanf(\

/***********SPACE***********/ for(i=0;i<=【?】;i++)f[i]=0;

/***********SPACE***********/ f[【?】]=1;

for(i=k;i<=m;i++)

/***********SPACE***********/ for(j=i-k;j<=i-1;j++)f[i]【?】f[j]; printf(\}

答案:1). m;2). k-1 或 k -1;3). += 或 =1+ 功能:用二分法求方程2X^3+4X^2+3X-6=0在(-10,10)之间的根,其中 X^n代表X的n次方。

# include main() {

float x0,x1,x2,fx0,fx1,fx2; do {

printf(\scanf(\fx1=x1*((2*x1-4)*x1+3)-6; fx2=x2*((2*x2-4)*x2+3)-6;

/***********SPACE***********/ }while (fx1*fx2【?】); do {

x0=(x1+x2)/2;

fx0=x0*((2*x0-4)*x0+3)-6;

/***********SPACE***********/ if(fx0*fx1【?】) {

x2=x0; fx2=fx0; } else {

x1=x0; fx1=fx0; } }

/***********SPACE***********/ while(【?】>=1e-5); printf(\}

答案:1). >0; 2). <0 ;3). fabs(fx0)

功能:不用第三个变量,实现两个数的对调操作。

#include main() { int a,b;

scanf(\printf(\

/***********SPACE***********/ a= 【?】 ;

/***********SPACE***********/ b= 【?】 ;

/***********SPACE***********/ a= 【?】 ;

printf(\}

答案:1). a + b;2). a-b 3). a-b;

功能:对数组 A 中的N( 0 <N<100)个整数从小到大进行连续编号,输出各个元素的编号。要求不能改变数组A中元素的顺序,且相同的整数要具有相同的编号。例如:数组是: A=(5,3,4,7,3,5,6)则输出为:(3,1,2,5,1,3,4) main() {

int i,j,k,n,m=1,r=1,a[2][100]={0} ; printf(\scanf(\for(i=0 ; i

printf(\scanf(\}

/***********SPACE***********/ while(【?】)

{

for(i=0 ; i

/***********SPACE***********/ 【?】 ; k=i ;

for(j=i ; j

/***********SPACE***********/

if(a[1][j]==0 && a[0][j]

for(j=0 ; j

if(a[1][j]==0 && a[0][j]==a[0][k]) {

a[1][j]=a[1][k] ; m++ ; } }

for(i=0 ; i

printf(\}

答案:1). mm;2). break;3). k=j 功能:用等分法在有序的循环数组中,找到最小元素的位置。

int cyclic_min(int x[], int n) {

int left = 0; int right = n - 1; int mid;

/***********SPACE***********/ while (【?】) {

mid = (left + right)/2; if (x[mid] < x[right])

/***********SPACE***********/ 【?】; else

/***********SPACE***********/ 【?】; }

return left; }

#include

void main(void) {

int x[] = { 20, 23, 28, 35, 39, 40, 42, 8, 10, 15, 17, 19};

int n = sizeof(x)/sizeof(int); int loc, i;

printf(\printf(\printf(\Fashion :\\n\

for (i = 0; i < n; i++) printf(\loc = cyclic_min(x, n);

printf(\= %d\}

答案:1). left < right 或 right>left 2). right = mid;3). left = mid + 1 功能:以下程序的功能如(图1)。 #include #include

/***********SPACE***********/ float fun(【?】, int n) {

/***********SPACE***********/ 【?】;

float xa=0, s; for (j=0; j

/***********SPACE***********/

【?】;

for (j=0; j

s += (x[j]-xa)*(x[j]-xa)/n;

/***********SPACE***********/ 【?】; }

main ( ) {

float x[100] = {193.199, 195.673, 195.757, 196.051, 196.092,196.596,196.579, 196.763}; clrscr( );

printf(\}

答案:1). float x[] 或 float *x;2). int j

3). s = 0;4). return s 或 return(s) 功能:计算一元二次方程的根。 #include

/***********SPACE***********/ #include 【?】 main() {

float a,b,c,disc,x1,x2,realpart,imagpart; scanf(\printf(\

/***********SPACE***********/ if(【?】<=1e-6)

printf(\else

disc=b*b-4*a*c; if(fabs(disc)<=1e-6) printf(\roots:%-8.4f\\n\

/***********SPACE***********/ else if(【?】) {

x1=(-b+sqrt(disc))/(2*a); x2=(-b-sqrt(disc))/(2*a);

printf(\and %.4f\\n\} else {

realpart=-b/(2*a);

imagpart=sqrt(-disc)/(2*a); printf(\

printf(\printf(\} }

答案:1). ;2). fabs(a)

3). fabs(disc) > 1e-6 或 1e-6

功能:有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数 main() {

int number[20],n,m,i;

printf(\

scanf(\printf(\scanf(\for(i=0;i

scanf(\scanf(\

/***********SPACE***********/ move(【?】); for(i=0;i

printf(\printf(\}

/***********SPACE***********/

move(【?】) int n,m,array[20]; {

int *p,array_end;

/***********SPACE***********/ array_end=*(【?】);

for(p=array+n-1;p>array;p--)

/***********SPACE***********/ *p=*(【?】);

*array=array_end; m--;

if(m>0) move(array,n,m); }

答案:1). number,n,m ;2). array,n,m 3). array+n-1 或 array + n -1 4). p-1 或 p -1

功能:分别求出一批非零整数中的偶数、奇数的平均值,用零作为终止标记。 main() {

int x,i=0,j=0;

float s1=0,s2=0,av1,av2; scanf(\

/***********SPACE***********/ while(【?】) {

if(x%2==0) {s1=s1+x;i++;}

/***********SPACE***********/ 【?】 {

s2=s2+x;

j++; }

/***********SPACE***********/ 【?】; }

if(i!=0) av1=s1/i; else av1=0; if(j!=0)

/***********SPACE***********/ 【?】 ; else av2=0;

printf(\\}

答案:1). x != 0 或 x

2). else 或 else if(x%2==1) 或 else if(x%2!=0) 或 if(x%2)

3). scanf(\ 4). av2=s2/j

功能:利用指向结构的指针编写求某年、某月、某日是第几天的程序,其中年、月、日和年天数用结构表示。 main() {

/***********SPACE***********/

【?】 date {

int y,m,d,n;

/***********SPACE***********/ }【?】; int

k,f,a[12]={31,28,31,30,31,30,31,31,30,31,30,31};

printf(\

scanf(\

f=x.y%4==0&&x.y0!=0||x.y@0==0; /***********SPACE***********/ a[1]+=【?】;

if(x.m<1||x.m>12||x.d<1||x.d>a[x.m-1]) exit(0);

for(x.n=x.d,k=0;k

/***********SPACE***********/

printf(\【?】); }

答案:1). struct ;2). x;3). f;4). x.n 功能:把字符串中所有的字母改写成该字母的下一个字母,最后一个字母z改写成字母a。大字母仍为大写字母,小写字母仍为小写字母,其它的字符不变。例如:原有的字符串为:“Mn.123xyZ”,调用该函数后,串中的内容为:“No.123yzA”。 #include #include #include #define N 81 main( ) {

char a[N],*s;

printf ( \gets ( a );

printf ( \puts( a );

/***********SPACE***********/

【?】; while(*s) {

if(*s=='z') *s='a';

else if(*s=='Z') *s='A';

else if(isalpha(*s))

/***********SPACE***********/ 【?】;

/***********SPACE***********/ 【?】; }

printf ( \puts ( a ); }

答案:1). s=a;2). *s+=1 或 *s=*s+1 或 (*s)++ 或 ++(*s);3). s++ 或 s=s+1 或 ++s 或 s= s + 1

功能:统计一个字符串中的字母、数字、空格和其它字符的个数。 #include \

main () {

char s1[80];int a[4]={0}; int k;

/***********SPACE***********/ 【?】; gets(s1);

/***********SPACE***********/ 【?】; puts(s1);

for(k=0;k<4;k++) printf(\}

void fun(char s[],int b[]) { int i;

for (i=0;s[i]!='\\0';i++)

if ('a'<=s[i]&&s[i]<='z'||'A'<=s[i]&&s[i]<='Z') b[0]++;

/***********SPACE***********/

else if (【?】) b[1]++;

/***********SPACE***********/ else if (【?】 ) b[2]++; else b[3]++; }

答案:

1). void fun(char s[],int b[]) 2). fun(s1,a)

3). '0'<=s[i] && s[i]<='9' 或 s[i]>='0' &&

s[i]<='9' 或 '0'<=s[i] && '9'>=s[i] 或 s[i]>='0' && '9'>=s[i] 或 48<=s[i] && s[i]<=57 或

s[i]>=48 && s[i]<=57 或 48<=s[i] && 57>=s[i] 或 s[i]>=48 && 57>=s[i] 或 !( x < 48 || x > 57 ) 或 !( x < '0' || x > '9' ) 4). s[i] == ' ' 或 s[i] == 32

功能:从键盘输入若干行字符,输入后把他们存储到一磁盘文件中。在从该文件中读出这些数据,将其中的小写字母转换成大写字母后在屏幕上输出。 #include \#define N 100

main() {

FILE *fp;

char c,*p,s[N][20]; int i,n;

printf(\

/***********SPACE***********/ if(n<1【?】n>N) exit(0); printf(\for(i=0;i

/***********SPACE***********/ fp=fopen(\【?】); for(i=0;i

p=s[i];

/***********SPACE***********/ while(*p!='\\0')

if(!ferror(fp)) fputc(【?】,fp); }

fclose(fp); printf(\

/***********SPACE***********/ fp=fopen(\【?】); while((c=fgetc(fp))!=EOF) {

if(c>'a'&&c<='z')c-+32; putchar(c); }

printf(\fclose(fp); }

答案:1). ||;2). \;3). *p++;4). \功能:用递归法将一个整数n转换成字符串,例如输入483,应输出对应的字符串\。n的位数不确定,可以是任意位数的整数。

#include void convert(int n) { int i;

/***********SPACE***********/ if((【?】)!=0) convert(i);


C语言程序填空.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:中国铁路总公司节能减排项目推广管理办法(铁总计统[2015]364号

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: