首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是:函数返回指定学号的学生数据,指定的学号在主函数中输入。若没找到指定学号,在结构体变量中给学号置空串,给成绩置-1,作为函数值返回。(用于字符串比较的函数
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是:函数返回指定学号的学生数据,指定的学号在主函数中输入。若没找到指定学号,在结构体变量中给学号置空串,给成绩置-1,作为函数值返回。(用于字符串比较的函数
admin
2013-04-02
38
问题
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是:函数返回指定学号的学生数据,指定的学号在主函数中输入。若没找到指定学号,在结构体变量中给学号置空串,给成绩置-1,作为函数值返回。(用于字符串比较的函数是strcmp)。
注意:部分源程序在文件PROGI.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#include
#include
#define N 16
typeclef struct
{ char num[10];
int s;
}STREC;
STREC fun(STREC*a,char*b)
{
}
main()
{STREC S[N]={{”GA005”,85},{”GA003”,76},
{”GA002”,69},{”GA004”,85},{”GA001”,91},
{”GA007”,72},{”GA008”,64},{”GA006”,87},
{”GA015”,85},{”GA013”,91},{”GA012”,64},
{”GA014”,91},{”GA011”,77},{”GA017”,64},
{”GA018”,64},{”GA016”,72}};
STREC h;
char m[10];
int i;FILE*out ;
printf(”The original data:\n”);
for(i=0; i
{ if(i%4==0)printf(”\n”);
printf(”%s%3d”,s
.num,s
.s);
}
printf(”\n\nEnter the number:
”); gets(m);
h=fun(s,m);
printf(”The data:”);
printf(”\n%s%4d\n”,h.rlLlm,h.s);
printf(”\n”);
out=fopen(”out.dat”,”w”);
h=fun(s,”GA013”);
fprintf(out,”%s%4d\n”,h.num,h.s);
fclose(out);
}
选项
答案
{ STREC c; int i; c.num[0]=’\0’; /* 置初始空串 */ c.s=-1; /* 置成绩为-1 */ for(i=0; i
解析
在for循环中,利用C语言自带字符串比较函数strcmp,对输入的学号与所有的学号进行比较,以求出指定学号。
转载请注明原文地址:https://www.kaotiyun.com/show/hDJp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下叙述中错误的是______。
有以下程序 fun(char p[][10]) {int n=0,i; for(i=O;i<7;i++) if(p[i][O]=T)n++; return n; } main
有以下程序 int fun1 (double a){return a*=a;} int fun2 (double x,double y) { double a=0,b=0; a=fun1
有以下程序 #include <stdio.h> main() {char c1,c2,c3,c4,c5,c6; scanf("%c%c%c%c",&c1,&c2,&c3,&c4); c
以下能正确定义字符串的语句是______。
有以下程序,其功能是:以二进制“写”方式打开文件d1.dat,写入1~100这100个整数后关闭文件。再以二进制“读”方式打开文件d1.dat,将这100个整数读入到另一个数组b中,并打印输出。请填空。#include<stdio.h
设有说明structDATE{intyear;intmonth;intday;};请写出一条定义语句,该语句定义d为上述结构体类型变量,并同时为其成员year、month、day依次赋初值2006、10、1:【】。
有以下函数 int fun(char *s) { char *t=s; while(*t++); return(t-s); } 该函数的功能是
设变量均已正确定义,若要通过scanf("%d%c%d%c",&a1,&c1,&a2,&c2);语句为变量a1和a2赋数值 10和20,为变量c1和c2赋字符X和Y。以下所示的输入形式中正确的是(注:口代表空格字符)
随机试题
Paget病又称为
本病西医诊断为:中医诊断为:
大补阴丸的组成药物是
男,30岁。饥饿性上腹痛2年,进食后可缓解。胃镜检查:十二指肠溃疡愈合期,快速尿素酶试验阳性。最有效的治疗方案是
关于间接固位体与支点线的关系,下列哪项是正确的
陈律师接受犯罪嫌疑人丁某的聘请,在案件的侦查阶段为丁某提供法律帮助。在此阶段,陈律师可以履行哪些职责?()
建造师注册管理相关办法规定,已注册建造师脱离建设工程施工管理及其相关工作岗位连续2年(含2年)以上的,将被原注册管理机构( )。
一般资料:求助者,男,38岁。案例介绍:求助者的儿子学习成绩一直不好,父母为此很着急,给他报了一些补习班,可是他总是只能坚持四五天。在家做作业时,一会去吃些零食,一会爻看会动画片,一会又逗逗家里的小猫咪。为此,爸爸曾经把他所有的零食都给拿走了,可
设A为3阶实对称矩阵,β=(3,3,3)T,方程组Ax=β的通解为k1(-1,2,-1)T+k2(0,-1,1)T+(1,1,1)T(k1,k2为任意常数).若α=(1,2,-1)T,求Aα;
[*]
最新回复
(
0
)