填空题请补充函数fun(),该函数的功能是判断一个数的个位数字和百位数字之和是否等于其十位上的数字,是则返回"yes!”,否则返回“no!”。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。
试题程序:
#include <stdio.h>
#include <conlo.h>
char *fun(int n)
{
int g,s,b;
g=n%l0;
s=n/10%10;
b={{U}} 【1】 {{/U}};
if((g+b)==s)
return{{U}} 【2】 {{/U}};
else
return{{U}} 【3】 {{/U}};
}
main()
{
int num=0;
clrscr();
printf("******Input data*******/n");
scanf("%d",&num);
printf("/n/n/n");
printf("******The result*******/n");
printf("/n/n/n%s",fun(num));
}
填空题以下程序运行后的输出结果是【 】。
main()
{int a=3,b=4,c=5,t=99;
if(b<aa;a=c;c=t
if(a<ca=t;
printf("%d%d%d\n",a,b,c);
}
填空题下列给定程序中, 函数 fun 的功能是: 从形参 ss 所指字符串数组中, 删除所有串长超过 k的字符串, 函数返回剩余字符串的个数
填空题请补充main()函数,该函数的功能是求方程ax
2
+bx+c=0的两个实数根。方程的系数a、b、c从键盘输入,如果判别式(disc=b*b-4*a*c)小于0,则要求重新输入a、b、c的值。
例如,当a=1,b=2,c=1时,方程的两个根分别是:x
1
=-1.00,x
2
=-1.00。
注意:部分源程序给出如下。
请勿改动函数中的其他任何内容,仅在横线上填入所编写的若干表达式或语句。
试题程序:
#include<math.h>
#include<stdio.h>
void main()
{
double a,b,c,x1,x2,disc;
do
{
printf("Input a,b,c:");
scanf("%1f,%1f,1f",
disc=b*b-4*a*c;
if(disc<0)
printf("disc=%1f/n Input again!/n",disc);
}
while(______);
printf("****the result****/n");
x1=(-b+______(disc))/(2*a);
x2=(-b-______(disc))/(2*a);
printf("/nx1=%6.21f/nx2=%6.21f/n",x1,x2);
}
填空题设有以下定义和语句:
int a[3][2]={1,2,3,4,5},*p[3];
p[0]=a[1];
则*(p[0]+1)所代表的数组元素是{{U}} 【14】 {{/U}}。
填空题下面程序的功能是求零件总数:有一堆零件,如果分成4个零件一组的若干组,则多2个;若分成7个零件一组,则多3个;若分成9个零件一组,则多5个,这堆零件最少有几件?请把程序补充完整。
#include<stdio.h>
int main()
{
int i=1, s=1;
do
{
if((i-2)%4==0)
if(!((i-3)%7))
if(______)
{
printf("%d", i); ______
}
i++;
}
while(s);
return 0;
}
填空题若输入字符串:(图片),则以下while循环体将执行 【12】 次。 while((ch=getchar())=='e')printf("*");
填空题下面的程序用来统计文件中字符的个数。请填空。 # include<stdio.h> main( ) FILE *fP; long num=0; if( (fp=fopen("fname.dat","r"))==NULL) printf("Can't open file! /n");sxit(0); while 【20】 fgetc(fp);num++; printr("num=%d/n",num); fclose (fp);
填空题若想通过以下输入语句使a=5.0,b=4,c=3,则输入数据的形式应该是______。
int b,C; float a:
scanf("%f, %d,c=%d”,&a,&b,&c);
填空题以下程序的功能是:求出数组x中各相邻两个元素的和,依次存放到a数组中,然后输出,请填空。main() int x[10],a[9],i;for (i=0;i<10;i++)scanf("%d",&x[i]);for(i=1;i<10;i++)a[i-1]=x[i]+ ______;for(i=0;i<9;i++)printf("%d",a[i]);printf("\n");
填空题下面程序的功能是:输出100以内能被3整除且个位数为6的所有整数,请填空。 # include<stdio.h> main ( ) int i,j; for (i=0 【8】 ;i+ +) j=i*10+6; if ( 【9】 )continue; printf("%d",j);
填空题软件是由两部分组成的,一部分是 【3】 ,另一部分是文档资料。
填空题以下函数的功能是删除字符串s中的所有数字字符。请填空。
viod dele(char *s)
{ int n=0,i;
for(i=0;s[i];i++)
if(【 】)
s[n++]=s[i];
s[n]=【 】;
}
填空题程序通过定义学生结构体变量,存储了学生的学号、姓名和三门课的成绩。函数fun的功能是将形参a中的数据进行修改,把修改后的数据作为函数值返回主函数进行输出。
例如:传给形参a的数据中,学号、姓名和三门课的成绩依次是:10001、"ZhangSan"、95、80、88,修改后的数据应为:10002、"LiSi"、96、81、89。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
不得增行或删行,也不得更改程序的结构!
给定源程序:
#include<stdio.h>
#include<string.h>
struet student{
long sno;
char name[10];
float score[3];
};
/**********found**********/
______fun(struct student a)
{int i;
a.sno=10002;
/**********found**********/
strcpy(______,"LiSi");
/**********found**********/
for(i=0;i<3;i++)______+=1;
return a;
}
main()
{struct student s={10001,"ZhangSan",95,80,88},t;
int i;
printf("/nThe original data:/n");
printf("/nNo:%ld Name:%sinScores:",s.sno,s.name);
for(i=0;i<3;i++)printf("%6.2f",s.score[i]);
printf("/n");
t=fun(s);
printf("/nThe data after modified:/n");
printf("/nNo:%ld Name:%s/nSeores:",t.sno,t.name);
for(i=0;i<3;i++)printf("%6.2f",t.score[i]);
printf("/n");
}
填空题请补充函数fun(),该函数的功能是:按“0”~“9”统计一个字符串中的奇数数字字符各自出现的次数,结果保存在数组num中。
注意:不能使用字符串库函数。 例如,输入“x=112385713.456+0.909*bc”,结果为:1=3, 3=2,
5=2, 7=1, 9=2。 注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在函数fun()的标号处填入所编写的若干表达式或语句。
试题程序 #include
<stdlib.h> #include <stdio.h> #define N
1000 void fun(char *tt, int num[]) { int i,
j; int bb[10]; char *p=tt;
for(i=0; i<10; i++) { num[i]=0;
bb[i]=0; } while(______) {
if(*p>='0'
p++; } for(i=1, j=0; i<10; i=i+2,
j++) ______; } void
main() { char str[N]; int num[10],
k; printf("/nPlease enter a char string:");
gets (str); printf("/n * * The original string * *
/n"); puts (str); fun(str, num);
printf("/n * * The number of letter * */n"); for(k=0;
k<5; k++) { printf("/n"); printf("% d=% d",
2*k+1, num[k]); } printf("/n");
}
填空题以下程序的输出结果是{{U}} 【12】 {{/U}}。
#include<string.h>
main()
{ char a[]={'/1','/2','/3','/4','/0'};
printf("%d %d/n",sizeof(a),strlen(a));
}
填空题下面程序的运行结果是______。
int n=10;
int func(int*p)
{
n+=*p;
*p+=n;
printf("%d, %d/n", *p, n);
return(n);
}
int main()
{
int m=6, pand=8;
pand=func(
printf("/n%d, %d, %d/n", m, pand, n);
return 0;
}
填空题以下程序运行后的输出结果是【15】。
#include
main()
{ FILE *fp;int x[6]={1,2,3,4,5,6},i;
fp=fopen("test.dat","wb");
fwrite(x,sizeof(int),3,fp);
rewind(fp);
fread(x,sizeof(int),3,fp);
for(i=0;i<6;i++) printf("%d",x[i]);
printf("\n");
fclose(fp);
}
填空题字符串str由数字字符组成(长度不超过5个字符),可看作任意进制的数,请补充函数proc(),该函数的功能是:把str字符串从二进制转换成十进制的数,结果保存在数组xx中,由函数返回转换后数组xx的实际长度。其中x表示str原来的进制,y表示要转换成的进制。例如,输入str="1011",x=2,y=10,结果输出11。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的横线上填入所编写的若干表达式或语句。
试题程序:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define M 8
int xx[M];
int proc(char*str,int x,int y)
{
int sum;
int i=0;
char*p=str;
for(i=0;i<M;i++)
xx[i]=0;
sum=______;
p++;
while(*p)
{
sum=sum*x+*p-"0";
p++;
}
i=0;
while(sum!=0)
{
xx[i]=______;
______;
i++;
}
return i;
}
void main()
{
char str[6];
int i;
int n;
int x;
int y;
printf("Enter a string made up of"0"to"9"digits character:");
gets(str);
if(strlen(str)>5)
{
printf("Error:string too longer!,please input again!/n/n");
exit(0);
}
for(i=0;str[i];i++)
if(str[i]<"0"||str[i]>"9")
{
printf("Error:%c not is"0"to"9" digits character!/n/n",str[i]);
exit(0);
}
printf("The original string:");
puts(str);
printf("/nINPUT x=");
scanf("%d",
printf("/nINPUT y=");
scanf("%d",
n=proc(str,x,y);
printf("/n%s is convered to",str);
for(i=n-1;i>=0;i--)
printf("%d/n",xx[i]/n);
}
填空题在给定程序中,函数fun的功能是:有N×N矩阵,以主对角线为对称线,对称元素相加并将结果存放在左下三角元素中,右上三角元素置为0。例如,若N=3,有下列矩阵: 1 2 3 4 5 6 7 8 9 则计算结果为: 1 0 0 6 5 0 10 14 9 请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构。 文件BLANK1.C内容如下: #include <stdio.h> #define N 4 /**********found**********/ void fun(int(*t) (1) ) int i,j; for(i=1;i<N;i++) for(j=0;j<i;j++) /**********found**********/ (2) =t[i][j]+t[j][i]; /**********found**********/ (3) =0; void main( ) int t[][N]=21,12,13,24,25,16,47,38,29,11,32,54,42,21,33,10,i,j; printf("/nThe original array: /n"); for(i=0;i<N;i++) for(j=0;j<N;j++)printf("%2d",t[i][j]); printf("/n"); fun(t); printf("/nThe result is: /n"); for(i=0;i<N;i++) for(j=0;j<N;j++) printf("%2d",t[i][j]); printf("/n");
