C基础学习的简单记录--基础练习(1)
2016-03-28 20:47
399 查看
当然,还是这个C面世的标志开始吧。
START:
下面我将我在学习C期间的简单练习,我也用它记录自己一步步的成长,我的点滴成长
数学系列:
1. 打印100~200 之间的素数
优化之后:
2. 输出乘法口诀表
3. 判断1000年---2000年之间的闰年
4.给定两个整形变量的值,将两个值的内容进行交换
1.猜数字游戏
以上是我在学习C基础时候的一些代码,有不足的地方望各位前辈大神指教!;
第一次写博客,蛮激动的——>>come from My_heart_ ;
未完,待续>>
START:
int main() { printf("hello word!\n"); getchar(); return 0; }
下面我将我在学习C期间的简单练习,我也用它记录自己一步步的成长,我的点滴成长
数学系列:
1. 打印100~200 之间的素数
#include<stdio.h> #include <windows.h> int main() { int i,j; for (i = 100; i <= 200; i++) { for (j = 2; j < i; j++) { if (i%j == 0) { //printf("100^200不是素数是: %d\n", i); break; } } if(i==j) { printf("%d\t", i); } } printf("\n"); system("pause"); return 0; }
优化之后:
#define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include <windows.h> #include<math.h> int main() { int j = 0, i = 0; int n = 0; scanf("%d", &n); int count = 0; for (i = 1; i <= n; i+=2)//去掉偶数! { for (j = 2; j <= sqrt(i); j++)//缩小寻找数的空间 { if (i%j == 0) { break; //被整除后,跳出小循环 } } if ((j > sqrt(i))&&(i!=1))//这里的条件也会发生变化 { count++; printf("%d\t", i); } } printf("\n"); printf("%d个素数\n", count); system("pause"); return 0; }
2. 输出乘法口诀表
#include<stdio.h> #include<windows.h> int main() { int i,j; for (i = 1; i <= 9; i++) { for (j =1;j <= i; j++) { printf("%d*%d= %d ", i, j, i*j); } printf("\n"); } system("pause"); return 0; }
3. 判断1000年---2000年之间的闰年
#include<stdio.h> #include<windows.h> int main() { int year; for (year=1000;year<=2000;year++) { if (year%4==0&&year%100!=0) printf("%d为闰年\n", year); else if (year % 400 == 0) printf("%d为闰年\n", year); } system("pause"); return 0; }
4.给定两个整形变量的值,将两个值的内容进行交换
#include<stdio.h> #include<windows.h> int main() { int i = 5; int j = 6; printf("%d %d\n", i, j); /*i = i*j; j = i / j; i = i / j;*/ //缺陷:j为非零,整除过程中出现小数 /*i = i + j; j = i - j; i = i - j;*/ //有缺陷!! /*int tmp; tmp = i; i = j; j = tmp;*/ //引入了新的变量 printf("%d %d\n", i, j); system("pause"); return 0; }5. 求10 个整数中最大值
#define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<windows.h> int main() { int arr[10]; int max = arr[0]; int i; printf("输入10个数:\n"); for (i = 0; i < 10; i++) { scanf("%d", &arr[i]); if (max < arr[i]) max = arr[i]; } printf("10个数的最大值是:%d\n", max); system("pause"); return 0; }6.最大公约数
#define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<windows.h> int main() { int a, b; int i = 0; printf("输入两个非零数:"); scanf("%d%d", &a,&b); i = a%b; while (i != 0) { a = b; b = i; i = a%b; } printf("最大公约数是:%d \n", b); system("pause"); return 0; }小游戏:
1.猜数字游戏
#define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<windows.h> #include<stdlib.h> #include<time.h> int main() { int input=0,num=0; int i; srand((unsigned)time(NULL)); int m = rand()%101; while(1) { printf("请猜数字: "); scanf("%d", &input); if (input == m) { printf("猜对了!\n"); break; } else if (input>m) { printf("猜大了\n"); } else { printf("猜小了"); } } printf("%d\n", m); system("pause"); return 0; }2.三次密码输入
#define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<windows.h> #include<math.h> int main() { char*a = "123456"; int i = 0; char pwd[7]; for (i = 0; i < 3; i++) { printf("请输入密码:>"); scanf("%s", pwd); if (strcmp(a, pwd) == 0) { break; } else printf("这是第%d次输入错误!\n", i + 1); } if (i < 3) { printf("登录成功!"); } else printf("输入错误三次!\n"); system("pause"); return 0; }
以上是我在学习C基础时候的一些代码,有不足的地方望各位前辈大神指教!;
第一次写博客,蛮激动的——>>come from My_heart_ ;
未完,待续>>
相关文章推荐
- Android 手动显示和隐藏软键盘
- MySQL 数据库实现远程连接
- centos6 ssh 设置免密码登录
- ubuntu14.04关机卡死解决方案
- HDU 2122 Ice_cream’s world III
- spring data jpa 了解以及环境搭建
- C - Train Problem II——(HDU 1023 Catalan 数)
- 顺序表基本运算(线性表)c
- C++中str1::function和bind
- 实验4 颜色、字符串资源的使用 实验报告
- 第三周
- 【NOIP2013提高组day2】【JZOJ 3537】华容道
- linux下so动态库一些不为人知的秘密(上)
- EditText焦点一直在末尾!
- AngularJS 过滤器(filter)
- HDU 2141 can you find it?【二分查找】
- 关于转发与重定向
- 蓝牙学习之旅——低功耗蓝牙之广播报文SCAN_RSP
- hdu 2859 Phalanx 动态规划
- 连续时间系统的时域分析