份二C题填空答案文档格式.docx
- 文档编号:5677202
- 上传时间:2023-05-05
- 格式:DOCX
- 页数:121
- 大小:1.27MB
份二C题填空答案文档格式.docx
《份二C题填空答案文档格式.docx》由会员分享,可在线阅读,更多相关《份二C题填空答案文档格式.docx(121页珍藏版)》请在冰点文库上搜索。
i<
N;
i++)
{q=(NODE*)malloc(sizeof(NODE));
data=a[i];
if(h->
next==NULL)h->
next=p=q;
else{p->
next=q;
p=q;
returnh;
voidoutlist(NODE*h)
{NODE*p;
p=h->
if(p==NULL)printf("
ThelistisNULL!
\n"
);
else
{printf("
\nHead"
do
->
%d"
p->
data);
p=p->
while(p!
=NULL);
printf("
End\n"
main()
{NODE*head;
inta[N]={0,10,4,2,8,6};
head=creatlist(a);
\nTheoriginallist:
outlist(head);
fun(head);
\nThelistaftersorting:
2
#defineM3
#defineN4
voidfun(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<
j++)
if(rmax<
a[i][j]){
rmax=a[i][j];
c=__1__;
}j/*下面看出c作为列号,所以c=j*/
find=1;
k=0;
while(k<
M&
find){
if(k!
=i&
a[k][c]<
=rmax)find=__2__;
0/*find作为标志,值只能是1or0,此处之前find=1,所以现在改变为0*/
k++;
if(find)printf("
find:
a[%d][%d]=%d\n"
i,c,a[i][c]);
__3__;
i++;
/*补充完while大循环,若无i++,则循环不能结束*/
if(!
find)printf("
notfound!
{intx[M][N],i,j;
Enternumberforarray:
M;
for(j=0;
j++)scanf("
&
x[i][j]);
Thearray:
{for(j=0;
j++)printf("
%3d"
x[i][j]);
\n\n"
fun(x);
3
string.h>
#defineM5
#defineN20
intfun(char(*ss)[N],int*n)
{inti,k=0,len=N;
___1___;
i++)N/*i是行,所以小于M*/
{len=strlen(ss[i]);
if(i==0)*n=len;
if(len___2___*n)>
/**n来存放大的长度,谁比它大,它就要谁*/
{*n=len;
k=i;
return(___3___);
k/*k是最长的字符串的下标*/
{charss[M][N]={"
shanghai"
"
guangzhou"
beijing"
tianjing"
chongqing"
};
intn,k,i;
\nTheoriginalstringsare:
i<
i++)puts(ss[i]);
k=fun(ss,&
n);
\nThelengthofshorteststringis:
%d\n"
n);
\nTheshorteststringis:
%s\n"
ss[k]);
4
voidfun(char*s,char*p)
{inti,j,n,x,t;
n=0;
s[i]!
='
\0'
;
i++)n++;
for(i=1;
n-2;
i=i+2){
___1___;
t=i/*设置t为i所在位置*/
for(j=___2___+2;
n;
j=j+2)t/*j从第二个奇数位置开始依次比较*/
if(s[t]>
s[j])t=j;
if(t!
=i)
{x=s[i];
s[i]=s[t];
s[t]=x;
for(i=1,j=0;
i=i+2,j++)p[j]=s[i];
p[j]=___3___;
‘\0’/*字符串最后补’\0’作为结束*/
{chars[80]="
baawrskjghzlicda"
p[50];
\nTheoriginalstringis:
s);
fun(s,p);
\nTheresultis:
p);
5
voidfun(char*s,int*t)
{inti,n;
___1___!
=0;
i++)s[i]/*下标指向的内容不是0的话,继续循环*/
if(s[i]>
0'
s[i]<
=___2___)n++;
‘9’/*s[i]的范围是‘0’到‘9’*/
___3___;
*t=n/*循环结束*t取n的值*/
abcdef35adgh3kjsdf7"
fun(s,&
t);
t);
6
unsignedlongfun(unsignedlongn)
{unsignedlongx=0;
while(n)
{t=n%10;
if(t%2==__1__)0/*t%2==0说明t是偶数*/
x=__2__+t;
x*10/*让x进位到10位,让t为个位数,比如3和2组成一个数3*10+2正好是32,*/
n=__3__;
n/10/*n/10让n变小一位,通过循环将n所有的数都拿出来*/
returnx;
{unsignedlongn=-1;
while(n>
99999999||n<
0)
Pleaseinput(0<
n<
100000000):
"
scanf("
%ld"
\nTheresultis:
%ld\n"
fun(n));
7
#defineN9
intfun(inta[],intn)
{inti,j;
j=0;
for(i=0;
if(a[i]%2==___1___)1/*奇数判断*/
{
a[j]=a[i];
___2___;
j++/*a[j]赋值后j++*/
return___3___;
j/*j作为下标,可以用来计个数*/
{intb[N]={9,1,4,2,3,6,5,8,7},i,n;
\nTheoriginaldata:
i++)printf("
%4d"
b[i]);
n=fun(b,N);
\nThenumberofodd:
%d\n"
n);
\nTheoddnumber:
8
ctype.h>
intfun(char*s)
{char*lp,*rp;
lp=__1__;
s/.*lp指向字符串最开头正好是s所指向的位置*/
rp=s+strlen(s)-1;
while((toupper(*lp)==toupper(*rp))&
(lp<
rp)){
lp++;
rp__2__;
}--/*lp++rp--lp向后移动rp向前移动*/
if(lp<
rp)__3__;
return0/*当循环结束,看看那个条件结束的,如果是lp<
rp则比较到了最后,如果是(toupper(*lp)==toupper(*rp)结束,则证明有*lp*rp不相同,此时不是回文*/
elsereturn1;
{chars[81];
Enterastring:
%s"
if(fun(s))printf("
\n\"
%s\"
isaPalindrome.\n\n"
elseprintf("
isn'
taPalindrome.\n\n"
9
voidfun(int*a,intn)
{inti;
if(___1___==0)i%5/*每行输出几个数,就和几求余*/
___2___"
\n/*每五个输出换行*/
%d"
___3___);
a[i]/*输出数据*/
{inta[100]={0},i,n;
n=22;
i++)a[i]=rand()%21;
fun(a,n);
10
intfun(intx)
{intn,s1,s2,s3,t;
t=100;
while(t<
=__1__){999/*t的范围是0---999*/
s1=t%10;
s2=(__2__)%10;
s3=t/100;
t/10/*个位数是t%10十位数是t/10%10百位数是t/100*/
if(s1+s2+s3==__3__)x/*各位数字之和是输入的x的值*/
n++;
t++;
returnn;
{intx=-1;
while(x<
Pleaseinput(x>
0):
x);
fun(x));
11
doublefun(intn)
{inti,k;
doubles,t;
s=0;
k=__1__;
1/*根据第一项定k的初值为1*/
=n;
i++){
t=__2__;
2*i/*t*t做分子可以得出t=2*i*/
s=s+k*(2*i-1)*(2*i+1)/(t*t);
k=k*__3__;
(-1)/*k每次乘以-1每项变正负号*/
returns;
{intn=-1;
while(n<
Pleaseinput(n>
%f\n"
12
#defineN80
voidfun(char*s,intn,char*t)
{intlen,i,j=0;
len=strlen(s);
if(n>
=len)strcpy(__1__);
t,s/*将s复制给t*/
else{
for(i=len-n;
=len-1;
i++)t[j++]=__2__;
s[i]/*根据条件将s的内容给t*/
t[j]=__3__;
‘\0’/*字符串最后加’\0’结束*/
{chars[N],t[N];
intn;
gets(s);
printf("
Entern:
"
fun(s,n,t);
Thestringt:
puts(t);
13.
intfun(char*s,char*t)
{intn=0;
while(*s)
{if(*s<
97){
*(t+n)=__1__;
}*s/*如果*s小于97将*s放入t所指向的数组中*/
__2__;
s++/*s指针后移配合while循环*/
*(t+n)=0;
return__3__;
n/*返回t所指向数组中的数据个数*/
{chars[81],t[81];
\nEnterastring:
gets(s);
n=fun(s,t);
\nThereare%dletterwhichASCIIcodeislessthan97:
n,t);
14
voidfun(char*s,inta,doublef)
{
__1__fp;
FILE*/*定义文件指针格式,这个必须记住(必须的)*/
charch;
fp=fopen("
file1.txt"
"
w"
fprintf(fp,"
%s%d%f\n"
s,a,f);
fclose(fp);
r"
\nTheresult:
ch=fgetc(fp);
while(!
feof(__2__)){fp/*feof()函数是判断文件是否结束,如果结束,返回0,函数的参数是判断的文件的文件指针*/
putchar(__3__);
}ch/*输出ch*/
putchar('
\n'
{chara[10]="
Hello!
intb=12345;
doublec=98.76;
fun(a,b,c);
15
#defineN5
voidfun(int(*a)[N],intk)
{inti,j,p,temp;
for(p=1;
p<
=__1__;
p++)k/*这个地方的条件判断必须看下面循环体的作用是什么,通过程序我们可以看出,循环体的作用是将最后一列放到开头,也就是左移一列。
那么我们要左移k次,所以条件是p<
=k(注意,p=1开始的)*/
{temp=a[i][0];
j++)a[i][j]=a[i][j+1];
N-1/*j<
N-1表示先通过for循环左移N-1次,然后把temp放到最后,完成循环体功能。
*/
a[i][N-1]=__3__;
temp/*注意temp内存放的是第一个内容,在以后完成之后,我们将其放到每行的最后*/
main()
{intx[M][N]={{1,2,3,4,5},{1,2,3,4,5},{1,2,3,4,5}},i,j;
Thearraybeforemoving:
fun(x,2);
Thearrayaftermoving:
16
#include<
voidfun(inta[],intn)
{inti,j,max,min,px,pn,t;
n-1;
i+=2)
max=min=___1___;
a[i]/*设置循环maxmin的值都为a[i
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 填空 答案
![提示](https://static.bingdoc.com/images/bang_tan.gif)