填空题请补充函数fun(),该函数的功能是:把从主函数中输入的字符串str2倒置后接在字符串str1后面。 例如:str1=“How do”,str2=“?od uoy”,结果输出:“How do you do?”。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。 试题程序: #include<stdio.h> #include<conio.h> #define N 40 void fun(char *str1,char *str2) int i=0,j=0,k=0,n; char ch; char *p1=str1; char *p2=str2; while(*(p1+i)) i++; while(*(p2+j)) j++; n= 【1】 ; for(;k=j/2;k++,j--) ch=*(p2+k); *(p2+k)=*(p2+j); *(p2+j)=ch; 【2】 ; for(; 【3】 ;i++) *(p1+i)=*p2++; *(p1+i)='/0'; main() char str1[N],str2[N]; int m,n,k; clrscr(); printf("***Input the string str1 & str2 ***/n"); printf("/nstr1:"); gets(str1); printf("/nstr2:"); gets(str2); printf("***The string str1 & str2 ***/n"); puts(str1); puts(str2); fun(str1,str2); printf("*** The new string ***/n"); puts (str1);
填空题请补充fun函数,fun函数的功能是求n的阶乘。 注意:部分源程序已给出。 请勿改动主函数main和其他函数中的任何内容,仅在fun函数的横线上填入所编写的若干表达式或语句 试题程序: #include<stdio.h> long fun(int n) if( (1) ) return(n*fun( (2) )); return (3) ; main() printf("10!=%1d/n",fun(10));
填空题关系可以有3种类型,即基本关系(又称基本表或基表)、查询表和 【4】 。
填空题下面函数要求计算两个整数x,y之和,并通过形参返回该值,请填空。 add(int x, int y, 【15】 z) 【16】 =x+y;
填空题函数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: (1) )): ((a>c)? (2) :((b>c)?c: (3) )); 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);
填空题下列给定的程序中,函数fun()的功能是:计算并输出k以内最大的6个能被7或11整除的自然数之和。K的值由主函数传入,若k的值为500,则函数的值为2925。 请改正程序中的错误,使它能得到正确结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include<stdio.h> #include <conio.h> int fun(int k) int m=0,mc=0,j; /*************found*************/ while(k>=2)&&(mc<6) /*************found*************/ if((k%7=0)||(k%ll=0)) /*************found**************/ m=k; mc++; k--; return m; main() clrscr(); printf("%d/n",fun(500));
填空题若要使指针P指向一个double类型的动态存储单元,请填空。 p=______malloc(sizeof(double));
填空题以下程序运行后的输出结果是{{U}} 【12】 {{/U}}。
main()
{ char a[]="123456789",*p; int i=0;
p=a;
while(*p)
{ if(i%2==0) *p='*';
p++;i++;
}
puts(A) ;
}
填空题strcat函数的作用是 【10】 。
填空题以下程序的输出结果为 【6】 。 main() int k=1; white(k<=15) if(++k%3!=2)continue; else printf("%d ",k); printf("/n");
填空题在面向对象方法中,信息隐蔽是通过对象的 【4】 性来实现的。
填空题以下程序打开新文件f.txt,并调用字符输出函数将a数组中的字符写入其中,请填空。 #include< stdio.h> main() (14) *fp; char a[5]='1', '2', '3', '4', '5', i; fp=fopen(" (15) ", "w"); for(i=0; i<5; i++)fputc(a[i], fp); fclose(fp);
填空题以下程序运行后的输出结果是 【13】 。 main() int i,n[]=0,0,0,0,0; for(i=1;i<=4;i++) n[i]=n[i-1]*2+1; printfi["%d",n[i]);
填空题下列程序中,字符串中各单词之间有一个空格,则程序的输出结果是 【8】 。 #include main() char strl[]="How do you do", *p1=strl; strcpy(strl+strlen(strl)/2,"es she"); printf("%s/n",p1);
填空题以下程序输出的最后一个值是 【11】 int ff(int n) static int f=1; f=f*n; return f; main() int i; for(i=1;i<=5;i++) printf("%d/n",ff(i));
填空题假定变量x为int类型,请以最简单的形式写出与逻辑表达式!x等价的C语言关系表达式{{U}} {{U}} {{/U}} {{/U}}。
填空题下列给定程序中函数fun的功能是:把从主函数中输入的3个数,最大的数放在a中,中间的数放在b中,最小的数放在C中。 例如,若输入的数为:55 12 34,输出的结果应当是.a=55.0,b=34.0,c=12.0。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 试题程序: #include<stdio.h> void fun(float*a,float*b,float*c) /*********found*********/ float*k; if(*a<*b) k=*a: *a=*b: *b=k; /*********found*********/ if(*a>*c) k=*c: *c=*a: *a=k; if(*b<*c) k=*b; *b=*c; *c=k; void main() float a,b,c; printf("Input a b c:"); scanf("%f%f%f",&a,&b,&c); printf("a=%4.1f,b=%4.1f,c=%4.1f/n/n",a,b,c); fun(&a,&b,&c); printf("a=%4.1f,b=%4.1f,c=%4.1f/n/n",a,b,c);
填空题下列给定程序中,函数proc()的作用是:将字符串tt中的大写字母都改为对应的小写字母,其他字符不变。
例如,若输入“I, am, A, Student”,则输出“i, am, a, student”。
请修改程序中的错误,使它能得到正确结果。
注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<conio.h>
//****found****
char proc(char str[])
{
int i;
for(i=0;str[i];i++)
{
//****found****
if((str[i]>="a")
return(str);
void main()
{
char str[81];
system("CLS");
printf("/nPlease enter a string:");
gets(str);
printf("/nThe result string is:/n%s",
proc(str));
}
填空题在给定程序中,函数fun的功能是:对形参s所指字符串中下标为奇数的字符按ASCII码大小递增排序,并将排序后下标为奇数的字符取出,存入形参p所指字符数组中,形成一个新串。 例如,形参s所指的字符串为BADCDBFGEDC;执行后p所指字符串数组中的字符串应为ABCDG。 请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构。 文件BLANK1.C内容如下: #include<stdio.h> void fun(char *s,char *p) int i,j,n,x,t; n=0; for(i=0;s[i]!='/0';i++)n++; for(i=1;i<n-2;i=i+2) /**********found**********/ (1) ; /**********found**********/ for(j= (2) +2;j<n;j=j+2) if(s[t]>s[j])t=j; if(t!=i) x=s[i];s[i]=s[t];s[t]=x; for(i=1,j=0;i<n;i=i+2,j++)p[j]=s[i]; /**********found**********/ p[j]= (3) ; void main( ) char s[80]="BADCDBFGEDC",p[50]; printf("/nThe original string is:%s/n",s); fun(s,p); printf("/nThe result is:%s/n",p);
填空题下列给定程序中,函数proc()的功能是:先将字符串s中的字符按顺序存放到t中,然后把s中的字符按正序连接到t的后面。例如,当s中的字符串为WXYZ时,则t中的字符串应为WXYZWXYZ。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include<stdlib.h>
#include<conio.h>
#include<stdio.h>
#include<string.h>
void proc(char*s,char*t)
{
int i,s1;
s1=strlen(s);
for(i=0;i<s1;i++)
//****found****
t[i]=s[s1];
for(i=0;i<s1;i++)
t[s1+i]=s[i];
t[2*s1]="/0";
}
void main()
{
char s[100],t[100];
system("CLS");
printf("/nPlease enter string s:");
scanf("%s",s);
proc(s,t);
printf("The result is:%s/n",t);
}
