填空题以下程序中,主函数调用了LineMax函数,实现在N行M列的二维数组中,找出每一行上的最大值。
请填空。
#define N 3
#define M 4
void LineMax(int x[N][M])
{ int i,j,P;
for(i=0;i<N;i++)
{ p=0;
for(j=1;j<M;j++)
if(x[i][p]<x[i][j]){{U}} 【9】 {{/U}};
printf("The max value in line %d is %d/n",i,{{U}} 【10】 {{/U}});
}
main()
{ int x[N][M]={1,5,7,4,2,6,4,3,8,2,3,1};
{{U}} 【11】 {{/U}};
}
填空题下列给定程序的功能是:从键盘输入若干行字符串(每行不超过80个字符),写入文件myfile4.txt中,用-1作字符串输入结束的标志,然后将文件的内容显示在屏幕上。文件的读写分别由函数ReadText和writeText实现。
请在程序的下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。
注意:部分源程序在文件BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include<stdio.h>
#include<string.h>
#nclude <stdlib.h>
void WriteText(FILE *);
void ReadText(FILE *);
main( )
{ FILE * fp;
if((fp=fopen(”myiile4.txt","w"))==NULL)
{printf("open fail!!/n");exit(0);}
WriteText(fp);
fclose(fp);
if((fp=fopen("myfile4.txt","r"))==NULL)
{printf("open fail!!/n");exit(0);}
ReadText(fp);
fclose(fp);
}
/* * * * * * * * * *found* * * * * * * * * */
void WriteText(FILE ______)
{ char str[81];
printf("/nEnter string with-1 to end :/n");
gets(str);
while(strcmp(str,"-1")!=0){
/* * * * * * * * * *found* * * * * * * * * */
fputs(______,fw);fputs("/n",fw);
gets(str);
}
}
void ReadText(FILE *fr)
{ char str[81];
printf("/nRead file and output to screen:/n");
fgets(str,81,fr);
while(!feof(fr)){
/* * * * * * * * * *found* * * * * * * * * */
printf("%s",______);
fgets(str,81,fr);
}
}
填空题设有定义语句:int a[][3]=0,1,2;,则数组元素a[1][2]的值为______。
填空题下列执行后输出的结果是{{U}} {{/U}}。 main() intarr[10],i,k=0 for(i=0;i<10;i++)atr[i]=i for(i=1,i<4;i++) k+=arr[i]+i; printf("%d//n",k);
填空题请补充函数fun(),该函数的功能是:把一个整数转换成字符串,并倒序保存在字符数组str中。例如:当n=13572468时,str=-“86427531”。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。
试题程序:
#include <stdio.h>
#include <conio.h>
#define N 80
char str[N];
void fun(long int n)
{
int i=0;
while({{U}} 【1】 {{/U}})
{
str[i]={{U}} 【2】 {{/U}};
n/=10;
i++;
}
{{U}}【3】 {{/U}};
}
main()
{
long int n=13572468;
clrscr();
printf("*** the origial data ***/n");
printf("n=%ld",n);
fun(n);
printf("/n%s",str);
}
填空题以下程序的运行结果是______。
# include <string.h>
typedef struct student
{ char name[10];
long sno;
float score;} STU;
main()
{ STU a= {"Liuyifei",2001,95},b={"Shangxian",2002,90},c= {"Zhangli",2003,95 },d,*p=
d=a;
if(strcmp(a.name,b.name)>0) d=b;
if(strcmp(c.name,d.name)>0) d=c;
printf("%ld%s/n",d.sno,p->name);
}
填空题下列程序从名为filea.dat的文本文件中逐个读入字符并显示在屏幕上。请填空。
#include <stdio.h>
main()
{ FILE *fp; char ch;
fp = fopen( 【 】 );
ch = fgetc(fp);
while(!feof(fp)) { putchar(ch); ch=fgetc(fp); }
putchar("\n"); fclose(fp);
}
填空题函数fun的功能是计算xn double fun(double x,int n) int i; double y=1; for(i=1;i<=n;i++) y=y*x; return y; 主函数中已正确定义m、a、b变量并赋值,而且调用fun函数计算:m=a4+b4-(a+b)3。实现这一计算的函数调用语句为 【12】 。
填空题若有如下结构体说明: structSIRU int a,b;char c:double d; struct STRU *p1,*p2; ; 请填空,以完成对t数组的定义,t数组的每个元素为该结构体类型。 【16】 t[20]
填空题下列程序的输出结果是______。
#include<stdio.h>
sb(int s[],int B)
{static int n=3;
b=s[n];
n--;
return(B) ;
}
main()
{ int s[]={1,5,6,8};
int i,x=0;
for(i=0;i<4;i++)
{x=sb(s,x);
printf("%d",x);
}
printf("/n");
}
填空题下列程序的运行结果为 【7】 。 main ( ) int i, j, row=0, colum=0, max, a[3] [4]=1,2,3,4, 9,8,7,6, -10,10,-5,2; max=a[0] [0]; for (i=0;i<3;i++) for (j=0; j<4; j++) if (max<a [i] [j]) max=a[i] [j]; row=i; colum=j; printf("max=%-5d row=%-3d colum=%-3d/n",max, row, colum);
填空题下列给定程序中,函数proc()的功能是:根据输入的3个边长(整型值),判断能否构成三角形:若能构成等边三角形,则返回3;若是等腰三角形,则返回2;若能构成三角形则返回1;若不能,则返回0。
例如,输入3个边长为3,4,5,实际输入时,数与数之间以Enter键分隔而不是逗号。
请修改程序中的错误,使它能得出正确的结果。
注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include<stdio.h>
#include<math.h>
int proc(int a,int b,int c)
{
if(a+b>c
else if(a==b||b==c||a==c)
return 2;
//****found****
else return 3;
}
else return 0;
}
void main()
{
int a,b,c,shape;
printf("/nInput a,b,c:");
scanf("%d%d%d",
printf("/na=%d,b=%d,c=%d/n",a,b,c);
shape=proc(a,b,c);
printf("/n/nThe shape:%d/n",shape);
}
填空题以下程序的输出结果是{{U}} 【16】 {{/U}}。
main()
{ char*p[]={"BOOL","OPK","H","SP"};
int i;
for(i=3;i>0;i--,i--)printf("%c",*p[i]);
printf("/n");}
填空题函数YangHui的功能是把杨辉三角形的数据赋给二维数组的下半三角,形式如下:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
其构成规律是:
①第0列元素和主对角线元素均为1;
②其余元素为其左上方和正上方元素之和;
③数据的个数每行递增1。
请将程序补充完整。
#define N 6
void YangHui(int x[N][N])
{ inti,j;x[0][0]=1;
for(i=1;i<N;i++)
{ x[i][0]=x[i][i]=1;
for(j=1;j<i;j++)
x[i][j]={{U}} 【3】 {{/U}};
}
}
填空题已有文本文件test.txt,其中的内容为:Hello,everyone!。以下程序中,文件test.txt已正确为“读”而打开,由此文件指针fr指向该文件,则程序的输出结果是 【20】 。 #include<stdio.h> main() FILE*fr; char str[40]; … fgets(str,5,fr); printf("%s/n",str); felose(fr);
填空题以下程序可把输入的十进制数以十六进制数的形式输出。
请在横线上填上适当的内容并把横线删除,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序;
main ()
{
char b[17]={"0123456789ABCDEF"};
int c[64] ,d,i=0,base=16;
long n;
printf("Enter a number:/n");
scanf ("%ld",
do {
/*****************found****************/
c[i]=______; i++; n=n/base; }
while (n!=0);
printf("Transmite new base:/n");
for(--i;i>=0;--i)
/***************found*******************/
{ d=c[i];printf("%c",b______);}
printf("/n");
}
填空题在C语言中(以16位PC机为例),一个float型数据在内存中所占的字节数为4;一个 double型数据在内存中所占的字节数为{{U}} 【11】 {{/U}}。
填空题函数fun的功能是计算xn double fun(double x,int n) int i;double y=1; for(i=1;i<=n;i++)y=y*x; return y; 主函数中已正确定义m、a、b变量并赋值,并调用fun函数计算:m=a4+b4-(a+b)3。实现这一计算的函数调用语句为 【12】 。
填空题有以下程序 #include <stdio.h> main() char a[20]= "How are you? ",b[20]; scanf("%s",b);printf("%s%s/n",a,b); 程序运行时从键盘输入:How are you?<回车> 则输出结果为______。
填空题下列程序将二维数组a的行和列元素互换后存放到另一个二维数组b中。请填空。 main() int a[2][3]=1,2,3,4,5,b[3][2],i,j; for(i=0;i<2;i++) for(j=0;j<3;j++) ______;
