C语言程序设计 从键盘输入一个字符串,将其中所有的数字字符抽出,按原顺序组成一个新串并输出。

C语言程序设计 从键盘输入一个字符串,将其中所有的数字字符抽出,按原顺序组成一个新串并输出。,第1张

#include "stdio.h"

int main(void){ 

char s[100],ns[100] 

int i,j 

printf("Please intput a string...\ns=")

gets(s) 

for(j=i=0ns[j]=s[i]i++)     

if(s[i]<'0' ||s[i]>'9')         

j++ 

puts(ns)

return 0

}

扩展资料:

ascall码第0~32号及第127号(共34个)是控制字符或通讯专用字符,如控制符:LF(换行)、CR(回车)、FF(换页)、DEL(删除)、BEL(振铃)等;

通讯专用字符:SOH(文头)、EOT(文尾)、ACK(确认)等;

第33~126号(共94个)是字符,其中第48~57号为0~9十个阿拉伯数字;漏早65~90号为26个大写英文字母,97~122号为26个小写英文字母,其余为一些宏搜态标点符号、运算符号等。

注意:在计算机的存储单元中,一个ASCII码值占一个字节(8个二进制位),其最高位(b7)用作奇偶校验位。所谓奇偶校验,是指在代码传送过程中用来检验是否出现错误的一种方蔽源法,一般分奇校验和偶校验两种。

参考资料:

百度百科-ascall码

1、创建python文件,testregexp.py文件;

2、编写代码提取字符串中的数字;

string="12abc34wf5s!@#6af7"态型

list_str1=re.findall(r"\d*",string)

list_num=''.join(list_str1)

print(list_num)

3、编写代码,提取字符串中的英文字母;

#提取字符

list_str2=re.findall("[a-z]*"谨培,string)

list_str=''.join(list_str2)

print(list_str)

4、运行代码,查看执行结果,满足所祥闭唯需结果;

按你追问的耐喊胡要求改了一下。这段代码能把键盘输入的特定字符串后面双引号内的文字提取出来存入XYZ.txt文件中。在提取过程中滤除了源文件中的'\n'和' '。供参考……

#include "stdio.h"//

#include "string.h"//

#include "stdlib.h"//

void main(void){

FILE *pR,*pW

char CoStr[20],ln,ch,i=0

if(!(pR=fopen("ABC.txt","r"))){

printf("源文件打开失败...")

exit(0)

}

printf("请输入特定字符串...\nCoStr=")

ln=strlen(gets(CoStr))

do{

fseek(pR,-i,SEEK_CUR)

for(i=0i<lni++)

if((ch=getc(pR))!=CoStr[i]) break

if(ch==EOF){

printf("没有发现特定字符串%s!\n",CoStr)

exit(0)

}

}while(i<ln)

if(!(pW=fopen("XYZ.txt","w"))){

printf("创建目标文昌拦件失败...")

exit(0)

}

while((ch=getc(pR))!='"' &&ch!=(char)176)

while((ch=getc(pR))!='"' &&ch!=(char)177){

if(ch=='\n' || ch==' ') continue

putc(ch,pW)

}

fclose(pW)

fclose(pR)

printf("文件已成功建立,名为渗迟XYZ.txt\n")

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12506900.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存