pascal输入一串字符,以'?'结束.统计其中字母个数,数字个数,其它符号个数

作者&投稿:睢良 (若有异议请与网页底部的电邮联系)
用c语言键盘输入一串以回车结束的字符,统计其中的英文字母的个数,数字符号的个数,其他字符的个数,急~

#include
void main() { char str[256],*p; int a,b,c;
gets(str); p=str; a=b=c=0;
while ( *p ) {
if ( (*p)>='A' && (*p)<='Z' ) a++;
else if ( (*p)>='a' && (*p)<='z' ) a++;
else if ( (*p)>='0' && (*p)<='9' ) b++;
else c++;
p++;

}
printf("英文字母%d,数字%d,其他%d
",a,b,c);
}

主要代码:
char s[1000];
int i,j=0;
scanf("%s",s);
for(i=0;i<1000;i++)
{
if(s[i]=='*') //for循环查找字符*的数量
j++;//利用变量j计数
}

var a:array['0'..'9']of longint;
b:array['a'..'z']of longint;
c:array['A'..'Z']of longint;
zm,sz,fh,i:longint;
j:char;
s:ansistring;
flag:boolean;
begin
read(s);
i:=1;
while s[i]<>'?' do
begin

if (ord(s[i])-48<=9)and(ord(s[i])-48>=0) then begin inc(a[s[i]]); flag:=true;end;
if (ord(s[i])-97<=25)and(ord(s[i])-97>=0) then begin inc(b[s[i]]);flag:=true;end;
if (ord(s[i])-64<=25)and(ord(s[i])-64>=0) then begin inc(c[s[i]]);flag:=true;end;
if not(flag) then inc(fh);
flag:=false;
inc(i);
end;
for j:='0' to '9' do inc(sz,a[j]);
for j:='a' to 'z' do inc(zm,b[j]);
for j:='A' to 'Z' do inc(zm,c[j]);
writeln('ShuZi ',sz);
writeln('ZiMu ',zm);
write('FuHao ',fh);
end.


如何把一串ASCII码转为汉字的反函数
用chr,实际上不用这么麻烦 SQL> select 'test 2 a' from dual;'TESTA'--- test a SQL> select replace('test 2 a',chr(10)) from dual;REPLACE('TESTA',CHR(10))--- testa SQL>

最早的表情包是什么时候
最早的表情包可以追溯到1982年。这一年,美国卡内基梅隆大学的法尔曼教授在电子公告板上输入了一串ASCII字符::-)。这个简单的符号组合旨在表达一种开玩笑的情绪,很快就流行开来,被广大网友用来在文字交流中传达简单的情绪。从这个符号开始,人们意识到可以用简单的字符组合来代表并传达复杂的情感,这可以说...

人类上第一个网络表情包是什么
人类历史上第一个网络表情包可以追溯到1982年9月19日,由卡内基·梅隆大学的教授斯科特·法尔曼(Scott Fahlman)在电子留言板上首次输入的一串ASCII字符:“:-)”。这个简单的符号组合标志着人类历史上第一个符号表情的诞生,开启了表情包发展的新篇章。这个笑脸表情由冒号、连字号和半截括号组成,形式简单...

在vb中如何把一串ascii码字符串转换为中英文
用chr函数试试,例如print cha$(48)

从键盘任意输入一串字符,直至输入“#”字符代表结束,请编程统计输入的...
不知道你是要用什么语言做...不过思路都是一样的.跟据语言的不同,把字符串转为字符数组,或直接遍历字符串中的每个字符,判定每个字符的ascii码区域属于哪个区间(大写字母\/小写字母\/数字).设三个整型常量初始值为0,在遍历的判定分支中做++.

关于字符串的ASCII值
这要看你用什么算法,在程序中你可以把字符串的 ASCII 值看做是字符串中所有字符的ASCII值相加,不过这个相加可不是得出一个和值,而是得到一串代码,例如:字符串 “ABC”(不含引号)的代码就是:656667(十进制)或者414243(十六进制)。编程的算法是自己决定的,想怎么组合就怎么组合。

使用台达的PLC接收到一串ASCII码,组成有正负号、数值和小数点,如何把这...
AS系列使用指令$FVALP指令,配合字符串分割split指令,很好使用。HEX指令要麻烦一些,还要自己转换

C++ 报文加密:输入一串字符,将其中的大写字母加3,小写字母减5,再输 ...
哎。。这不是就是ASCII值吗。。每个字母对应一个数字 你直接将数字+3后 在对应的转换为字母 小写同样。不就OK了吗。。。楼主刚学C++吧。。

