输入身份证,输出姓名年龄,疯狂加分!!

来源:百度知道 编辑:UC知道 时间:2024/06/19 17:14:46
输入5名学生的信息,信息如下:
姓名 身份证号码
zhang 320825200102155017
li 320902198402146016
wang 320911197508265029
ya 320902195606152052
zhou 320911196401216019

要求:1)输出这5名学生的姓名与年龄;
2)学生信息用结构体类型数组来表示;
3)求年龄用函数实现,函数返回指针型数据。
题目二:

将上题的结果以文本文件的形式存储,文件名为:你的c源程序名.txt

#include<stdio.h>
#include<string.h>
char* substring(char str[][20],int start,int len){
int i,j;
for(i=start,j=0;i<(len+start)&&str[j]!='\0';)
str[0][j++] = str[0][i++];
str[0][j]='\0';
return str[0];
}

char* split(char str[][20],char chr){
static char sp[50][50];
//char tmp[50];
int i=0,len,start;
len = strlen(str[0]);
start = i;
for(;i<len;++i){
if(chr == str[0][i]){
strcpy(sp[i],substring(str,start,i-start));
puts(sp[i]);
start = ++i;
}
}
strcpy(sp[i],substring(str,start,i-start puts(sp[i]); return sp; }
void main(){
char *p[5];
char str[1][20]={"zhang 320825200102155017"};
p = split(str,' ');
printf("%s\n",p[0]);//输