实验7-3-7 字符转换(15 分) 本题要求提取一个字符串中的所有数字字符('0'……'9'),将其转换为一个整数输出。 输入格式: 输入在一行中给出一个不超过80个字符且以回车结束的字符串。 输出格式: 在一行中输出转换后的整数。题目保证输出不超过长整型范围。 输入样例: free82jeep5 输出样例: 825 #include<stdio.h> #include<string.h> #define N 85 //思路:使用字符数组存储数字的字符形式,然后将字符处理成数字。 int main(void) { int i, j, temp=1, flag, len1 = 0, len2 = 0, sum = 0; char ch; char str1[N]; //存储输入的字符串 char str2[N]; //存储处理后的字符串 ch = getchar(); //输入字符串 for (i = 0; ch != '\n'; i++) { str1[i] = ch; len1++; ch = getchar(); } for (i = 0; i < len1; i++) //初步处理字符串,得到‘0’ 到 ‘9’的字符数组 { if (str1[i] >= '0' && str1[i] <= '9') { str2[len2] = str1[i]; //经典:获取字符串中需要的字符。设置计数器,只有发现大写字母时len2才进行加1 处理 len2++; //记录大写字母的长度 } } for (i = len2-1; i >= 0; i--) { sum += (str2[i] - '0') * temp; temp *= 10; } printf("%d\n", sum); return 0; }
实验7-3-7 字符转换(15 分)
猜你喜欢
转载自blog.csdn.net/AA11224488/article/details/80260439
今日推荐
周排行