c语言程序填空含答案Word文件下载.docx
《c语言程序填空含答案Word文件下载.docx》由会员分享,可在线阅读,更多相关《c语言程序填空含答案Word文件下载.docx(47页珍藏版)》请在冰豆网上搜索。
in.dat"
"
r”);
if(IN==NULL)
{
ReadFILEError"
);
}
OUT=fopen(”out。
dat"
w”);
if(OUT==NULL)
WriteFILEError"
);
for(n=0;
n<
3;
n++)
{
for(m=0;
m〈2;
m++)
fscanf(IN,"
%d”,&
i[m]);
swap(&
i[0],&
i[1]);
fprintf(OUT,"
%d\n”,i[0]);
fprintf(OUT,"
%d\n"
i[1]);
}
fclose(IN);
fclose(OUT);
}
/*-——-----—-—----—-—--———-———---—----—-——--—--—------———-
输入3个数a,b,c,按从小到大的顺序输出。
—
if(n1〉n2)swap(pointer1,pointer2);
if(n1〉n3)swap(pointer1,pointer3);
if(n2>
n3)
voidswap(int*p1,int*p2)
将s所指字符串的反序和正序进行连接形成一个新串放在
t所指的数组中。
例如:
当s所指的字符串的内容为"
ABCD”时,t所指数组中
的内容为"
DCBAABCD”。
d=len(s);
(strlen(s)
for(i=1(i=0);
i<
d;
i++)
t[2*d]='
/0'
(‘\0’);
把20个随机数存入一个数组,然后输出该数组中的
最小值。
其中确定最小值的下标的操作在fun函数中
实现,请给出该函数的定义。
-——----—--—-—————---——-—--—-—-——-————-——-----———*/
#include〈stdio。
h〉
#defineVSIZE20
intvector[VSIZE];
intfun(intlist[],intsize)
/**********Program**********/
/**********End**********/
}
main()
{
inti;
for(i=0;
i〈VSIZE;
i++)
vector[i]=rand();
printf(”Vector[%d]=%6d\n”,i,vector[i]);
}
i=fun(vector,VSIZE);
\nMininum:
Vector[%d]=%6d\n"
i,vector[i]);
}
voidwwjt()
inti,t;
FILE*fp;
fp=fopen(”out。
dat”,"
w"
);
{
fprintf(fp,"
Vector[%d]=%6d\n”,i,vector[i]);
}
t=fun(vector,VSIZE);
\nMininum:
Vector[%d]=%6d\n"
,t,vector[t]);
fclose(fp);
/*—-—---—-----——--—-—-———-——--—-—---——-———————---—--—-———
输出9*9口诀。
for(i=1;
i<
10;
for(j=1;
j〈10;
j++)
printf(”%d*%d=%-3d”,i,j,result);
以下程序把两个数按由大到小的顺序输出来。
swap(int*p1,*p2)(intt)
scanf(”%d%d”,a,b(&
a,&
b));
printf(”max=%d,min=%d\n”,p,q(*p,*q));
求1到100之间的偶数之积。
-—---—-——-—--—---—--—-——---—-—-—---—-—-—-———-—--*/
#include<
stdio.h>
voidwwjt();
doublefun(intm)
/**********Program**********/
/**********End**********/
ji=%f\n"
,fun(100));
wwjt();
FILE*IN,*OUT;
intiIN,i;
doubledOUT;
IN=fopen(”23。
IN"
,”r"
printf(”PleaseVerifyTheCurrerntDir。
.itMayBeChanged"
OUT=fopen("
23.out”,”w"
PleaseVerifyTheCurrentDir。
。
itMayBeChanged"
for(i=0;
i〈10;
fscanf(IN,”%d”,&
iIN);
dOUT=fun(iIN);
%f\n”,dOUT);
fclose(IN);
/*————--—-—----—-—-—--——————-——-—------———-—-——-——-————--
将字母转换成密码,转换规则是将当前字母变成其后的第
四个字母,但W变成A、X变成B、Y变成C、Z变成D.小写字
母的转换规则同样。
while((c=getchar())!
=’\n’)
if((c〉=’a’&&c〈='
z’)||(c>
='
A'
&&
c<
=’Z'
))c=c+4;
if((c〉’Z'
&&c<
Z’+4)||c>
'
z'
)
编写input()和output()函数输入,输出5个学生的数据记录。
#include〈stdio。
#defineN5
structstudent
charnum[6];
charname[8];
intscore[4];
}stu[N];
input(stu)
structstudentstu[];
/**********FOUND**********/
j;
for(i=0;
N;
printf(”\npleaseinput%dof%d\n”,i+1,N);
num:
"
scanf(”%s”,&
stu[i].num);
printf(”name:
scanf(”%s"
,stu[i]。
name);
for(j=0;
j〈3;
/**********FOUND**********/
score%d。
”,j);
%d”,&
stu[i].score[j]);
\n”);
print(stu)
inti,j;
printf(”\nNo。
NameSco1Sco2Sco3\n”);
/**********FOUND**********/
i〈=N;
%-6s%—10s”,stu[i]。
num,stu[i]。
name);
for(j=0;
j〈3;
%-8d”,stu[i]。
score[j]);
printf(”\n"
input();
print();
/*-——-——--—-—-—-——-—-————--———----—-———--——--—-—-—
产生20个[30,120]上的随机整数放入二维数组a[5][4]
中,求每行元素的和.
——-—--———————------———--—-—--—-—--—----—---————-*/
#include"
stdlib。
h”
#include〈stdio.h>
voidrow_sum(inta[5][4],intb[5])
/**********Program**********/
/**********End**********/
voidrow_sum();
inta[5][4],b[5],i,j;
5;
j<
4;
a[i][j]=rand()%(120—30+1)+30;
5;
4;
printf(”%5d"
a[i][j]);
row_sum(a,b);
i〈5;
printf(”%6d"
b[i]);
\n”);
FILE*IN,*OUT;
intm,n;
inti[5][4];
into[5];
in。
dat”,"
r”);
ReadFILEError”);
out。
,”w”);
printf(”WriteFILEError"
for(m=0;
m〈5;
for(n=0;
fscanf(IN,"
%d"
&i[m][n]);
row_sum(i,o);
n〈5;
fprintf(OUT,”%d\n"
,o[n]);
fclose(OUT);
/*--—-—-----—-———-—-——-—-—————---—-——--——------——-----—--
在歌星大奖赛中,有10个评委为参赛的选手打分,分数为
1~100分。
选手最后得分为:
去掉一个最高分和一个最低分
后其余8个分数的平均值.请编写一个程序实现.
&
score);
if(max<
scoremax=score;
if(min>
score)
score:
%d\n"
,(sum-max—min)/8);
Charfun(char*c)fun=c;
return*c
将字符串中的小写字母转换为对应的大写字母,
其它字符不变。
-—-———--—-———-——---------—---—---——--—-———————-—*/
string。
voidchange(charstr[])
/**********Program**********/
/**********End**********/
voidchange();
charstr[40];
gets(str);
change(str);
puts(str);
chari[200];
IN=fopen(”in。
”r”);
ReadFILEError”);
OUT=fopen(”out.dat”,"
%s"
,i);
change(i);
fprintf(OUT,”%s\n”,i);
/*——-————---—-——---————-——————-—-——----—--—-—-—-—————--——
—功能:
考查字符串数组的应用。
输出26个英文字母。
for(i=0;
i<
26;
string[i]=‘A’+i;
printf("
thearrarycontains%s\n”,string);
例如:
输入aSdFG输出为asdfg。
—----——---—---—--—-————--————-———--—----—-———————--—-—*/
#include<
stdio。
/**********FOUND**********/
boolfun(char*c)
if(*c〈='
Z'
&
*c>
=’A’)*c-='
A’-’a'
;
/**********FOUND**********/
/**********FOUND**********/
chars[81],p=s;
gets(s);
while(*p)
*p=fun(p);
/**********FOUND**********/
p++;
putchar(’\n’);
/*------———-—-—————-———-—--—-----—-—---———-————--—
将字符串中的小写字母转换为对应的大写字母,
--——--—---—-———————--—-——---—-—-———--—--————-——-*/
#include”string。
h"
#include<
voidwwjt();
voidchange(charstr[])
/**********Program********
/**********End**********/
charstr[40];
change(str);
FILE*IN,*OUT;
chari[200];
in.dat”,"
out.dat"
,"
i);
change(i);
%s\n”,i);
/*—--——-———-—-——------——--——---——-——-———-————-——---——-—-—
从读入的整数数据中,统计大于零的整数个数和小于零的
整数个数.用输入零来结束输入,程序中用变量i统计大于
零的整数个数,用变量j统计小于零的整数个数。
if(n>
0)i=i+1;
if(n<
0)j=j+1;
scanf(”%d"
&n);
i=%4d\n"
i,j);
实现交换两个整数的值。
voidfun(inta,b(int*a,int*b)
t=at=*a
a=b;
(*a=*b)
b=t;
*b=t
inta,b;
printf(”enter
从键盘上输入任意实数x,求出其所对应的函数值。
z=(x—4)的二次幂(x〉4)
z=x的八次幂(x〉-4)
z=z=4/(x*(x+1))(x>
-10)
z=|x|+20(其他)
——-—-——---——--—-———---————--—-—---—————---—---—-*/
#include〈math.h>
#include〈stdio.h〉
floaty(floatx)
/**********Program**********/
/**********End**********/
floatx;
scanf(”%f”,&x);
printf(”y=%f\n”,y(x));
FILE*IN,*OUT;
intn;
floati;
floato;
r"
out.dat”,”w"
n〈10;
fscanf(IN,”%f”,&
i);
o=y(i);
%f\n”,o);
/*-——--———--———------—--——-——--——--——---—————-----—--——-—
删除字符串中的数字字符。
输入字符串:
48CTYP9E6,则输出:
CTYPE。
voidfun(char*s)
else*s++=*p++;
*s=’\0'
;
给a和b分别输入3和6,输出为a=6b=3
-----—-------—-—-—----——--—-—----——-—-———----——-—-————*/
stdio.h〉
/**********FOUND**********/
voidfun(inta,b)
intt;
/**********FOUND**********/
t=a;
/**********FOUND**********/
a=b;
/**********FOUND**********/
b=t;
inta,b;
entera,b:
”);
scanf(”%d%d"
&a,&
b);
fun(&
a,&
b);
a=%db=%d\n"
a,b);
/*---——---————-----—--—--—————-———---——-—-—--———--
能计算从1开始到n的自然数中偶数的平方的和,n由
键盘输入,并在main()函数中输出.(n是偶数)
-——--——-—-—--—---—-——----—-—-—-—-————--—--—----—*/
intfun(intn)
/**********Program**********/
/**********End**********/
intm;
printf(”Enterm:
,&
m);
printf(”\nTheresultis%d\n"
fun(m));
FILE*IN,*OUT;
intt;
into;
intc;
IN=fopen(”in.dat”,”r”);
printf(”WriteFILEError”);
for(c=1;
c〈=5;
c++)
{
%d"
,&t);
o=fun(t);
,o);
/*-