三级数据库题目Word文档格式.docx
《三级数据库题目Word文档格式.docx》由会员分享,可在线阅读,更多相关《三级数据库题目Word文档格式.docx(21页珍藏版)》请在冰豆网上搜索。
for(k=j+1;
k<
strlen(xx[i]/2;
k++))
{
}
}
}
}
voidmain()
readDat();
jsSort();
writeDat();
voidreadDat()
FILE*in;
inti=0;
char*p;
in=fopen("
in.dat"
"
r"
);
while(i<
20&
&
fgets(xx[i],80,in)!
=NULL){
p=strchr(xx[i],'
\n'
if(p)*p=0;
i++;
fclose(in);
voidwriteDat()
FILE*out;
inti;
out=fopen("
out.dat"
w"
for(i=0;
i++){
printf("
%s\n"
xx[i]);
fprintf(out,"
fclose(out);
3.
以下程序也是对的:
voidcountValue(int*a,int*n)
intnum=0;
*n=0;
for(i=1;
i<
=1000;
i++)
if((i%7==0||i%11==0)&
(!
(i%7==0&
i%11==0)))
a[num++]=i;
(*n)++;
//一定要加括号,否则就错。
conio.h>
voidwriteDAT();
inti,j,temp;
*n++;
num-2;
for(j=i+1;
num-1;
if(a[i]>
a[j])
temp=a[i];
a[i]=a[j];
a[j]=temp;
main()
intaa[1000],n,k;
countValue(aa,&
n);
for(k=0;
n;
k++)
if((k+1)%10==0)printf("
%5d\n"
aa[k]);
elseprintf("
%5d"
writeDAT();
voidwriteDAT()
FILE*fp;
fp=fopen("
if((k+1)%10==0)fprintf(fp,"
elsefprintf(fp,"
%5d"
fclose(fp);
4.
#defineMAX200
inta[MAX],b[MAX],cnt=0;
intisprime(intm)
for(i=2;
=m/2;
if(m%i==0)return0;
return1;
voidjsVal()
inti,j;
inta1,a2,a3,a4;
MAX;
{//取位错了,看答案
a1=a[i]/10;
a2=a[i]/100%10;
a3=a[i]/1000%100;
a4=a[i]/10000;
if(isprime(a4*10+a2)&
isprime(a3+a1*10)&
a4!
=0&
a1!
=0)
b[cnt++]=i;
//是把a[i]给b[cnt]
i++)fscanf(fp,"
%d"
&
a[i]);
jsVal();
满足条件的数=%d\n"
cnt);
cnt;
i++)printf("
%d"
b[i]);
\n"
fprintf(fp,"
%d\n"
i++)fprintf(fp,"
5.
inta[300],cnt=0;
doublepjz1=0.0,pjz2=0.0;
jsValue()
//不要定义为a,b,c,d;
因为a是数组首地址。
doublesum=0.0,sum2=0.0;
300;
a1=a[i]%10;
a2=a[i]%100/10;
a3=a[i]%1000/100;
a4=a[i]%10000/1000;
if(a1-a4-a3-a2>
0)
cnt++;
sum+=a[i];
else
sum2+=a[i];
pjz1=sum/cnt;
pjz2=sum2/(300-cnt);
jsValue();
cnt=%d\n满足条件的平均值pzj1=%7.2lf\n不满足条件的平均值pzj2=%7.2lf\n"
cnt,pjz1,pjz2);
%d,"
%d\n%7.2lf\n%7.2lf\n"
6.
for(i=5;
{仔细核对符号,不要粗心
if(a[i]>
a[i-1]&
a[i]>
a[i-2]&
a[i-3]&
a[i-4]&
a[i-5]&
a[i]%2==0)
b[cnt++]=a[i];
cnt-1;
if(b[i]<
b[j])从大到小,注意!
!
temp=b[i];
b[i]=b[j];
b[j]=temp;
7.
以下答案是错的,没看清题目,是要计算后是否小于等于32,不是计算前,最好借助中间变量
voidencryptChar()
50;
80;
if((xx[i][j]%2)==0||(xx[i][j]<
=32))
else
xx[i][j]=(xx[i][j]*11)%256;
//xx[i][j]=1xx[i][j]*1%256;
以下答案也是对的,没借助中间变量
//inttemp;
//temp=(xx[i][j]*11)%256;
if((xx[i][j]%2)==0||(xx[i][j]*11)%256<
=32)
//xx[i][j]=1xx[i][j]*1%256;
总结:
考上机,要切记几点:
1.排序的算法,用选择排序
2.数位的分解,要牢记
3.什么奇偶啊,素数啊,求和啊,平均啊等等
4.尽量少定义变量,用题目给的变量
5.考前注意以前的小细节,不要错,什么指针的,数组的,如上述的(*n)++,要加括号
6.自然数从1开始
7.if(b[i]<
8.if(b[i]>
b[j])从小到大,注意!
9.认真仔细核对结果,确保无误