day10 --------------------------------------------------------------- 实例017:字符串构成 题目 输入一行字符,分别统计出其中英文字母.空格.数字和其它字符的个数. 分析:看看string模块的使用 str.isalpha 如果字符串中至少有一个字符且所有字符均为字母则返回真值,否则返回假值. str.isspace 如果字符串中至少有一个字符且所有字符均为空白字符则返回真值,否则返回假值. str.isdigit 如果字符…
从键盘上输入字符,(1)分别统计一下其中字母,数字,其他字符的个数, (2)将统计的字母,数字,其他字符的个数以柱状图的形式打印.例如 5 ***** *****     3 *****   *****     2 *****   *****   ***** *****   *****   ***** alp     num     oth 思路解析: 在统计了字母.数字和其他字符的个数之后,分别记作alpN, numN, othN.取三者最大值hMax.分别取alpN, numN, othN与…
#include <stdio.h> #include <ctype.h> using namespace std; /* 题目:输入一行字符,分别统计出其中英文字母.空格.数字和其它字符的个数. */ void count() { //统计个数. ; ; ; ; char curChar; //注意的是,对(一行中)逐个字符进行读取时,'\n'对应ASCII值为10,而不是0,所以需要跟'\n'判断(不同于逐句判断). while((curChar = getchar()) !=…
用记事本建立文件src.dat,其中存放若干字符.编写程序,从文件src.dat中读取数据,统计其中的大写字母.小写字母.数字.其它字符的个数,并将这些数据写入到文件test.dat中. #include<stdio.h>#include<stdlib.h>#include<string.h>int main(){ FILE*fp1,*fp2; char ch; int da=0,xiao=0,shuzi=0,qita=0; if((fp1=fopen("sr…
public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { string input = textBox1.Text.Trim(); if (chkInput(input)) MessageBox.Show("true"); else MessageBox.Show("…
ASCII 码表的对应值,知道 ord('a') 能将字符 'a' 转化为 ASCII 码表上对应的数值,就可以了.其中,数字 0-9 对应的码值为 48-57,大写字母 A-Z 对应 65-90,小写字母 a-z 对应 97-122. 判断的时候应注意:'2' in range(3) 的结果是 False,因为 '2' 是字符,而 range(3) 包含的全是数字. ord('2') in range(3) 的结果则是 True. 代码如下: 1 2 3 4 5 6 7 8 9 10 11 1…
package JingDian; import java.util.Scanner; public class charKind { public static void main(String[] args) { System.out.println("请输入字符串:"); Scanner sc = new Scanner(System.in); //注:Scanner类中的next()方法遇到空格就不进去了,比如说输入haha nene就只会得到haha,空格后面的都被忽略了,因…
package erase; import java.util.Scanner; public class 字符串分类 { public static void main(String[] args) { // TODO Auto-generated method stub int n=0,m=0,s=0;//数字.英文字母.空格和其他字符 Scanner in=new Scanner(System.in); String str=in.nextLine(); char[] stk=new ch…
一直有个疑问输入一行数字存入数组时若不知道数字的个数怎么办,最容易想到的办法就是接收字符然后转化为数字,但这样太过麻烦. 今天上网查了下,说可以用ungetc()函数将字符送回输入流,在这里总结归纳一下 此外还意外的解决了另外一些以前遇到的问题,也是在调试代码时发现的,用此段代码可以用除了空格以外的字符作为分隔符,而且分隔符的长度也可以很长:如输入12qwertyuiop34asdfghjkl123,23zxc45  最后得到的数组为:a[0]=12,a[1]=34,a[2]=123,a[3]=…
就是说输入一行用空格隔开的函数,可是它没说用回车符结束,所以一定要用EOF了 第一种方法: ; char ch; do { scanf("%ld",&a[++t]); } while((ch=getchar())!='\n'&&ch!=EOF); 第二种方法: ll t=; while(scanf("%lld",&a[++t])!=EOF)continue; t--; 总之就是伤心,它就不能说用回车符结尾吗,非要搞那么麻烦,Orz…