C语言期末考试练习题(6)
for(i=0;i<6;i++)
printf(“%d,”,a[i]);
printf(“\\n”); }
void invert(int *s,int i,int j) { int t; if(i { invert( s, i+1, j-1); t=*(s+i);*(s+i)=*(s+j);*(s+j)=t; } } 3.下面程序的运行结果是____Coble dBase C language Pascal_____。 #include char *a[]={\ char **p; int j; p=a+3; for(j=3;j>=0;j--)printf(\ } 4. void main() { int a[2][3]={1,2,3,4,5,6}; int m,*ptr; ptr=&a[0][0]; m=(*ptr)*(*(ptr+2))*(*(ptr+4)); printf(\ } 15 六、结构体 1、下面程序的输出结果为() #include char name[10]; int age; }; 16 void display(struct student *p) { printf(\\\n\, (*p).name); } int main() { struct student students[3] = {{9801, \, 20}, {9802, \, 21}, {9803, \, 19}}; display(students + 1); return 0; } 2. 以下程序的输出结果为(7120) #include struct sp { int a; int *b; } *p; int d[3] = {10, 20, 30}; struct sp t[3] = {70, &d[0], 80, &d[1], 90, &d[2]}; int main() { p = t; printf(\%d%d\\n\, ++(p->a), *++p->b); return 0; } 3. 如果有如下定义: struct student { int num; float score; struct student *next; }; 并且在主函数中已经建立了如下图所示的链表,并由head指针指向表头结点: 105 107 101 103 head 78.5 85 89.5 90 Null 如果主函数中的调用语句为:ff(head,105);请写出执行下列函数后的输出结果。 void ff(struct student *head,int sn) { struct student *p1,*p2,*p; p1=head; while(p1->num!=sn && p1!=Null) { p2=p1;p1=p1->next; 17 } if (p1->num==sn) p2->next=p1->next; else printf (“%ld is not found.\\n”, sn); p=head; while ( p!=Null ) { printf(“%ld:%5.1f\\n”,p->num, p->score); p=p->next ; } } 运行结果:101: 89.5 103: 90.0 107: 85.0 ********************************************************* 4、若有定义: struct num {int a; int b; float f; }n={1,3,5.0}; struct num *pn=&n; 则表达式pn->b/n.a*++pn->b的值是___12_____,表达式(*pn).a+pn->f的值是____6.0____。 Ⅳ 程序填空题 1.结构数组中存有三人的姓名和年龄,以下程序输出三人中最年长者的姓名 和年龄。请在_______内填入正确内容。 #include char name[20]; int age; }person[]={\ \ \ }; void main() { struct man *p,*q; int old=0 p=person; for( ;p_< person + 3____;p++) if(old {q=p;__old = p->age____;} printf(\ q->age____); } 18 2、以下程序段的功能是统计链表中结点的个数,其中first为指向第一个结点的指针(链表不带头结点)。请在______内填入正确内容。 struct link {char data ; struct link *next; }; .... struct link *p,*first; int c=0; p=first; while(__p!=NULL___) {_c++______; p=__p->next_____; } 3、有四名学生,每个学生包括学号、姓名、成绩, 要求找出成绩最高者的学号、姓名和成绩(用指针方法)。 main() { struct student { int num; char name[20]; float score; }; struct student stu[4]; struct student *p; int i,temp=0; float max; for( p=stu;p scanf(\ p->name ,& p->score); } for(max=stu[0]. score,i=1; i<4;i++) 19 { if(stu[i].score>max) { max=stu[i].score; temp=i; } } p=stu+temp ; printf(\ } Ⅴ 编程题: 1、输入一行字符,统计并输出其中单词的个数。 2、写一函数,判断一字符串是否回文(回文是指正反序相同,如LeveL),在主函数中输入字符串,并输出是否回文的信息,若是,输出“Yes”,否则,输出“No”。 3、编写一个函数,求一个字符串的长度。在main函数中输入字符串,并输出其长度。 4、定义一结构体数组表示分数(比如1/3),并求两个分数相加之和(以最简分数形式表示)。 5、设某大学有下列登记表,采用最佳方式对它进行类型定义,并用该类型保存一个班30个学生的成绩,然后统计计算每个学生的平均分。 出生日期 年 月 日 姓名 struct date { int year; int month; int day; }; struct person { char name[20]; char sex; struct date birthday; float score[4]; }; 性别 20
相关推荐:
- [实用模板]第八章:法国“新浪潮”与“左岸派”
- [实用模板]2021年北京上半年临床医学检验技师生物
- [实用模板]SAP GUI 7.10客户端安装配置文档
- [实用模板]2001年临床执业医师资格考试综合笔试试
- [实用模板]36机场工作实用英语词汇总结
- [实用模板](一)社会保险稽核通知书
- [实用模板]安全教育主题班会材料
- [实用模板]濉溪县春季呼吸道传染病防控应急演练方
- [实用模板]长沙房地产市场周报(1.30-2.3)
- [实用模板]六年级数学上册典中点 - 图文
- [实用模板]C程序设计(红皮书)习题官方参考答案
- [实用模板]中国证监会第一届创业板发行审核委员会
- [实用模板]桥梁工程复习题
- [实用模板]2011学而思数学及答案
- [实用模板]初中病句修改专项练习
- [实用模板]监理学习知识1 - 图文
- [实用模板]小机灵杯四年级试题
- [实用模板]国贸专业毕业论文模板
- [实用模板]教育学概论考试练习题-判断题4
- [实用模板]2015届高考英语一轮复习精品资料(译林
- 00Nkmhe_市场营销学工商管理_电子商务_
- 事业单位考试法律常识
- 诚信教育实施方案
- 吉大小天鹅食品安全检测箱方案(高中低
- 房地产销售培训资料
- 高一地理必修1复习提纲
- 新概念英语第二册lesson_1_练习题
- 证券公司内部培训资料
- 小学英语时间介词专项练习
- 新世纪英语专业综合教程(第二版)第1册U
- 【新课标】浙教版最新2018年八年级数学
- 工程建设管理纲要
- 外研版 必修一Module 4 A Social Surve
- Adobe认证考试 AE复习资料
- 基于H.264AVC与AVS标准的帧内预测技术
- 《食品检验机构资质认定管理办法》(质
- ABB变频器培训课件
- (完整版)小学说明文阅读练习题及答案
- 深思洛克(SenseLock) 深思IV,深思4,深
- 弟子规全文带拼音




