请不要使用width - strlen(" 欢迎使用四则运算练习程序 ") - 2) / 2,写一段代码实现相同效果:#include <stdio.h> #include <string.h> int main() { int width = 80, height = 25; // 控制台默认宽度和高度 int x = (width - 30) / 2, y = (height - 10) / 2; char ch = '*'; int i, j; printf("\n"); for (i = 0; i < width; i++) { printf("%c", ch); } printf("\n"); for (j = 0; j < y - 1; j++) { printf("%c", ch); for (i = 0; i < width - 2; i++) { printf(" "); } printf("%c\n", ch); } printf("%c", ch); for (i = 0; i < (width - strlen(" 欢迎使用四则运算练习程序 ") - 2) / 2; i++) { printf(" "); } printf(" 欢迎使用四则运算练习程序 "); for (i = 0; i < (width - strlen(" 欢迎使用四则运算练习程序 ") - 2) / 2; i++) { printf(" "); } printf("%c\n", ch); for (j = y; j < y + 9; j++) { printf("%c", ch); for (i = 0; i < width - 2; i++) { printf(" "); } printf("%c\n", ch); } for (i = 0; i < width; i++) { printf("%c", ch); } printf("\n"); return 0; }
时间: 2024-03-18 16:40:31 浏览: 55
C语言程序设计-编写一个程序,求字符串的长度,不能使用strlen函数。
5星 · 资源好评率100%
好的,以下是不使用width - strlen(" 欢迎使用四则运算练习程序 ") - 2) / 2实现相同效果的代码:
```
#include <stdio.h>
#include <string.h>
int main() {
int width = 80, height = 25; // 控制台默认宽度和高度
int x = (width - 30) / 2, y = (height - 10) / 2;
char ch = '*';
int i, j;
char welcome[] = " 欢迎使用四则运算练习程序 ";
printf("\n");
for (i = 0; i < width; i++) {
printf("%c", ch);
}
printf("\n");
for (j = 0; j < y - 1; j++) {
printf("%c", ch);
for (i = 0; i < width - 2; i++) {
printf(" ");
}
printf("%c\n", ch);
}
printf("%c", ch);
for (i = 0; i < x; i++) {
printf(" ");
}
printf("%s", welcome);
for (i = 0; i < width - x - strlen(welcome) - 2; i++) {
printf(" ");
}
printf("%c\n", ch);
for (j = y; j < y + 9; j++) {
printf("%c", ch);
for (i = 0; i < width - 2; i++) {
printf(" ");
}
printf("%c\n", ch);
}
for (i = 0; i < width; i++) {
printf("%c", ch);
}
printf("\n");
return 0;
}
```
这个程序的主要修改在于将计算得到的偏移量替换为手动计算得到的偏移量,即在输出欢迎语句时手动计算需要输出多少个空格,以便让欢迎语句居中显示。
阅读全文