各种字符串处理函数示例基本.docx
《各种字符串处理函数示例基本.docx》由会员分享,可在线阅读,更多相关《各种字符串处理函数示例基本.docx(10页珍藏版)》请在冰豆网上搜索。
各种字符串处理函数示例基本
各种字符串处理函数示例(基本)
部门:
xxx
时间:
xxx
整理范文,仅供参考,可下载自行编辑
示例
1.字符串输出示例。
程序:
#include
voidmain(void>
{
charstr[25]={"Welcometoourcity!
"}。
puts(str>。
puts("Thankyou!
">。
}
结果:
2.字符串输入实例。
<注意比较gets与scanf和puts与printf的区别)
程序:
#include
voidmain(main>
{
charstr[20]。
gets(str>。
puts(str>。
printf("*********\n">。
scanf("%s",str>。
puts(str>。
}
结果:
3.测字符串长度函数strlen<)的使用。
程序:
#include
#include
voidmain(main>
{
chara[10]="program"。
intx,y。
x=strlen(a>。
y=strlen("abc13">。
printf("%d\n%d\n\n",x,y>。
}
结果:
4.字符串连接函数的使用。
程序:
#include
#include
voidmain(main>
{
chars1[20]="Hello",s2[6]="Word"。
puts(s1>。
puts(s2>。
strcat(s1,s2>。
printf("%s\n",s1>。
}
结果:
修改后
程序:
#include
#include
voidmain(main>
{
chars1[5]="Hello",s2[6]="Word"。
puts(s1>。
puts(s2>。
strcat(s1,s2>。
printf("%s\n",s1>。
}
结果:
5.字符串复制函数strcpy的应用。
<将第二个字符串的值拷给第一个)
程序:
#include
#include
voidmain(main>
{
chars1[10]="Program",s2[6]="turbo"。
printf("%s,%s\n",s1,s2>。
strcpy(s1,s2>。
printf("%s,%s\n",s1,s2>。
}
结果:
6.字符串比较函数strcmp函数。
程序:
#include
#include
voidmain(main>
{
intk。
charstr1[20],str2[]="Computerstring"。
gets(str1>。
k=strcmp(str1,str2>。
if(k==0>printf("str1=str2\n">。
if(k>0>printf("str1>str2\n">。
if(k<0>printf("str1。
}
结果:
7.字符串大小写互相转换。
程序:
#include
#include
voidmain(main>
{
chars[]="1a2AB3abc"。
printf("%s\n",strupr(s>>。
printf("%s\n",strlwr(s>>。
}
结果:
4.5典型例题精解1.输入一行字符,统计其中有多少个单词。
单词之间用一个或多个空格隔开。
程序:
#include
#include
voidmain(void>
{
chars[80],c。
inti,n,word。
n=0。
word=0。
gets(s>。
for(i=0。
(c=s[i]>!
='\0'。
i++>
if(c==''>
word=0。
elseif(word==0>
{
word=1。
n=n+1。
}
printf("n=%d\n\n",n>。
}
结果:
2.从键盘任意输入一个字符串,然后按逆序存放后输出。
程序:
#include
#include
voidmain(void>
{
chars[80],ch。
intlen,i。
gets(s>。
len=strlen(s>。
for(i=0。
ii++>
{
ch=s[i]。
s[i]=s[len-i-1]。
s[len-i-1]=ch。
}
printf("s=%4d\n\n",s>。
}
结果:
3.求下列矩阵中两对角线上元素之和。
程序:
#include
voidmain(void>
{
inta[4][4]={{2,5,1,8},{7,1,6,4},{0,2,5,9},{3,0,2,1}}。
b5E2RGbCAP
inti,j,s=0。
for(i=0。
i<4。
i++>
for(j=0。
j<4。
j++>
{
if(i==j>
s+=a[i][j]。
if(i+j==3>
s+=a[i][j]。
}
printf("两对角线元素之和为%d\n\n",s>。
}
结果:
4.查找算法已知一个包含10个整形升序数组成的一维数组a。
现任意输入一个整数x,判断是否在数组a中。
若在,输出其位置<若数组中有多个x,则输出第一次找到的位置),若不在数组中,则给出信息。
p1EanqFDPw
程序:
#include
voidmain(void>
{
inta[10],x,low,high,mid,k,t=0。
printf("inputorderarray\n">。
for(k=0。
k<10。
k++>
scanf("%d",&a[k]>。
printf("inputsearchx:
">。
scanf("%d",&x>。
low=0。
high=9。
while(t==0&&low<=high>
{
mid=(low+high>/2。
if(x==a[mid]>
{
t=1。
break。
}
elseif(x
high=mid-1。
elselow=mid+1。
}
if(t>printf("%d\n",mid>。
elseprintf("nodata!
\n">。
}
结果:
申明:
所有资料为本人收集整理,仅限个人学习使用,勿做商业用途。