《C语言程序设计(第3版)——何钦铭》

作者:何钦铭 颜晖  出版社:中国电力出版社

题目 题型
下面定义结构变量的语句中错误的是()? 单选
如果有定义语句: struct { int x, y; } s[2] = { { 1, 3 }, { 2, 7 } }; 则语句:printf(“%d\n”, s[0].y/s[1].x );输出结果为()。 单选
根据下面的定义,能打印出字母M的语句是()。 struct person{ char name[10]; int age; } c[10] = {“John”, 17,“Paul”, 19,“Mary”, 18,“A 单选
设有如下定义,则对data中的a成员的正确引用是()。 struct sk{ int a; float b; } data, *p=&data; 单选
对于以下结构定义,(*p)->str++中的++加在()? struct { int len; char *str; } *p; 单选
“.”称为[$##$]运算符,“->”称为[$##$]运算符。 填空
完成下列程序,该程序计算10名学生的平均成绩。 #include <stdio.h> #include <string.h> struct student { int num; char name[ 填空
下列程序读入时间数值,将其加1秒后输出,时间格式为:hh: mm: ss,即小时;分钟;秒,当小时等于24小时,置为0。 #include<stdio.h> struct { int hour, minu 填空
写出下面程序的运行结果[$##$]。  struct s1{ char c1, c2; int n; }; struct s2{ int n; struct s1 m; } m = {1, {‘A’,’B 填空
写出下面程序的运行结果[$##$]。 struct abc{ int a; float b; char *c; }; int main(void) { struct abc x = {23,98.5," 填空
时间换算:用结构类型表示时间内容(时间以时、分、秒表示),输入一个时间数值,再输入一个秒数n (n<60),以h:m:s的格式输出该时间再过n秒后的时间值(超过24点就从0点开始计时)。试编写相应程序。 问答
计算两个复数之积:编写程序,利用结构变量求解两个复数之积。 提示:求解(a1+a2i)x (b1+b2i),乘积的实部为:a1xb1-a2xb2,虚部为:a1xb2+a2xb1。 问答
平面向量加法:输入两个二维平面向量V1= (x1,y1)和V2= (x2,y2)的分量,计算并输出两个向量的和向量。试编写相应程序。 问答
查找书籍:从键盘输入10本书的名称和定价并存入结构数组中,从中查找定价最高和最低的书的名称和定价,并输出。试编写相应程序。 问答
通信录排序:建立一个通信录,通信录的结构记录包括:姓名、生日、电话号码;其中生日又包括三项:年、月、日。编写程序,定义一个嵌套的结构类型,输入n(n<10)个联系人的信息,再按他们的年龄从大到小的顺序依次输出其信息。试编写相应程序。 问答
按等级统计学生成绩:输入10个学生的学号、姓名和成绩,输出学生的成绩和不及格人数。每个学生的记录包括学号、姓名、成绩和等级,要求定义和调用函数set_grade (),根据学生成绩设置其等级,并统计不及格人数,等级设置:85~100为A,70~84为B 问答