填空题若有以下程序: main() char a; a='H'-'A'+'0'; printf("%c/n",a); 执行后的输出结果是 【12】 。
填空题请补充main函数,该函数的功能是求方程ax2+bx+c=0的根(方程的系数a,b,c从键盘输入)。 例如, 当a=1,b=2,c=1时, 方程的两个根分别是: x1=-1.00,x2=-1.00。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在 main函数的横线上填入所编写的若干表达式或语句。 试题程序: #include <stdio.h> #include <conio.h> #include <math.h> main() float a,b,c,disc,x1,x2,p,q; scanf("%f,%f,%f",&a,&b,&c); disc=b*b-4*a*c; clrscr(); printf("****** the result ****+*+/n"); if(disc>=0) x1= 【1】 ; x2=(-b-sqrt(disc))/(2*a); printf("x1=%6.2f,x2=%6.2f/n",x1,x2); else p= 【2】 ; q= 【3】 ; printf("x1=%6.2f+%6.2f i/n",p,q); printf("x2=%6.2f-%6.2f i/n",p,q);
填空题下面程序的输出结果是 【8】 。 unsigned fun6(unsigned num) unsigned k=1; do k*=hum%10; num/=10;while(num); return(k); main() unsigned n=26; printf("%d/n",fun6(n));
填空题有以下程序:
void f(int a[],int i,int j)
{int t;
if(i<j)
{ t=a[i];a[i]=a[j];a[j]=t;
f(a,i+1,j-1);
}
}
main()
{ int i,aa[5]={1,2,3,4,5};
f(aa,0,4);
for(i=0;i<5;i++) printf("%d,",aa[i]);printf("/n");
}
执行后的输出结果是{{U}} 【4】 {{/U}}。
填空题下面程序的功能:将字符数组a中下标值为偶数的元素从小到大排列,其他元素不变。请填空。 # include<stdio. h> # include<string. h> main() char a[]="clanquage", t; int i, j, k; k=strlen(A) ; for(i=0; i<=k-2; i+=2) for(j=i+2;j<k; j+=2) if(______) t=a[i]; a[i]=a[j]; a[j]=t; puts(A) ; printf("/n");
填空题有以下程序: main() int t=1,i=5; for(; i>=0;i--) t*=i; printf("%d/n",t); 执行后输出结果是 【8】 。
填空题下列给定程序中,函数fun的功能是:求出s所指字符串中最后一次出现的t所指字符串的地址,并通过函数值返回,在主函数中输出从此地址开始的字符串;若未找到,则函数值为NULL。 例如,当字符串中的内容为“123dabf123dx”,t中内容为“ab”时,输出结果应是“123dx”。 当字符串中的内容为“123dabf123dx”,t中内容为“abd”时,则程序输出未找到信息“Not found!”。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 试题程序: #include<stdio.h> #include<string.h> char*fun(char*s,char*t) char*p,*r,*a; /************found*********/ a=Null; while(*s) p=s;r=t; while(*r) /************found**********/ if(r==p)r++;p++; else break; if(*r=='/0')a=s; s++; return a; voidmain() char s[100],t[100],*p; printf("/nPlease enter string S:"); scanf("%s",s); printf("/nPlease enter substring t=t:"); scanf("%s",t); p=fun(s,t); if(p) printf("inThe result is:%s/n",p); else printf("inNot found!/n");
填空题请补充函数fun(),该函数的功能是:把字符下标能铍2或3整除的字符从字符串str中删除,把剩余的字符重新保存在字符串str中。字符串str从键盘输入,其长度作为参数传入函数fun()。 例如,输入“abcdefghijk”,输出“bfh”。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。 试题程序: #include <stdio.h> #define N 80 void fun(char s[], int n) int i, k; 【1】 ; for(i=0; i<n; i++) s[k++]=s[i]; if( 【2】 ) k--; 【3】 ; 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);
填空题以下程序将数组a的4个元素和数组b的6个元素写到名为lett.dat的二进制文件中,请填空。 #include <stdio.h> #include <stdlib.h> main() FILE *fp; char a[5]="1234",b[7]="abcedf"; if((fp=fopen("{{U}} {{/U}}","wb"))==NULL) exit(0); fwrite(a,sizeof(char),4,fp); fwrite(b,{{U}} {{/U}},1,fp); fclose(fp);
填空题实现程序可将磁盘中的一个文件复制到另一个文件中,两个文件的文件名在可执行命令的命令行中(相当于copy命令),假定文件在当前目录下。请补全程序。 #include<stdio.h> void main(int argc,char*argv[]) FILE*f1,*f2; if(argc< 【18】 ) printf("parameter error!/n");exit(0); f1=fopen(argv[1],"r"); f2=fopen(argv[2],"w"); while( 【19】 )fputc(fgetc(f1),f2); fclose(f1); fclose(f2);
填空题请补充main函数,该函数的功能是:从键盘输入学生的成绩(用回车键作为分隔符),并统计各分数段学生的人数。具体要求为:A类为90~100分,B类为80~89分,C类为70~79分,D类为60~69分,59分以下的为E类。当成绩为0时结束成绩的输入,并且最后输入的0不进行统计。
例如,输入89,99,45,64,56,78,88,74,66,55,0。结果为
A:1 B:2 C:2 D:2 E:3
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在 main函数的横线上填入所编写的若干表达式或语句。
试题程序:
#include<stdio.h>
#include<conio.h>
#define N 100
main()
{
float score[N];
int bb[5];
int grade, i=-1,n=0;
char ch='A';
clrscr();
printf("Input a score(0~100);/n");
do
{
i++;
n++;
printf("score[%d]=",i);
scanf ({{U}} 【1】 {{/U}});
}while (score[i]!=0);
for(i=0;i<5;i++)
{{U}} 【2】 {{/U}};
for(i=0;i<n-1;i++)
{
grade={{U}} 【3】 {{/U}};
switch(grade)
{
case 10:
case 9:bb[0]++;break;
case 8:bb[1]++;break;
case 7:bb[2]++;break;
case 6:bb[3]++; break;
default:bb[4]++;
}
}
for(i=0;i<5;i++)
printf("/n%c:%d",ch+i,bb[i]);
}
填空题给定程序中,函数fun的作用是:不断从终端读入整数,由变量a统计大于0的个数,用变量c来统计小于0的个数,当输入0时结束输入,并通过形参pa和pb把统计的数据传回主函数进行输出。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在
下的BLANK1. C中。不得增行或删行,也不得更改程序的结构!
#include <stdio. h>
void fun(int *px, int *py)
{
/**********found**********/
int ______;
scanf("%d",
/**********found**********/
while ______
(if(k>0) a++;
if(k<0) b++;
/**********found**********/
______;
}
*px=a; *py=b;
}
main( )
{int x, y;
fun(
printf("x=%d y=%d/n", x, y);
}
填空题以下程序运行后的输出结果是 【14】 。 main() char s[]="9876",*p; for(p=s;p<s+2;p++)printf("%s/n",p);
填空题给定程序中,函数fun的功能是:判定形参a所指的N×N(规定N为奇数)的矩阵是否是“幻方”,若是,函数返回值为1;不是,函数返回值为0。“幻方”的判定条件是:矩阵每行、每列、主对角线及反对角线上元素之和都相等。
例如,以下3×3的矩阵就是一个“幻方”:
4 9 2
3 5 7
8 1 6
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
不得增行或删行,也不得更改程序的结构!
给定源程序:
#include<stdio.h>
#define N 3
int fun(int(*a)[N])
{ int i, j, m1, m2, row, colum;
m1=m2=0;
for(i=0; i<N; i++)
{ j=N-i-1; m1+=a[i][i]; m2+=a[i][j];}
if(m1!=m2) return 0;
for(i=0; i<N; i++){
/**********found**********/
row=colum=______;
for(j=0; j<N; j++)
{ row+=a[i][j]; colum+=a[j][i];}
/**********found**********/
if((row!=colum)______(row!=m1))
return 0;
}
/**********found**********/
return______;
}
main()
{ int x[N][N], i, j;
printf("Enter number for array:/n");
for(i=0; i<N; i++)
for(j=0; j<N; j++)scanf("%d",
printf("Array:/n");
for(i=0; i<N; i++)
{ for(j=0; j<N; j++)printf("%3d", x[i][j]);
printf("/n");
}
if(fun(x))printf("The Array is a magic square./n");
else printf("The Array isn"t a magic square./n");
}
填空题下面rotate函数的功能是:将n行n列的矩阵A转置为A',例如: 1 2 3 4 1 5 9 13 5 6 7 8 2 6 10 14 当A = 9 10 11 12 则 A'= 3 7 11 15 13 14 15 16 4 8 12 16 请填空。 #define N 4 void rotate(int a[] [NJ ) int i,j,t; for ( i=0; i<N; i++ ) for(j=0; ______;j++) t=a[i] [j]; ______; a[j] [i]=t;
填空题______测试方法完全不考虑程序的内部结构和内部特征。
填空题以下程序中,函数fun的功能是计算x2-2x+6,主函数中将调用fun函数计算:
y1=(x+8)2-2(x+8)+6
y2=sin2(x)-2sin(x)+6 请填空。 double
fun(double x){return(x*x-2*x+6);} {double
x,y1,y2; printf("Enter x:");scanf("%lf",&x);
y1=fun({{U}} {{U}} {{/U}} {{/U}});
y2=fun({{U}} {{U}} {{/U}} {{/U}});
printf("y1=%lf,y2=%lf/n",y1,y2);
填空题以下fun函数的功能是在N行M列的整型二维数组中,选出一个最大值作为函数值返回。请填空。(设M、N已定义) int fun(int a[N][M]) int i, j, row=0, col=0; for(i=0;i<N;i++) for(j=0;j<M;j++) if(a[i][j]>a[row][col])row=i;col=j; return______;
填空题以下程序运行后的输出结果是{{U}} 【6】 {{/U}}。
main()
{
int x=0210;
printf("%X/n",x);
}
填空题下面的语句要使指针p指向一个double类型的动态存储单元,请填空。
p ={{U}} 【13】 {{/U}} malloc(sizeof(double));
