实验9-4 计算两个复数之积(15 分)
本题要求实现一个计算复数之积的简单函数。
函数接口定义:
1 | struct complex multiply(struct complex x, struct complex y); |
其中struct complex
是复数结构体,其定义如下:
1 | struct complex{ |
裁判测试程序样例:
1 | #include <stdio.h> |
输入样例:
1 | 3 4 5 6 |
输出样例:
1 | (3+4i) * (5+6i) = -9 + 38i |
本题要求实现一个计算复数之积的简单函数。
1 | struct complex multiply(struct complex x, struct complex y); |
其中struct complex
是复数结构体,其定义如下:
1 | struct complex{ |
1 | #include <stdio.h> |
1 | 3 4 5 6 |
1 | (3+4i) * (5+6i) = -9 + 38i |
给定$N$个学生的基本信息,包括学号(由5个数字组成的字符串)、姓名(长度小于10的不包含空白字符的非空字符串)和成绩([0,100]区间内的整数),要求计算他们的平均成绩,并顺序输出平均线以下的学生名单。
输入在一行中给出正整数$N(\leq 10)$。随后$N$行,每行给出一位学生的信息,格式为“学号 姓名 成绩”,中间以空格分隔。
首先在一行中输出平均成绩,保留2位小数。然后按照输入顺序,每行输出一位平均线以下的学生的姓名和学号,间隔一个空格。
1 | 5 |
1 | 80.00 |
给定N个职员的信息,包括姓名、基本工资、浮动工资和支出,要求编写程序顺序输出每位职员的姓名和实发工资(实发工资=基本工资+浮动工资-支出)。
输入在一行中给出正整数N。随后N行,每行给出一位职员的信息,格式为“姓名 基本工资 浮动工资 支出”,中间以空格分隔。其中“姓名”为长度小于10的不包含空白字符的非空字符串,其他输入、输出保证在单精度范围内。
按照输入顺序,每行输出一位职员的姓名和实发工资,间隔一个空格,工资保留2位小数。
1 | 3 |
1 | zhao 565.00 |
本题要求实现一个将长整数转化成16进制字符串的简单函数。
1 | void f( long int x, char *p ); |
其中x
是待转化的十进制长整数,p
指向某个字符数组的首元素。函数f
的功能是把转换所得的16进制字符串写入p
所指向的数组。16进制的A~F为大写字母。
1 | #include <stdio.h> |
1 | 123456789 |
1 | 75BCD15 |
1 | -125 |
1 | -7D |
本题要求实现一个函数,将两个字符串连接起来。
1 | char *str_cat( char *s, char *t ); |
函数str_cat
应将字符串t
复制到字符串s
的末端,并且返回字符串s
的首地址。
1 | #include <stdio.h> |
1 | abc |
1 | abcdef |
本题要求实现一个函数,统计给定字符串中的大写字母、小写字母、空格、数字以及其它字符各有多少。
1 | void StringCount( char *s ); |
其中 char *s
是用户传入的字符串。函数StringCount
须在一行内按照
1 | 大写字母个数 小写字母个数 空格个数 数字个数 其它字符个数 |
的格式输出。
1 | #include <stdio.h> |
1 | aZ&*? |
1 | 2 2 1 3 4 |
本题要求编写函数,判断给定的一串字符是否为“回文”。所谓“回文”是指顺读和倒读都一样的字符串。如“XYZYX”和“xyzzyx”都是回文。
1 | bool palindrome( char *s ); |
函数palindrome
判断输入字符串char *s
是否为回文。若是则返回true
,否则返回false
。
1 | #include <stdio.h> |
1 | thisistrueurtsisiht |
1 | Yes |
1 | thisisnottrue |
1 | No |
Update your browser to view this website correctly. Update my browser now