填空题给定程序MODI1.C中函数fun的功能是:将s所指字符串的正序和反序进行连接,形成一个新串放在t所指的数组中。 例如,当s所指字符串为"ABCD"时,则t所指字符串中的内容应为:ABCDDCBA。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 文件MODI1.C内容如下: #include<stdio.h> #include<string.h> /**********found**********/ void fun(char s,char t) int i,d; d=strlen(s); for(i=0;i<d;i++)t[i]=s[i]; for(i=0;i<d;i++)t[d+i]=s[d-1-i]; /**********found**********/ t[2*d-1]='/0'; void main( ) char s[100],t[100]; printf("/nPlease enter string S: "); scanf("%s",s); fun(s,t); printf("/nThe result is: %s/n",t);
填空题若输入I have a test.#,则以下程序的运行结果为 【10】 。#include<stdio.h>main() FILE*fp; char str[100],filename[10]; int i=0; if ((fp=fopen("test","w"))==NULL) printf("can not open the file!/n"); exit(0); getchar(); gets(str); while(str[i]!='#') if (str[i]>='a' && str[i]<='z') str[i]=str[i]-32; fputc(str[i],fp); i++; fclose(fp); fp=fopen("test","r"); fgets(str,strlen(str)+1,fp); printf("%s/n",str); fclose(fp);
填空题以下程序段打开文件后,先利用fseek函数将文件位置指针定位在文件末尾,然后调用ftell函数返回当前文件位置指针的具体位置,从而确定文件长度,请填空。 FILE *myf; long f1; myf= 【20】 ("test.t","rb"); fscek(myf,(),SEEK_END) ;f1+ftell(myf); fclose(myf); printf("%1d/n",f1);
填空题以下程序段的定义语句中,x[1]的初值是______,程序运行后输出的内容是______。 #include<stdio.h> main() int x[]=(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,*p[4],i; for(i=0;i<4;i++) p[i]=&x[2*i+1]; printf("%d",p[i][0]); printf("/n");
填空题下列给定程序中,函数fun的功能是:在3×4的矩阵中找出在行上最大、在列上最小的那个元素,若没有符合条件的元素则输出相应信息。例如,有下列矩阵:程序执行结果为:find:a[2][2]=9。请在程序的下划线处填入正确的内容,使程序得出正确的结果。注意:部分源程序给出如下。不得增行或删行,也不得更改程序的结构!试题程序:#include<stdio.h>#defineM3#defineN4voidfun(int(*a)[N])(inti:0,j,find=0,rmax,c,k;while((i<M)&&(!find))(rmax=a[i][0];c=0;for(j=1;j<N;j++)if(rmax<a[i][j]){/********found********/rmax=a[i][j];c=________;)find=1;k=0;while(k<M&&find){/********found********/if(k!=i&&a[k][c]<=rmax)find=________;k++;}if(find)printf("find:a[%d][%dl=%d/n",i,c,a[i][c]);/********found********/________;}if(!find)printf("notfound!/n");}main(){intx[M][N],i,j;printf("Enternumberforarray:/n");for(i=0;i<M;i++)for(j=0;j<N;j++)scanf("%d",&x[i][j]);printf("Thearray:/n");for(i=0;i<M;i++){for(j=0;j<N;j++)printf("%3d",x[i][j]);printf("/n/n");}fun(x);}
填空题函数main()的功能是:在带头结点的单链表中查找数据域中值最小的结点。请填空#includestruct node int data; struct node *next;int main(struct node *first) /*指针first为链表头指针*/ struct node *p; int m; p=first->next; m=p->data; p=p->next; for(; p!=NULL;p=______) if(p->data<M)   M=P->data;return m;
填空题请在以下程序第一行的下划线处填写适当内容,使程序能正确运行。
______(double,double);
main()
{ double x,y;
scanf("%lf%lf",&x.&y);
printf("%lf/n…,max(x,y));
}
double max(double a,double B)
{ return(a>b ? a=B) ; }
填空题下列程序的定义语句中,x[1]的初值是{{U}} 【9】 {{/U}},程序运行后输出的内容是{{U}} 【10】 {{/U}}。
#include <stdio.h>
main()
{
int x[]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16},*p[4],i;
for(i=0;i<4;i++)
{
p[i]=
printf("%d",p[i][0]);
}
printf("/n");
}
填空题请补充main()函数,该函数的功能是:把1~100的所有素数保存在数组arr中,然后输出这些素数并计算它们的和。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在main()函数的横线上填入所编写的若干表达式或语句。
试题程序:
#include<stdlib.h>
#include<stdio.h>
void main()
{
int i,j,k,flag,sum;
int arr[50];
sum=0;
k=0;
system("CLS");
for(i=2;i<100;i++)
{
______;
for(j=2;j<ij++)
if(i%j==0)
{
______;
}
if(flag)
{
sum+=i;
______;
}
}
printf("/n***prime nHmber***/n");
for(i=0;i<k;i++)
{
if(i%10==0)
printf("/n");
printf("%4d",arr[i]);
}
printf("/nsum=%d",sum);
}
填空题若有定义语句char s [100],d[100];int j=0,i=0;且s中已赋字符串,请填空以实现拷贝。 (注:不使用逗号表达式) white(s[i])d[j]=______;j++; d[j]=0;
填空题请补充main()函数,该函数的功能是:把一个二维字符数组每行字符串中最大的字符复制到字符数组s中。
例如,如果arr[3]={"hoih", "yufui", "xgf"},则str="oyx"。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在main()函数的横线上填入所编写的若干表达式或语句。
试题程序:
#include<stdlib.h>
#include<stdio.h>
void main()
{
int i=0;
char*arr[3]={"hoih", "yufui", "xgf"};
char**p;
char str[8];
system("CLS");
______;
for(i=0; i<3; i++)
{
str[i]=*p[i];
while(*p[i])
{
if(str[i]<*p[i])
str[i]=*p[i];
______;
}
}
______;
printf("new string/n");
puts(str);
}
填空题以下程序段中,错误的行号是______。
① #include <stdio.h>
② main()
③ { char str[14];str[]={"I love China!"};
④ printf("%s",str);
⑤ }
填空题以下程序中,for循环体执行的次数是{{U}} 【13】 {{/U}}。
#define N 2
#define M N+1
#define K M+1*M/2
main()
{ int i;
for(i=1;i<K;i++)
{…}
}
填空题以下程序运行后的输出结果是{{U}} 【16】 {{/U}}。
struct NODE
{int num;struct NODE *next;
};
main()
{struct NODE s[3]={{1,'/0'},{2,'/0'},{3,'0'}},*p,*q,*r;
int sum=0;
s[0].next=s+1;s[1].next=s+2;s[2].next=s;
p=s; q=p->next; r=q->next;
sum+=q->next->num; sum+=r->next->next->num;
printf("%d/n",sum);
}
填空题下列程序的运行结果是______。 # include<stdio.h> long func(int x) long p; if(x==0||x==1) return(1); p=x*func(x-1); return(p); main() printf("%d/n",func(4));
填空题有以下程序: #include main() int a[]=1,2,3,4,y,*p=&a[3]; --P;y=*p;printf("y=%d/n",y); 程序的运行结果是______。
填空题mystrlen函数的功能是计算str所指字符串的长度,并作为函数值返回。请填空。 int mystrlen(char *str) int i; for(i=0; 【14】 !='/0';i++); return(i);
填空题以下函数用来求出两整数之和,并通过形参将结果传回,请填充完整。 void func(int x,int y, 【9】 z) *z=x+y;
填空题以下程序的输出结果是______。
#include<stdio.h>
main()
{ double a=1234.56789;
printf("%8.4f,%8.2f/n",a,a);
}
填空题C语言中的关系运算符“==”比逻辑运算符“&&”的优先级______。
