提交记录 #54
提交时间:2024-10-29 21:55:54
语言:c
状态:CompileError
编译情况:编译错误
code.c: In function ‘main’:
code.c:66:12: warning: missing terminating " character
66 | printf("请输入高度和起始字符(用空格
| ^
code.c:66:12: error: missing terminating " character
66 | printf("请输入高度和起始字符(用空格
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
code.c:66:5: error: expected expression at end of input
66 | printf("请输入高度和起始字符(用空格
| ^~~~~~
code.c:66:5: error: expected declaration or statement at end of input
code.c:60:10: warning: unused variable ‘sChar’ [-Wunused-variable]
60 | char sChar;
| ^~~~~
code.c:59:9: warning: unused variable ‘h’ [-Wunused-variable]
59 | int h;
| ^
固定测试点暂不可用
附加测试点暂不可用
M41【期中测验4】空心字符菱形
#include <stdio.h>
// 获取下一个字符,循环到 'Z' 后回到 'A'
char NChar(char c) {
return (c == 'Z') ? 'A' : c + 1;
}
void printDiamond(int h, char sChar) {
char cChar = sChar;
// 打印上半部分(包括中间行)
for (int i = 0; i < h; i++) {
// 打印左侧空格
for (int j = 0; j < h - i - 1; j++) {
printf(" ");
}
// 打印左侧字符
printf("%c", cChar);
// 打印中间空格
if (i > 0) {
for (int j = 0; j < 2 * i - 1; j++) {
printf(" ");
}
// 打印右侧字符
printf("%c", cChar);
}
printf("\n");
cChar = NChar(cChar);
}
// 打印下半部分
for (int i = h - 2; i >= 0; i--) {
// 打印左侧空格
for (int j = 0; j < h - i - 1; j++) {
printf(" ");
}
// 打印左侧字符
printf("%c", cChar);
// 打印中间空格
if (i > 0) {
for (int j = 0; j < 2 * i - 1; j++) {
printf(" ");
}
// 打印右侧字符
printf("%c", cChar);
}
printf("\n");
cChar = NChar(cChar);
}
}
int main() {
int h;
char sChar;
// 清空输入缓冲区
while (getchar() != '\n');
// 输入高度和起始字符
printf("请输入高度和起始字符(用空格