2016北航机试枚举类型转换
来源:互联网 发布:java经典书籍推荐 编辑:程序博客网 时间:2024/05/21 09:46
>
题目描述 给一个C语言的enum定义语句,输出enum中规定的各项值。 输入 输入一个c语言的enum定义语句。 输出
输出enum中规定的各项值。 样例输入 enum BOOL{true,false}; 样例输出 true 0 false 1
/*函数说明:1.主函数,对枚举部分提取,控制整个循环2.输出函数,输出当前子符串的数值3.对于数字字符串的转换*/#include<stdio.h>#include<string.h>int move_toint(char *p,int n){ int res = 0; if (p == NULL) { return res; } else { for (int i = 0; i < n; i++) { res = res * 10 + (int)(p[i] - '0'); } } return res;}int match(char p[], int n, int num){ int newnum = num; for (int i = 0; i <n; i++) { if (p[i] == '=') { char *temp = new char[n - i-1]; int m = 0; for (int j = i+1; j < n; j++) { temp[m++] = p[j]; } newnum = move_toint(temp,m); printf(" %d", newnum); printf("\n"); return newnum; } else { printf("%c", p[i]); } } printf(" %d", newnum); printf("\n"); return newnum;}int main(){ char str[100]; fgets(str, sizeof(str), stdin);//stdin为系统默认缓存区 int length = strlen(str); int i = 0; while (str[i] != '{') { i++; } i = i + 1; int enumnum = 0; char * temp = new char[length]; for (; i < length - 2;) { int t = 0; while (str[i] != ',') { if (str[i] == '}') { break; } temp[t++] = str[i]; i++; } enumnum = match(temp, t, enumnum); i++; enumnum++; } getchar(); getchar(); return 0;}
阅读全文
0 0
- 2016北航机试枚举类型转换
- 枚举类型互相转换
- Mybatis枚举类型转换
- 枚举类型转换
- 枚举 类型转换
- 枚举类型的转换
- 北航机试12年
- 北航计算机机试17
- 根据枚举名转换成枚举类型
- 枚举类型转换成List
- Swift2.1 枚举转换类型
- C# 枚举类型的转换
- 枚举类型如何转换成字符串类型
- 北航机试C语言矩阵问题
- 北航机试c语言矩阵算法
- 北航机试12年小岛面积
- 字符串匹配--北航机试2008
- 北航计算机机试16逆序数
- 使用Mybatis做批量Insert
- PHPExcel使用(二)
- Python安装及Scrapy配置中遇到的BUG及解决方案
- spring 注解使用
- JVM调优1
- 2016北航机试枚举类型转换
- js 浮点加减乘除
- 蓝桥杯 ADV-173 算法提高 淘淘的名单
- VMware + ubuntu 编译android7.0
- 阿里云linux上安装Java
- 35选7不重复
- DelephiForm的borderstyle
- 2 WebSocket
- 蓝桥杯 ADV-111 算法提高 Quadratic Equation