c语言利用循环以及if else语句输出多行-*******-
时间: 2023-11-25 10:49:08 浏览: 202
以下是利用循环以及if else语句输出多行-*******-的C语言代码:
```c
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main() {
int i, j;
for (i = 1; i <= 5; i++) {
for (j = 1; j <= 7; j++) {
if (i == 3 && j == 4) {
printf("-");
}
else {
printf("*"); }
}
printf("\n");
}
return 0;
}
```
代码解释:
- 第1行:定义宏,用于禁用scanf等函数的警告。
- 第2行:包含stdio.h头文件,用于输入输出。
- 第4行:定义主函数。
- 第5行:定义变量i和j,用于循环。
- 第6行:外层循环,控制输出行数。
- 第7行:内层循环,控制输出列数。
- 第8-11行:判断当前位置是否为中间位置,如果是则输出“-”,否则输出“*”。
- 第12行:输出换行符,换行到下一行。
- 第14行:返回0,表示程序正常结束。
相关问题
用C语言完成以下条件;分析如下代码 for(i=1;i<n;i++) for(j=1;j<i;j++) for(k=1;k<j;k++) printf("\n"); 问printf语句共执行了几次?这段代码执行完以后i+j+k值为多少? 输入 由多行组成,每行一个整数n, 1<= n <= 3000 输出 对每一行输入,输出对应的一行,包括空格分开的两个整数,分别代表printf语句的执行次数以及代码执行完以后i+j+k的值, 如果值不确定,输出"RANDOM"取代值的位置
可以使用一个函数来计算printf语句执行次数和i+j+k的值,并在主函数中进行循环读入和输出。代码如下:
```c
#include <stdio.h>
void calc(int n) {
int cnt = 0, sum = 0;
for (int i = 1; i < n; i++) {
for (int j = 1; j < i; j++) {
for (int k = 1; k < j; k++) {
cnt++;
}
}
}
for (int i = 1; i < n; i++) {
for (int j = 1; j < i; j++) {
for (int k = 1; k < j; k++) {
sum += i + j + k;
}
}
}
if (sum == cnt) {
printf("%d %d\n", cnt, sum);
} else {
printf("%d RANDOM\n", cnt);
}
}
int main() {
int n;
while (scanf("%d", &n) != EOF) {
calc(n);
}
return 0;
}
```
对于每个输入的n值,调用calc函数计算printf语句执行次数和i+j+k的值,并输出结果。如果i+j+k的值与printf语句执行次数相等,则输出两个值;否则输出printf语句执行次数和"RANDOM"。
阅读全文