C语言实现1 3 5 ... n的序列输出
以下是一个C语言程序,用于输出从1开始到指定奇数n的序列(1, 3, 5, ..., n):

(图片来源网络,侵删)
#include <stdio.h>
int main() {
int n;
// 输入要输出的最大奇数n
printf("请输入一个奇数n: ");
scanf("%d", &n);
// 检查输入是否为奇数
if (n % 2 == 0) {
printf("错误:请输入一个奇数,\n");
return 1; // 非正常退出
}
// 输出1 3 5 ... n的序列
printf("序列: ");
for (int i = 1; i <= n; i += 2) {
printf("%d", i);
if (i < n) {
printf(" "); // 在数字之间添加空格
}
}
printf("\n");
return 0;
}
程序说明:
- 程序首先提示用户输入一个奇数n
- 检查输入是否为奇数,如果不是则提示错误并退出
- 使用for循环从1开始,每次递增2,直到n
- 在循环中打印每个数字,并在数字之间添加空格
- 最后打印换行符
示例运行:
请输入一个奇数n: 9
序列: 1 3 5 7 9
变体版本(不检查输入是否为奇数):
如果不需要检查输入是否为奇数,可以简化为:
#include <stdio.h>
int main() {
int n;
printf("请输入一个数n: ");
scanf("%d", &n);
printf("序列: ");
for (int i = 1; i <= n; i += 2) {
printf("%d", i);
if (i < n && (i + 2) <= n) { // 确保下一个数不超过n
printf(" ");
}
}
printf("\n");
return 0;
}
这个版本会输出所有小于等于n的奇数,即使n不是奇数。

(图片来源网络,侵删)
