偶然发现网易公开课的在线课程居然有测试,兴致大发随手做了几个,结果尼玛,一段时间不接触了手生了,测试平台采用的是gcc gcj,这让我很无语啊,gcj提交老是报错,始终无法解决,为了一劳永逸,搞了个Eclipse+CDT+MinGW 搞起了gcc
各种bug有木有,各种错误有木有,,,,╮(╯▽╰)╭半天就这样没了,不过最终发现了解决方法!!!
Eclipse gcc
开发 建议:
新建工程一定要确定是否勾选gcc,如图所示:
一个工程里面,必建一个src资源文件夹;
xxx.c 文件放在其中,且只能放一个,不然报错跟java有所不同;
严格遵守 gcc 规范,以防止出现不必要的错误;
每次编辑 .c 文件后可以手动清除生成的 Debug 和Release 文件夹,使用相关命令重新编译;
也可以后用Ctrl+B 全部编译,或者直接用Ctrl+F11运行当前项目文件(编译带执行,如果有错误按照上述步骤操作)。
下面是一个Online Course 的 作业题, WIN7 32bit +Eclipse gcc 编写!
令Pi表示第i个素数。现任给两个正整数M <= N <= 104,请输出PM到PN的所有素数。
输入格式:
输入 在一行中给出M和N,其间以空格分隔。
输出格式:
输出 从PM到PN的所有素数,每10个数字占1行,其间以空格分隔,但行末不得有多余空格。
输入样例:
5 27
输出样例:
11 13 17 19 23 29 31 37 41 4347 53 59 61 67 71 73 79 83 8997 101 103
Code:
#include#include int main() { void prime_num(int start, int end) { if (start <= end && end <= pow(10, 4)) { int i = 2; int count = 0, col = 0; int flag = 0; for (;; i++) { int j = 2; for (; j <= sqrt(i); j++) { if (i % j == 0) { flag = 1; break; } } if (flag) { flag = 0; continue; } count++; if (count >= start && count <= end - 1) { if (++col % 10 == 0) { printf("%d\n", i); } else { printf("%d ", i); } } if (count == end) { printf("%d", i); break; } } } } int M, N; scanf("%d %d", &M, &N); prime_num(M, N); return 0;}
input:2 30
output:3 5 7 11 13 17 19 23 29 3137 41 43 47 53 59 61 67 71 7379 83 89 97 101 103 107 109 113