程序员笔试题之字符串(1)

来源:互联网 发布:sql inset 编辑:程序博客网 时间:2024/05/21 04:23

1.完成字符串的逆序

#include <stdio.h>#include <string.h>int  main(){ char str,ch[]="I am from AnHui"; int  i,j,len; len=strlen(ch); for(i=0,j=len-1;i<j;++i,--j) {  str=ch[i];    ch[i]=ch[j];    ch[j]=str; }  puts(ch); printf("%d\n",sizeof(ch)); printf("%c\n",ch[5]);  return 0;}

这种应该是最简单的了,也很好理解,单纯的C程序。


2.输出一行字,找出大小写字母,空格,数字,其他字符的个数

#include<stdio.h>
#include<strings.h>int main(){int big = 0;int small = 0;int space = 0;int number = 0;int others = 0;printf("please input a str:\n");char a[50];fgets(a,50,stdin);  //stdin 意思是键盘输入 //gets从终端读入是的字符串是用\0结束的,而fgets是以\n结束的      //这里用gets出现空格字符串输入就会结束,导致无法统计空格int i = 0;int len;len = strlen(a);for(i = 0;i<len;i++){if((a[i] >= 'A') && (a[i] <= 'Z'))big++;else if((a[i] >= 'a') && (a[i] <= 'z'))small++;else if((a[i] >= '0') && (a[i] <= '9'))number++;else if(a[i] == ' ')space++;else others++;    //结尾符\0算other}printf("big=%d\nsmall=%d\nspace=%d\nnumber=%d\nothers=%d\n",big,small,space,number,others);return 0;}

输入 asdf HHJ #$^ 654

结果big=3,small=4,space=3,number=3,others=4



阅读全文
0 0
原创粉丝点击