IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> C语言学习记录——? 分支与循环(3) -> 正文阅读

[C++知识库]C语言学习记录——? 分支与循环(3)

更多的练习

关键字不可以做变量名,不可以自己创建。

指针变量32位为4个字节,64位为8个字节。

static可以修饰函数,局部变量,全局变量

switch()括号里面的参数类型不能是浮点数类型,int, char都行

打印1~100之间所有3的倍数的数字:

int main()

{

int i = 0;

for(i = 1; i <= 100; i++)

{

if(i % 3 == 0)

printf("%d\n", i);

}

return 0;

}

给定两个数,求最大公约数:

int main()

{

int m = 24;

int n = 18;

int r = 0;

scanf("%d%d", &m, &n);

while(r = m % n)

{

m = n;

n = r;

}

printf("%d\n", n);

return 0;

}

打印1000~2000年之间的闰年:

int main()

{

int year = 0;

int count = 0;

for(year = 1000; year <= 2000; year++)

{

if(((year % 4 == 0) && (year %100! = 0)) || (year % 400 == 0))

{

printf("%d ", year);

count++;

}

printf("\ncount = %d\n", count);

return 0;

}

打印100~200之间的素数:

int main()

{

int i = 0;

int count = 0;

for(i = 100; i <= 200; i++)

{

//素数判断一种方法:试除法。比如说13,素数除了1和本身,只需要看2~12之间有没有可以整除13的即可。也就是2~i - 1

int j = 0;

int count = 0;

for(j = 2; j < 1; j++)

{

if(i % j == 0)

{

break;

}

}

if (j == i)

{

count ++;

printf("%d ", i);

}

}

printf(\ncount = $d\n", count);

return 0;

}

不过这种算法不够好:

int j = 0;

int count = 0

//sqrt--开平方的数学库函数

for(i = 101; i <= 20; i += 2)

{

int j = 0;

for(j = 2; j <= sqrt(i); j++)

{

if(i % j == 0)

{

break;

}

}

if (j > sqrt(i))

{

count ++;

printf("%d ", i);

}

}

printf(\ncount = $d\n", count);

return 0;

}

仍然不是很好的素数求法,但是也是做了点优化。

数1~100之间所有整数中出现多少个数字9:

int main()

{

int i = 0;

int count = 0;

for(i = 1; i <= 100; i++)

{

if(i % 10 == 9)

count++;

if(i / 10 == 9)

count++;

}

printf("count = %d\n", count);

return 0;

}

计算1/1-1/2+1/3-1/4........+1/99-1/100的值:

int main()

{

int i = 0;

double sum = 0.0;

int flag = 1;

for(i = 1; i <= 100; i++)

{

sum += flag*1.0/i;

flag = -flag;

}

printf("%lf\n",sum);

return 0;

}

求10个整数最大值:

int main()

{

int arr[] = {-1, -2, -3..-10};

int max = arr[0];

int i = 0;

int sz = sizeof(arr) / sizeof(arr[0]);

for(i = 1; i < sz; i++)

{

if(arr[i] > max)

{

max = arr[i];

}

}

ptintf("max = %d\n", max);

return 0;

}

打印乘法口诀表:

int main()

{

int i = 0;

for(i = 1; i <= 9; i++)

{

int j = 1;

for(j = 1; j <= i); j++)

{

printf("%d*%d=%-2d ", i, j, i*j)

}

printf("\n");

}

return 0;

}

猜数字游戏

#include <stdlib.h>

#include <time.h>

void menu()

{

printf("****************************\n");

printf("***? 1.play??? 0.exit???? ****\n");

printf("****************************\n");

void game()

{

int ret = 0;

int guess = 0;

//time_t time(time_t * timer)

ret = rand()%100 + 1;? //生成1~100之间随机数

while(1)

{

printf("猜数字:>“);

scanf("%d", &guess);

if(guess > ret)

{

printf("猜大了\n“);

else if(guess < ret)

printf(“猜小了\n”);

else

printf(“恭喜你,猜对了\n”);

break:

}

}

}

int main()

{

int input = 0;

srand((unsigned int)time(NULL));

do

{

menu();

printf("请选择>:”)

scanf("%d", &input);

switch(input)

{

case 1;

game();

break;

case 0;

printf("退出游戏\n");

break;

default:

printf("选择错误\n”);

break;

}while (input);

return 0;

goto语句

goto语句可以随意用的语句和标记跳转的标号。既然可以随意去哪,那么它的使用是带些破坏性质的,尽量不使用,除非没有其他代替的了。

int main()

{

printf("hello world\n");

goto again;

printf("nihao\n");

again:

printf("hehe\n");

return 0;

}

只打印hello world和hehe。

goto可能会程序执行顺序打乱,影响逻辑。但是goto也有很好的用处。最常见的用法就是终止程序在某些深度嵌套的结构的处理过程,例如一次跳出两层或多层循环。这种情况下使用break是达不到目的的。它只能从最内层循环退出到上一层的循环。两个例子:

for(...)

????? for(....)

????? {

?????????? for(....)

?????????? {

???????????????? if(disaster)

??????????????????????? goto error;

??????????? }

????? }

??? error;

????????? if(disaster)

????????????????? //处理错误情况

关机程序

#include <stdio.h>

#include <string.h>

#include <stdlib.h>

int main()

{

char input[10] = {0};

system("shutdown? -s? -t? 60");

again:

printf("电脑将在1分钟内关机,如果输入:不看了,就取消关机!\n请输入:>”);

scanf("%s", input);

if(strcmp(input, "不看了")== 0)

system("shutdown? -a");

}

else

{

goto again;

}

return 0;

}

或者

int main()

{

char input[10] = {0};

system("shutdown? -s? -t? 60");

while(1)

printf("电脑将在1分钟内关机,如果输入:不看了,就取消关机!\n请输入:>”);

scanf("%s", input);

if(strcmp(input, "不看了")== 0)

{

system ("shutdown? -a");

break;

}

}

return 0;

}

结束。2021元旦快乐,去往2022年。

???????????? ????

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2022-01-01 13:42:06  更:2022-01-01 13:42:50 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 10:55:25-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码