[简答题]
给定程序MODI1.C中函数 fun 的功能是:求出数组中最大数和次最大数,并把最大数和a[0]中的数对调、次最大数和a[1]中的数对调。请改正程序中的错误,使它能得出正确的结果。注意:不要改动 main 函数,不得增行或删行,也不得更改程序的结构!
给定源程序:
#include
#define N 20
int fun ( int * a, int n )
{ int i, m, t, k ;
for(i=0;i<2;i++) {
m=0;
for(k=i+1;kif(a[k]>a[m]) k=m;
t=a[i];a[i]=a[m];a[m]=t;
}
}
main( )
{ int x, b[N]={11,5,12,0,3,6,9,7,10,8}, n=10, i;
for ( i=0; iprintf("/n");
fun ( b, n );
for ( i=0; iprintf("/n");
}
[简答题]
阅读以下说明和C++程序,将应填入(n)处的字句写在对应栏内。
【说明】
下面程序的功能是计算并输出某年某月的天数,函数IsLeap Year( )能够判断是否是闰年。
【C++程序】
#
include < iostream >
using namespace std;
(1)
Month {Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec
};
class Date {
public:
Date(
int year, Month m_ month) {
this→year = year;
if(
(2) ) month: Jan;
else month = m_ month;
};
~Date( ){};
bool IsLeap Year( ) {
return ((year%4= =0 &&year% 100 ! =0)||
year%400= =0);
};
int
CaculateDays( ) {
switch(m_month )
{
case (3)
;{
if (4) return 29;
else return 28;
}
case Jan: case Mar: case May: case Jul: case Aug: case Oct: case Dec:
return 31;
case Apr: case Jun: case
Sop: case Nov: return 30;
}
}
private:
int year;
Month month;
};
void
main( ) {
Date day(
[填空题]下面程序的功能是:用Array函数建立一个含有8个元素的数组,然后查找并在文本框Text1中输出该数组中各元素的最小值。请依据上述功能将程序补充完整。
Option Base 1
Private Sub Command1_Click( )
Dim arr1( )
Dim Min As Integer,i As Integer
arr1=Array(12,435,76,-24,78,54,866,43)
Min=______
For i=2 To 8
If arr l(i)<Min Then______
Next i
Text1=Min
End Sub
[填空题]【说明】
下面是一个Applet程序,程序的功能是在显示面板上输出字符串。当html页面被其他窗口遮挡后再次显示时,请给出输出结果。
import java.awt.*;
import java. (1) . *;
public class MyApplet (2) Applet
public void (3) (Graphics g)
g.drawString(tip,20,40);
tip ="I am Java Applet";
public void init( )
tip ="welcome";
private (4) tip;
<html>
<head>
<title> A Simple Applet </title>
</head>
<body>
<applet code="MyApplet.class" width=800 height=400>
</applet>
</body>
</html>
网页输出 (5)
[填空题]【说明】
下面是一个Applet程序,程序的功能是在显示面板上输出字符串。当html页面被其他窗口遮挡后再次显示时,请给出输出结果。
import java.awt.*;
import java. (1) . *;
public class MyApplet (2) Applet {
public void (3) (Graphics g) {
g.drawString(tip,20,40);
tip ="I am Java Applet";
}
public void init( ) {
tip ="welcome"; }
private (4) tip;
}
<html>
<head>
<title> A Simple Applet </title>
</head>
<body>
<applet code="MyApplet.class" width=800 height=400>
</applet>
</body>
</html>
网页输出 (5)
[简答题][函数2.1说明]
下面程序的功能是计算x和y的最小公倍数。
[函数2.1]
main( )
{ int m,n,d,r;
seanf("%d %d",&m,&n);
if(m<n) {r=m;m=n;n=r;}
(1) ;
while (d%n! =0) (2) ;
printf("%d/n",d);
}
[函数2.2说明]
下述程序接收键盘输入,直到句点“.”时结束。输入的字符被原样输出,但连续的空格输入将转换成一个空格。
[函数2.2]
#include <stdio.h>
main( )
{ char c,preChar=’/0’;
c = getchar( );
while(c! = ’.’){
if( (3) ) putchar(c);
else if(preChar! =’ ’) putchar(c);
(4) ;
c= (5) ;
}
}
[填空题]以下程序调用随机函数得到N个20以内的整数放在s数组中。函数fun的功能是找出s数组中的最大数(不止一个)所在下标传回主函数进行输出,并把最大值作为函数值返回,请填空。
#define N 30
man( )
int s[N],d[N],i,k,m;
for(i=0,i<N;i++)s[i]=rand( )%20;printf("%3d",s[i]);
m=fun( 【13】 );
printf("m=%d/n",m);
printf(”The index ;/n");
for(i=0;i<k;i++)printf("%4d",d[i]);
printf("/n/n");
fun(int*w,int*d,int * k)
int i,j,m=0,v;
for(i=0;i<N;i++)
if(w[i]>w[m]) 【14】 ;
v=w[m];
for(i=0,j=0;i<N;i++)
if(w[i]==v) 【15】 ;
*k= 【16】 ;
return 【17】 ;
[简答题][函数2.1说明]
下面程序的功能是计算x和y的最小公倍数。
[函数2.1]
main( )
int m,n,d,r;
seanf("%d %d",&m,&n);
if(m<n) r=m;m=n;n=r;
(1) ;
while (d%n! =0) (2) ;
printf("%d/n",d);[函数2.2说明]
下述程序接收键盘输入,直到句点“.”时结束。输入的字符被原样输出,但连续的空格输入将转换成一个空格。
[函数2.2]
#include <stdio.h>
main( )
char c,preChar=’/0’;
c = getchar( );
while(c! = ’.’)
if( (3) ) putchar(c);
else if(preChar! =’ ’) putchar(c);
(4) ;
c= (5) ;
[简答题][说明]
下面程序的功能是将多个文件的内容同时输出在屏幕上,文件名都作为参数传入,命令执行为:cat file1 file2 file3,即同时输出file1、file2、file3的内容。
[程序]
#include <stdio.h>
#include <stdlib.h>
void fileeopy(FILE * ifp, FILE *ofp)
{ int c;
while((c=getc( (1) ))!=EOF) pute(c, (2) ); }
int main(int arge, char *argv[])
{ FILE *fp;
while( (3) >0)
if((fp=fopen( (4) ,"r"))= =NULL){
printf("Can’t open file/n");
return 1;
}
else {
filecopy(fp, stdout);
fclose( (5) );
}
return 0;
}
[简答题][说明]
下面程序的功能是将多个文件的内容同时输出在屏幕上,文件名都作为参数传入,命令执行为:cat file1 file2 file3,即同时输出file1、file2、file3的内容。
[程序]
#include <stdio.h>
#include <stdlib.h>
void fileeopy(FILE * ifp, FILE *ofp)
int c;
while((c=getc( (1) ))!=EOF) pute(c, (2) );
int main(int arge, char *argv[])
FILE *fp;
while( (3) >0)
if((fp=fopen( (4) ,"r"))= =NULL)
printf("Can’t open file/n");
return 1;
else
filecopy(fp, stdout);
fclose( (5) );
return 0;
[填空题]以下程序中函数f的功能是在数组x的n个数(假定n个数互不相同)中找出最大数和最小数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。请填空。
#include <stdio.h>
void f(int x[], int n)
int p0,p1,i,j,t,m;
i=j=x[0];p0=p1=0;
for(m=0;m<n;m++)
if(x[m]>i) i=x[m];p0=m;
else if(x[m]<j) j=x[m];p1=m;
t =x[p0];x[p0]=x[n-1];x[n-1]=t;
t=x[p1];x[p1]=x[0];______=t;
main( )
int a[10],u;
for(u=0;u<10;u++) scanf("%d",&a[u]);
f(a,10);
for(u=0;u<10;u++)printf("%d",a[u]);
printf("/n");