.getchar() 是头文件<stdio.h>的库函数,第一次调用此函数时需要人工输入字符或字符串,每次调用读入一个字符;如果第一次人工输入的字符数大于1,则在下一次调用该函数时不需要人工输入,编译器会直接从缓冲区按顺序一个一个读取

解题思路

  1. 首先人工输入一至多个字符,将所有字符存入字符数组1
  2. 遍历字符数组1,将表示数字的字符存入字符数组2
  3. 遍历字符数组2,将所有字符转换为整型数字打印输出
#include<stdio.h>
#include<string.h>
#define N 100     //没有分号
int main()
{char ch;int len1=0,len2=0;char str1[N];//存储输入的字符串char str2[N];//存储处理后的字符串int sum=0;int temp=1;//步骤一:人工输入字符,将字符存入字符数组1ch = getchar();  //输入字符串for (int i = 0; ch != '\n'; i++){str1[i] = ch;len1++;//记录字符数组1输入的字符个数ch = getchar();//从缓冲区按顺序一个一个读取}
//步骤二:将输入的数字字符存入字符数组2for (int j = 0; j < len1; j++) //初步处理字符串,得到‘0’ 到 ‘9’的字符数组{if (str1[j] >= '0' && str1[j] <= '9'){/*之前写的代码是:str2[j] = str1[j];但是后来发现str2的下标是遇见数字字符才加一,而str1的下标是每循环一次就加一*/str2[len2++] = str1[j];  //经典:获取字符串中需要的字符。设置计数器,只有发现大写字母时len2才进行加1 处理}}
//步骤三:从字符数组尾开始计算求和输出/*一开始的想法是将字符数组2的各个字符转换成字符依次输出,
但是有一个测试点出错(第一个数字为0时,输出的整数应该以一个
非零数开头),修改过后选择将数字按个位、十位、百位……加和后
输出。*//*    for(int k=0;k<len2;k++){printf("%d",str2[k]-'0');}
*/for (int k = len2-1; k >= 0; k--){sum += (str2[k] - '0') * temp;temp *= 10;}printf("%d\n", sum);return 0;
}

实验7-3-7 字符转换 (15分)相关推荐

  1. 实验4-2-6 输出三角形字符阵列 (15分)本题要求编写程序,输出n行由大写字母A开始构成的三角形字符阵列。

    实验4-2-6 输出三角形字符阵列 (15分) 本题要求编写程序,输出n行由大写字母A开始构成的三角形字符阵列. 输入格式: 输入在一行中给出一个正整数n(1≤n<7). 输出格式: 输出n行由 ...

  2. 7-1 字符转换 (15分)C语言

    7-1 字符转换 (15分) 本题要求提取一个字符串中的所有数字字符('0'--'9'),将其转换为一个整数输出. 输入格式: 输入在一行中给出一个不超过80个字符且以回车结束的字符串. 输出格式: ...

  3. 实验7-3-7 字符转换 (15 分)

    本题要求提取一个字符串中的所有数字字符('0'--'9'),将其转换为一个整数输出. 输入格式: 输入在一行中给出一个不超过80个字符且以回车结束的字符串. 输出格式: 在一行中输出转换后的整数.题目 ...

  4. PTA浙大版python程序设计题目集--第3章-5 字符转换 (15 分)

    本题要求提取一个字符串中的所有数字字符('0'--'9'),将其转换为一个整数输出. 输入格式: 输入在一行中给出一个不超过80个字符且以回车结束的字符串. 输出格式: 在一行中输出转换后的整数.题目 ...

  5. PTA 7-10 字符转换 (15分)

    本题要求提取一个字符串中的所有数字字符('0'--'9'),将其转换为一个整数输出. 输入格式: 输入在一行中给出一个不超过80个字符且以回车结束的字符串. 输出格式: 在一行中输出转换后的整数.题目 ...

  6. 实验8-2-6 分类统计各类字符个数 (15分)

    本题要求实现一个函数,统计给定字符串中的大写字母.小写字母.空格.数字以及其它字符各有多少. 函数接口定义: void StringCount( char *s ); 其中 char *s 是用户传入 ...

  7. 字符转换 (15分)

    #include<stdio.h> #include<string.h> int main(){char str[100];gets(str);int num = 0;int ...

  8. 带注释 实验7-3-5 输出大写英文字母 (15分)

    实验7-3-5 输出大写英文字母 (15分) 本题要求编写程序,顺序输出给定字符串中所出现过的大写英文字母,每个字母只输出一遍:若无大写英文字母则输出"Not Found". 输入 ...

  9. 7-8 字符串字母大小写转换 (15 分)

    7-8 字符串字母大小写转换 (15 分) 本题要求编写程序,对一个以"#"结束的字符串,将其小写字母全部转换成大写字母,把大写字母全部转换成小写字母,其他字符不变输出. 输入格式 ...

最新文章

  1. 安装batocera-linux教程_利用Grub2Win安装Batocera+Windows7双系统甚至多系统实战教程
  2. SSO 认证机制对比
  3. 实战经验:关于Oracle Delete数据后空间重用问题的测试
  4. 关于router-link包含dom元素会出现Warnings while compiling.警告的问题!
  5. 一个关于C++ Inline关键字的引发的一个错误
  6. 一次完整的HTTP事务是怎样一个过程?(转)
  7. 这份好用视频拼接的软件干货分享,值得收藏
  8. 图论及其应用 2013年期末考试 答案总结
  9. 需要在计算机安装msxml版本,win7 Office2010提示安装MSXML版本6.10.1129.0怎么办
  10. Vue.js 第5章 webpack配置
  11. mermaid与flowchart.js绘制流程图分支结构试验
  12. 鸿蒙车载智慧屏评测,荣耀智慧屏体验评测:鸿蒙系统的智慧
  13. FPGA控制TDC-GPX2时间间隔测量(一)
  14. 《Linux内核修炼之道》精华分享与讨论(1)——缅怀已逝的十八年(1991~1998)
  15. b站服务器故障修复,“B站崩了”官方回应:服务器机房故障!现已恢复!
  16. 短线绝招--潜龙出海
  17. 会聊天、提醒、撩妹的Python微信机器人你肯定没见过
  18. 微信支付分727属于什么水平
  19. 【SHEIN】校招前端岗位笔试题
  20. 行测中的计算机应用题,广东公务员行测题库:行测每日一练常识应用练习题

热门文章

  1. BaseRecyclerViewAdapterHelper结合autolayout使用
  2. Android开发之listview添加头布局(header)和脚布局(footer)的方法
  3. 2 image pil 转_pdf转图片,php语言和Java语言的两种方法
  4. iOS 使用 MailCore2
  5. android布局技巧:创建高效布局
  6. 隐藏apache版本号的方法
  7. X210串口配置与stdio移植
  8. 洗牌算法汇总以及测试洗牌程序的正确性
  9. Spring Mobile 1.1.0.RC1 和 1.0.2 发布
  10. 玩的起也要输的起 。。没什么,照样支持你。。