指针练习之学号转换
题目:
假设一个合法的学号由四位年级号、两位学院号与四位班级号、三位班内编号依次构成,一共13位数(本题中,一个合法的学号应仅包含数字),利用指针和数组实现一个函数fun()
原型:int fun(const char *p, int result[]);
功能:将以字符形式存放的自己学号转换成四个整数(依次表示:年级、学院、班级、学号),并存放于一个整数数组中。
参数说明:p为传入的学号字符串,以’\0’结束;result传入用于接收返回结果的整型数组首地址,规定其0号下标开始依次存放“年级、学院、班级、学号”。
返回值:如果通过p传入的是合法的学号,则本函数返回1;如果传入的学号非法,则本函数返回0.
例如:如果p中传入的学号为2012019050001,result的前四个元素应该依次为2012、1(01即为1)、9050和1(001即为1)
注意:
- 在函数fun中,不要有任何输出(如调用printf或puts等函数),否则视为错误
- 在编写完fun后,你可以编写main函数用于测试fun函数的功能
- 只需上传fun函数及其依赖的头文件,不必上传用于测试的main函数
- 在fun中,要考虑输入学号异常的情况
代码:#include <stdio.h>
#include <string.h>
int fun(const char *p, int result[])
{