赞
踩
if语句
if(表达式) 语句;
if(表达式) 语句1;
else 语句2;
//多分支
if(表达式1)语句1;
else if(表达式2)语句2;
else 语句3;
#include <stdio.h>
int main()
{
if(表达式)
{
语句列表1;
}
else
{
语句列表2;
}
return 0;
}
switch语句
switch语句也是一种分支语句,常常用于多分支的情况
switch(整型表达式)
{
语句项;
}
其中语句项是一些case语句
default子句
如果表达式的所有case值都不匹配,程序不会终止,也不会报错。
因此可以在任何一个case可以出现的位置写default。
case语句若是不搭配break语句,则会在上一条case结束后执行下一条case。
代码演示
1、判断一个数是否为素数
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> int main() { int a; printf("请输入一个数字:\n"); scanf("%d", &a); int flag = a % 2; if (flag) { printf("是奇数\n"); } else { printf("是偶数\n"); } system("pause"); return 0; }
2、输出1-100之间的奇数
#include <stdio.h>
#include <stdlib.h>
int main()
{
for (int i = 1; i < 101; i++)
{
if ((i % 2) != 0)
{
printf("%d ", i);
}
}
system("pause");
return 0;
}
3、输入数字输出对应的星期
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> int main() { int a; printf("请输入一个数字:\n"); scanf("%d", &a); switch (a) { case 1: printf("星期一\n"); break; case 2: printf("星期二\n"); break; case 3: printf("星期三\n"); break; case 4: printf("星期四\n"); break; case 5: printf("星期五\n"); break; case 6: printf("星期六\n"); break; case 7: printf("星期七\n"); break; default: break; } system("pause"); return 0; }
4、输出周内和周么
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> int main() { int a; printf("请输入一个数字:\n"); scanf("%d", &a); switch (a) { case 1: case 2: case 3: case 4: case 5: printf("周内\n"); break; case 6: case 7: printf("周么\n"); break; default: break; } system("pause"); return 0; }
1、while循环
while(表达式)
{
语句;
}
//当条件满足的情况下,表达式成立语句执行,直到表达式不成立,语句退出。
break在循环中的作用,循环语句遇到break,永久终止循环;
continue在循环中的作用,continue之后的语句本次循环不执行,直接进下一次的循环入口。
2、for循环
for(表达式1;表达式2;表达式3)
循环语句;
//表达1为循环初识条件,表达式2为条件判断,表达式3为迭代部分。
break在循环中的作用,循环语句遇到break,永久终止循环;
continue在循环中的作用,continue之后的语句本次循环不执行,直接进下一次的循环入口。
3、do-while循环
do
循环语句;
while(表达式);
//循环至少执行一次
代码演示
5、while语句
#include <stdio.h> #include <stdlib.h> #if 0 int main() { int i = 1; while (i <= 10) { if (i == 5) { break; } printf("%d ", i); i++; } system("pause"); return 0; } #else int main() { int i = 1; while (i <= 10) { i++; if (i == 5) { continue; } printf("%d ", i); } system("pause"); return 0; } #endif
6、for循环
#include <stdio.h>
#include <stdlib.h>
int main()
{
int i = 0;
int k = 0;
for (i = 0, k = 0; k = 0; i++, k++)
{
k++;
}
printf("%d\n", k);
system("pause");
return 0;
}
7、do-while循环
#include <stdio.h>
#include <stdlib.h>
int main()
{
int i = 10;
do
{
printf("%d\n", i);
} while (i<10);
system("pause");
return 0;
}
1、计算n的阶乘
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> int main() { int res = 1; int n; scanf("%d", &n); for (int i = 1; i <= n; i++) { res *= i; } printf("%d! = %d", n, res); system("pause"); return 0; }
2、计算阶乘加法
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> int main() { int res = 1; int sum = 0; int n; scanf("%d", &n); for (int i = 1; i <= n; i++) { res *= i; sum += res; } printf("%d", sum); system("pause"); return 0; }
3、编写binsearch
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> int binsearch(int x, int v[], int n) { for (int i = 0; i < n; i++) { if (v[i] == x) { return i; } } return -1; } int main() { int arr[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; printf("%d\n", binsearch(4, arr, 10)); system("pause"); return 0; }
4、演示多个字符从两端向中间汇聚
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> #define SIZE 12 int main() { char ch1[SIZE] = "Hello World!"; char ch2[SIZE] = "$$$$$$$$$$$"; int left = 0; int right = SIZE - 1; while (left <= right) { ch1[left] = ch2[left]; ch1[right] = ch2[right]; left++; right--; printf("%s\n", ch1); system("cls"); } system("pause"); return 0; }
5、模拟用户登录
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> int main() { int i; char password[20] = ""; for (i = 0; i < 3; i++) { printf("请输入密码:"); scanf("%s", &password); if (strcmp(password, "abcdef") == 0) { printf("密码正确,登录成功\n"); break; } else { printf("密码错误,请重新输入\n"); } } if (i == 3){ printf("输入次数超过三次,无法登录"); } system("pause"); return 0; }
6、猜数字游戏
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> #include <time.h> void menu() { printf("################################\n"); printf("##########1、 play #######\n"); printf("##########0、 exit #######\n"); printf("################################\n"); } void game() { int random_num = rand() % 100 - 1; int input = 0; while (1) { printf("请输入要猜的数字:"); scanf("%d", &input); if (input > random_num) { printf("猜大了\n"); } else if (input < random_num) { printf("猜小了\n"); } else { printf("猜对了\n"); break; } } } int main() { int input = 0; srand((unsigned)time(NULL)); do { menu(); printf("请选择:"); scanf("%d", &input); switch (input) { case 0: break; case 1: game(); default: printf("选择错误,请重新选择\n"); break; } } while (input); system("pause"); return 0; }
7、二分查找
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> int main(){ int arr[10] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; int left = 0, right = 9; int to_find; printf("请输入要查找的数字:"); scanf("%d", &to_find); while (left <= right) { int mid = (left + right) / 2; if (arr[mid] < to_find){ left = mid + 1; } else if (arr[mid]>to_find){ right = mid - 1; } else{ break; } } if (left <= right){ printf("找到了\n"); } else{ printf("没找到\n"); } system("pause"); return 0; }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。