c++怎么将一串数字转化成ascii字符
首先,你写的这个程序就是错的,没有输入的代码,i是个随机的初始值。其次,字符串输出ASCII码需要用到数组和循环语句,如果已经学到了,用法很简单。输入用scanf的%s接收字符串到数组;输出用循环语句逐一输出(int)a[i]即可。

汇编语言:输入一串数字字母字符串,把其中的数字去掉,把大写改小写,小写...
下列程序符合题目要求:;=== DATA SEGMENT MSG1 DB 13, 10, 'Input a STR : $'MSG2 DB 13, 10, 'The STR is: $'I1_L DB 100 I1_N DB ?I1_B DB 100 DUP (?)I2_B DB 100 DUP (?)DATA ENDS ;--- CODE SEGMENT ASSUME CS:CODE, DS:DATA...

乌什县13042425651: Pascal编程:输入一串字符,字符个数不超过255,且以'.'结束.判断他是否构成回文,求大师解答 -
姬友益肾: var s:string; i,j:integer; begin readln(s); i:=1; j:=length(s)-1; while (i<j )and(s[i]=s[j]) do begin inc(i); dec(j) end; if i=j then writeln('Yes') else writeln('No'); end.

乌什县13042425651: 输入一串字符,以?结束,统计各字幕出现的次数……用pascal... -
姬友益肾: ogram cc; var a:array['a'..'z']of longint; {存相应的字母数} s:string;t,max,min:longint; c,m:char; begin readln(s); for t:=1 to length(s) do if (s[t]>='a')and(s[t]='z') then inc(a[s[t]]); {先统计各个字母的个数,由于LZ题目中只有小写字母,这里就只处理小...

乌什县13042425651: 高手请进pascal语言 输入三个字符,输出每个字符的序号,然后反向输出者三个字符,求序号用ord函数 -
姬友益肾: var i,j,k:longint; a,b,c:char; begin readln(a,b,c); writeln(ord(a),' ',ord(b),' ',ord(c)); writeln(c,b,a); end.

乌什县13042425651: free pascal编程:输入一串以'!'结束的字符,按逆序输出.(用递归做) -
姬友益肾: procedure rev; var c:char; begin read(c); //读一字符 if c'!' then rev; //如本行未结束,则递归 write(c); //输出字符c end; begin rev; end.

乌什县13042425651: Pascal输入字符串数组输出怎样做
姬友益肾: 只要输入/出,参考下array ofstring;//字串组i=1to3doreadln(s );//输入串fori1to3dowriteln(s );//输出串end.

乌什县13042425651: 急求急求 用pascal语言 输入一串字符串,要求程序按输入时的逆序把这个字符串打印出
姬友益肾: var i:integer; s:string; begin readln(s); for i:=length(s) downto 1 do write(s[i]); writeln; end.

乌什县13042425651: 用pascal语言编程:输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的
姬友益肾: program df; var s:string; i,z,k,sh,q:longint; begin z:=0; k:=0; sh:=0; q:=0; readln(s); for i:=1 to length(s) do if s[i] in ['a'..'z','A'..'Z'] then z:=z+1 else if s[i]=' ' then k:=k+1 else if s[i] in ['1'..'9'] then sh:=sh+1 else q:=q+1; writeln('you ',z,' ge zi mu'); writeln('you ',...

乌什县13042425651: pascal语言:输入一串字符,比较出现最多的数字,如果两个数字次数一样一样,就从小到大换行输出. -
姬友益肾: 楼主您好!vars:string;i,j,x,l:longint;a,w:array[1..9] of longint;beginreadln(s);for i:=1 to length(s) dobeginval...

乌什县13042425651: 用PASCAL语言求回文数问题
姬友益肾: ls显然错..比如1122,按照你的操作顺序的话就是1进1出2进2出,最终也能得到空栈,但1122显然不是回文.. 这个是我写的程序,因为不知道数据范围,所以用了string,如果数据太大的话建议改成ansistring.. var a:char; s1,s2:string; ...

乌什县13042425651: pascal输入三个字符输出每个字符的序号然后反向输出这三个字符
姬友益肾: var c:array[1..3]of char; i:longint; begin for i:=1to 3do read(c[i]); for i:=1to 3do writeln(c[i],':',ord(c[i])); for i:=3downto 1do write(c[i]); end. 你是初学者吧!

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网