字符串
1、用插入法将如下字符串按升序输出,DV,DVD,VCD,ROM,RAM,DDR,TCP,IP,BUS.
#include <string.h>
#include <stdio.h>
main()
{
char a[9][4]= {"DV","DVD","VCD","ROM","RAM","DDR","TCP","IP","BUS"},b[4];
int i,j;
for(i=0; i<9; i++)
printf("%s ",a[i]);
printf("\n");
for (i=1; i<9; i++)
{
J= ;
;
while ( )
{
;
字符串函数编程题 j--;
}
;
}
for(i=0; i<9; i++)
printf("%s ",a[i]);
printf("\n");
}
2、下列程序的功能是:将读入的一行字符中的小写全部转换成对应的大写字母后第二个字母,其中字母Y转换成A、字母Z转换成B.
#include <stdio.h>
#include <string.h>
main()
{
char a[20];
int n,i;
gets(a);
;
printf("%s\n",a);
for(i=0;i<n;i++)
{
if (a[i]>='a'&&a[i]<='z')
{
if(a[i]>90&&a[i<=92])
}
}
printf("%s\n",a);
}
3、十进制数转换成二进制数
#include <stdio.h>
#include <string.h>
#include <math.h>
void main()
{
int n, m, i=0;
char s[16];
#include <string.h>
#include <math.h>
void main()
{
int n, m, i=0;
char s[16];
printf ("Please input a num: ");
scanf("%d", &n);
n = abs(n);
m = n;
while ( )
{
;
m /= 2;
}
;
for (; i>=0; i--)
printf("%d", s[i]);
printf("\n");
}
scanf("%d", &n);
n = abs(n);
m = n;
while ( )
{
;
m /= 2;
}
;
for (; i>=0; i--)
printf("%d", s[i]);
printf("\n");
}
4、将N个元素的字符串数组中,含有”COM”(大小写)元素全部显示出来
#include <stdio.h>
#include <string.h>
void main()
{
char s[][20] = {"hello", "acond", "command", "this", "heauly", "dbcCOMD", "DDcOM", "fullbloom"};
int i, n = sizeof(s)/sizeof(char[20]);
char str[10];
for (i=0; i<n; i++)
{ ;
if (strstr(strlwr(str), "com") != 0)
puts(s[i]);
}
}
5、输入任一15位以内的正整数,即能输出组成此数的所有数字之和SUM.
#include <stdio.h>
#include <string.h>
main()
{
char arr[30];
int i,n,sum;
;
puts(arr);
n=strlen(arr);
sum=0;
for(i=0;i<n;i++)
;
printf("%d",sum);
}
6、输入一行文字,统计其中单词的个数以及英文字母(不区分大小字)出现的频率。为简化运算,规定单词之间由空格做间隔,且文本行中不含有其他字符。
方法一、
#include <stdio.h>
#include <string.h>
main()
{
char arr[40];
int n,i,word=0,count=0,m[26]= {0},k;
gets(arr);
puts(arr);
n=strlen(arr);
for(i=0; i<n; i++)
if ( )
word=0;
else if( )
{
word=1;
;
}
printf("%d\n",count);
strlwr(arr);
for (i=0; i<n; i++)
{
k= ;
;
}
for (i=0;i<26;i++)
if (m[i]!=0)
printf("%c出现的次数为:%d\n",97+i,m[i]);
}
方法二、
#include <stdio.h>
#include <string.h>
main()
{
char arr[40];
int n,i,word=0,count=0,m[26]= {0},k;
gets(arr);
puts(arr);
n=strlen(arr);
for(i=0; i<n; i++)
{
while(arr[i]==' ')
i++;
while(arr[i]!=' '&&arr[i])
i++;
;
}
printf("%d\n",count);
strlwr(arr);
for (i=0; i<n; i++)
{
k=arr[i]-97;
m[k]++;
}
for (i=0; i<26; i++)
if (m[i]!=0)
printf("%c出现的次数为:%d\n",97+i,m[i]);
}
7、有一段文字“This is a disk.This is a desk.编程出“is”出现的次数和在字符串的位置。
#include <stdlib.h>
#include <time.h>
#include <stdio.h>
main()
{
int i, j, k=0;
char s1[100], s2[10], s3[11]= {0}, *p=NULL;
printf("Please input text string: ");
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论