西工大c语言100题05.docx
《西工大c语言100题05.docx》由会员分享,可在线阅读,更多相关《西工大c语言100题05.docx(6页珍藏版)》请在冰豆网上搜索。
![西工大c语言100题05.docx](https://file1.bdocx.com/fileroot1/2022-12/29/ab916271-005e-46ac-8a42-ad7580f88d26/ab916271-005e-46ac-8a42-ad7580f88d261.gif)
西工大c语言100题05
本次练习的主要语句:
1)一维字符串操作规范语句:
chara[80];
inti;
gets(a);
for(i=0;a[i]!
=‘\0’;i++){
……操作a[i]……}
2)二维字符串输入(输出)规范语句
Charstr[10][80];
for(i=0;i<10;i++)
gets(str[i]);(输出puts(str[i]);)
3)字符串处理函数:
strcpy,strcmp,gets,puts
4)起泡法排序
5)定义函数
6)递归调用
#include
intmain()
{
chari,j,a[200],b[200];
gets(a);gets(b);
for(i=0;a[i]!
='\0';i++);
for(j=0;b[j]!
='\0';j++,i++)
a[i]=b[j];
a[i]='\0';
puts(a);
return0;
}
#include
#include
intmain()
{
chara[4][20],b[20]={'\0'};
inti,j;
scanf("%s%s%s%s",a[0],a[1],a[2],a[3]);
for(j=0;j<3;j++)
for(i=j+1;i<4;i++)
if(strcmp(a[j],a[i])>0)
{strcpy(b,a[j]);
strcpy(a[j],a[i]);
strcpy(a[i],b);
}
printf("%s%s%s%s",a[0],a[1],a[2],a[3]);
printf("\n");
return0;
}
#include
intmain()
{inti,j=1;
intIsP(intn);
for(i=300;i<=400;i++)
if(IsP(i))if(j==1)printf("%d",i),j++;
elseprintf("%d",i);
printf("\n");
return0;
}
intIsP(intn)
{intw;
for(w=2;w<=n/2;w++)
if(n%w==0)return0;
return1;
}
#include"stdio.h"
voidmain()
{
intx,n;
floatp(int,int);
scanf("%d%d",&n,&x);
printf("P%d(%d)=%.2f",n,x,p(n,x));
}
floatp(intn,intx)
{
if(n==0)
return
(1);
elseif(n==1)
return(x);
else
return(((2*n-1)*x-p((n-1),x)-(n-1)*p((n-2),x))/n);
}
#include
intmain()
{chara[200],b[200]={'\0'};
inti,j;
gets(a);
for(i=0;a[i]!
='\0';i++);
for(j=0,i=i-1;i>=0;i--,j++)
b[i]=a[j];
for(i=0;b[i]!
='\0';i++)
a[i]=b[i];
puts(a);
return0;
}
#include
intmain()
{
chara[3][160];
inti,j,n1=0,n2=0,n3=0,n4=0,n5=0,n6=0;
gets(a[0]),gets(a[1]),gets(a[2]);
for(i=0;i<3;i++)
for(j=0;a[i][j]!
='\0';j++)
{if(a[i][j]<0)n1++,j++;
elseif(a[i][j]>='A'&&a[i][j]<='Z')n2++;
elseif(a[i][j]>='a'&&a[i][j]<='z')n3++;
elseif(a[i][j]>='0'&&a[i][j]<='9')n4++;
elseif(a[i][j]=='')n5++;
elsen6++;
}
printf("中文=%d,大写=%d,小写=%d,数字=%d,空格=%d,其它=%d\n",n1,n2,n3,n4,n5,n6);
return0;
}