『壹』 c語言 只提取輸入的數字
#include<stdio.h>
#include<stdlib.h>
int main()
{ char s[100];int i,j;
gets(s);
for(i=0;s[i]!='\0';i++)
{if(s[i]>='0'&&s[i]<='9'侍搏歲)printf("%c",s[i]);
if(s[i]==',')printf(" ",s[i]);
if(s[i]==';')printf("\老睜n",s[i]);
}
system("pause");
}
程序簡短,處理簡單銀磨的還沒錯。給分啊。
『貳』 C語言 將用戶輸入的字元串中的所有數字提取出來
樓主採納我吧
#include
<stdio.h>
void
main()
{
char
str[80],digit[80];
char
*ps;
int
i=0;
gets(str);
ps=str;
while(*ps!='\0')
{
if(*ps>='0'&&*ps<='9')
{
digit[i]=*ps;//若當前字元是數字字元,保存到digit【i】裡面,並且i的下標加1
i++;
}
ps++;//不管是不是,判斷完當前的字元*ps之後,ps++,表示移動到下一個字元判斷
}
digit[i]='\0';//給保存數字字元的字元數組加上個結束符號『\0』,因為printf(%s)是以'\0'表示字元結束的
}
『叄』 C語言字元串讀取數字
#include<stdio.h>
constintN=20;
intmain(){
inti,j=-1,fa=0,fb=0,a[N];
chart[]="C11A6689H22ON";
for(i=0;t[i];++i){
if(t[i]>='0'&&t[i]<='9'){
fb=1;
if(fa<fb){//從字元到數字
a[++j]=t[i]-'0';
fa=1;
}
else//從數字到數字
a[j]=10*a[j]+t[i]-'0';
}
elsefa=0;
}
for(i=0;i<=j;++i)
printf("%d",a[i]);
printf("
");
return0;
}
『肆』 C語言題目:提取一個字元串中的所有數字字元(『0』...『9』)將其轉換為一個整數輸出。
評測·系統顯示的冊攜是wrong answer嗎?如果是PE,請修改輸出格式。
這里我指出一種情況,就是比如我輸入a0123a 這組字元串,那按照題目的要求應該輸出的是123,而你輸出的肯定是0123。我豎做不知道這是不是你不通過的測試用例,州纖伏我也沒有你測試平台的地址,沒辦法驗證,就當是我給你一點建議吧。
『伍』 C語言提取字元串中的所有數字
#include<stdio.h>
int
main()
{
char
str[1000];//保存讀取到的字元串
long
sum=0,data[1000];
int
i=0,top=0;
printf("輸入字元串:\n");
scanf("%s",str);
while(str[i]!='\0')//未到字元串末尾
{
if(str[i]>='0'&&str[i]<='9')//如果是數字
sum=sum*10+(str[i]-'0');//連續數字轉換為數.
else
if(sum!=0)//保存這個數
{
data[top++]=sum;
sum=0;
}
i++;
}
if(sum!=0)//判斷最後一個字元是否是數
data[top++]=sum;
printf("字元串中的數字是:\n");
i=0;
while(i<top)
{
printf("%ld",data[i]);
if(i<top-1)//不列印最後一個逗號
printf(",");
i++;
}
printf("\n");
system("pause");
return
0;
}
『陸』 如何用c/c++把一個字元串把里邊的數字提取出來
給定一個數字字元串,把這個串里邊的連續數字提取出來放到另外一個整型數組中一個單元中:
#include<iostream>
#include<string>
using namespace std;
void tiqu(char*a,int*b)
{
int j=0;
bool key=false;
for(int i=0;i<strlen(a);i++)
{
if(a[i]>='0'&&a[i]<='9')
{
if(key)
b[j] = b[j]*10+a[i]-'0';
else
b[j] = a[i]-'0';
key = true;
}
else
{
if(key)
++j;
key = false;
}}
}
void main()
{
int b[100];
char a[100]="abc123v34ghajkg4568";
tiqu(a,b);
int i=0;
while(b[i++]>=0)
{
cout<<b[i-1]<<endl;
}
}
(6)提取數字字元c語言擴展閱讀:
1、字元庫函數
所在函數庫為【ctype.h】
int isalpha(int ch) 若ch是字母('A'-'Z','a'-'z')返回非0值,否則返回0
int isalnum(int ch) 若ch是字母('A'-'Z','a'-'z')或數字('0'-'9')
返回非0值,否則返回0
intisascii(int ch) 若ch是字元(ASCII碼中的0-127)返回非0值,否則返回0
intiscntrl(int ch) 若ch是作廢字元(0x7F)或普通控制字元(0x00-0x1F)
返回非0值,否則返回0
2、數學函數
所在函數庫為math.h、stdio.h、string.h、float.h
int abs(int i) 返回整型參數i的絕對值
double cabs(struct complex znum) 返回復數znum的絕對值
double fabs(double x) 返回雙精度參數x的絕對值
long labs(long n) 返回長整型參數n的絕對值
『柒』 C語言中數字的提取
int x;
123456 取個位:x=123456%10
取白位:x=(123456%100)/10
1234.56 小數點後面的第一位: x=((int)(1234.56*10))%10
1234.56 小數點後面的第二位: x=((int)(1234.56*100))%10
『捌』 C語言中怎樣從一串數字中提取一個數
可以先衡畢把這個數字改成一個字元串, 然後再把你要的第幾個數字提出來即豎凱可, 如余攔喚:
int i = 12345;
char ch[10];
sprintf(ch, "%d", i); //把i輸出到字元串(和printf用法一樣)
printf("%c\n", ch[2]); //輸出這個字元串的第3個字元(下標是2)
就會輸出3
『玖』 C語言 將用戶輸入的字元串中的所有數字提取出來
#include<敗山stdio.h>
#include<math.h>
#include<stdlib.h>
intmain()
{
intz=0;
intt,i;
int*p;
intm=0;
ints=0;
chara[10];//輸入一個緩跡字元串到a[6]
printf("請輸入一個字元串 ");
scanf("%s",a);//輸入字元串
for(i=0;i<10;i++)//計算a[6]中的數字個數
{
if(a[i]>='0'&&a[i]<='9')
m++;
}
if(m==0)
printf("字元串中沒有數字 ");
p=(int*)calloc(m,sizeof(int));//動態數組
for(i=0;i<10;i++)
{
if(a[i]>='0'&&a[i]<='9')
{
*(p+s)=a[i]-48;
s++;
}
}
//組成新的整數
for(t=0;t<m;t++)
{
z+=(*(p+t))*pow(10,m-(t+1));//組成新的整數
}
printf("新組成整數:%d ",z);
free(p);
}
kuo
(9)提取數字字元c語言擴展閱讀
C語言實現將字元串的數字擾枯並提取為整數
#include<stdio.h>
intStringToInteger(char*p)
{
intvalue=0;
while(*p!='