实验7-3-7 字符转换 (15分)
本题要求提取一个字符串中的所有数字字符(‘0’……‘9’),将其转换为一个整数输出。
输入格式:
输入在一行中给出一个不超过80个字符且以回车结束的字符串。
输出格式:
在一行中输出转换后的整数。题目保证输出不超过长整型范围。
输入样例:
free82jeep5
输出样例:
825
#include<stdio.h>
#include<string.h>
int main(){
char a[80],b[80];
int i,j,k=0;
for(i=0;(a[i]=getchar())!='\n';i++);
a[i]='\0';
printf("%s\n",a);
int cnt=0;
for(j=0;j<i;j++){
if(a[j]>='a'&&a[j]<='z'){
cnt++;
}else{
b[k]=a[j];
k++;
printf("%c",a[j]);
}
}
printf("\n");
return 0;
}
free82jeep5
free82jeep5
825
Program ended with exit code: 0
#include<stdio.h>
#include<string.h>
int main(){
char a[80];
int i,j,k=0,b=0;
for(i=0;(a[i]=getchar())!='\n';i++);
a[i]='\0';
printf("%s\n",a);
int cnt=0;
for(j=0;j<i;j++){
if(a[j]>='a'&&a[j]<='z'){
cnt++;
}else{
b=b*10+a[j]-'0'; ----->这种写法直接转化了;
//这里直接进行了转换,char变量转为int
k++;
}
}
printf("%d",b);
printf("\n");
return 0;
}