365真正的官网-beat365体育登陆网址-365bet.com

— 怀旧经典 · 永恒记忆 —

10个基础且实用的C语言经典实例【附源码】

10个基础且实用的C语言经典实例【附源码】

1、输出9*9口诀。共9行9列,i控制行,j控制列。代码语言:c复制/**

* @author: 冲哥

* @date: 2022/4/19

* @description:实现乘法口诀

* @公众号: C语言中文社区

*/

#include

int main() {

int i, j, result;

for (i = 1; i < 10; i++) {

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

result = i * j;

printf("%d*%d=%-4d", i, j, result);

}

printf("\n");

}

return 0;

}运行结果

2、古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?代码语言:c复制/**

* @author: 冲哥

* @date: 2022/4/19

* @description:

* @公众号: C语言中文社区

*/

#include

int main() {

long f1, f2;

int i;

f1 = f2 = 1;

for (i = 1; i <= 20; i++) {

printf("%12ld %12ld", f1, f2);

if (i % 2 == 0) printf("\n");/*控制输出,每行四个*/

f1 = f1 + f2; /*前两个月加起来赋值给第三个月*/

f2 = f1 + f2; /*前两个月加起来赋值给第三个月*/

}

return 0;

}运行结果

3、判断101-200之间有多少个素数,并输出所有素数及素数的个数。程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。

代码语言:c复制/**

* @author: 冲哥

* @date: 2022/4/19

* @description:

* @公众号: C语言中文社区

*/

#include

#include

int main() {

int m, i, k, h = 0, leap = 1;

printf("\n");

for (m = 101; m <= 200; m++) {

k = sqrt(m + 1);

for (i = 2; i <= k; i++)

if (m % i == 0) {

leap = 0;

break;

}

if (leap) /*内循环结束后,leap依然为1,则m是素数*/

{

printf("%-4d", m);

h++;

if (h % 10 == 0)

printf("\n");

}

leap = 1;

}

printf("\nThe total is %d", h);

return 0;

}运行结果

4、判断某一年是否为闰年代码语言:c复制/**

* @author: 冲哥

* @date: 2022/4/19

* @description:

* @公众号: C语言中文社区

*/

#include

int main(){

int year;//定义整形变量year

printf("请输入要查询的年份:\n");

scanf("%d", &year);//从键盘输入要查询的年份

if ((year % 4 == 0 && year % 100 !=0) || year % 400 == 0) {//判断是否为闰年的条件

printf("%d年这一年是闰年\n", year);

} else {

printf("%d年这一年不是闰年\n", year);

}

}5、个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程找出1000以内的所有完数。代码语言:c复制/**

* @author: 冲哥

* @date: 2022/4/19

* @description:

* @公众号: C语言中文社区

*/

#include

int main() {

static int k[10];

int i, j, n, s;

for (j = 2; j < 1000; j++) {

n = -1;

s = j;

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

if ((j % i) == 0) {

n++;

s = s - i;

k[n] = i;

}

}

if (s == 0) {

printf("%d 是完数: ", j);

for (i = 0; i < n; i++)

printf("%d,", k[i]);

printf("%d\n", k[n]);

}

}

return 0;

}运行结果

6、编程打印直角杨辉三角形代码语言:c复制/**

* @author: 冲哥

* @date: 2022/4/19

* @description:

* @公众号: C语言中文社区

*/

#include

int main() {

int i, j, a[6][6];

for (i = 0; i <= 5; i++) {

a[i][i] = 1;

a[i][0] = 1;

}

for (i = 2; i <= 5; i++)

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

a[i][j] = a[i - 1][j] + a[i - 1][j - 1];

for (i = 0; i <= 5; i++) {

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

printf("%4d", a[i][j]);

printf("\n");

}

return 0;

}运行结果

7、将输入的字符串反序输出代码语言:c复制/**

* @author: 冲哥

* @date: 2022/4/19

* @description:

* @公众号: C语言中文社区

*/

#include

#include

int main() {

char c[200], c1;

int i, j, k;

printf("Enter a string: ");

scanf("%s", c);

k = strlen(c);

for (i = 0, j = k - 1; i < k / 2; i++, j--) {

c1 = c[i];

c[i] = c[j];

c[j] = c1;

}

printf("%s\n", c);

return 0;

}运行结果

8、在一个字串s1中查找一子串s2,若存在则返回子串在主串中的起始位置,不存在则返回-1。代码语言:c复制/**

* @author: 冲哥

* @date: 2022/4/19

* @description:

* @公众号: C语言中文社区

*/

#include

#include

int search(char s1[], char s2[]) {

int i = 0, j, len = strlen(s2);

while (s1[i]) {

for (j = 0; j < len; j++)

if (s1[i + j] != s2[j]) break;

if (j >= len)return i;

else i++;

}

return -1;

}

int main() {

char s1[6] = "thisis";

char s2[5] = "is";

int num = search(s1, s2);

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

return 0;

}运行结果

9、输入一个字符串,判断其是否为回文。回文字符串是指从左到右读和从右到左读完全相同的字符串。代码语言:c复制/**

* @author: 冲哥

* @date: 2022/4/19

* @description:

* @公众号: C语言中文社区

*/

#include

#include

int main() {

char s[100];

int i, j, n;

printf("输入字符串:\n");

gets_s(s, 100);

n = strlen(s);

for (i = 0, j = n - 1; i < j; i++, j--)

if (s[i] != s[j]) break;

if (i >= j) printf("是回文串\n");

else printf("不是回文串\n");

return 0;

}运行结果

10、用指针变量输出结构体数组元素。代码语言:c复制/**

* @author: 冲哥

* @date: 2022/4/19

* @description:

* @公众号: C语言中文社区

*/

#include

struct student {

int num;//学号

char *name;//姓名

char sex;//性别

int age;//年龄

} stu[5] = {{1001, "张三", 'F', 18},

{1002, "李四", 'M', 28},

{1003, "王五", 'F', 34},

{1004, "赵六", 'F', 25},

{1005, "前七", 'M', 19}};

int main() {

int i;

struct student *ps;

printf("Num \tName\t\t\tSex\tAge\t\n");

//用指针变量输出结构体数组元素。

for (ps = stu; ps < stu + 5; ps++)

printf("%d\t%-10s\t\t%c\t%d\t\n", ps->num, ps->name, ps->sex, ps->age);

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

//用数组下标法输出结构体数组元素学号和年龄。

for (i = 0; i < 5; i++)

printf("%d\t%d\t\n", stu[i].num, stu[i].age);

return 0;

}运行结果

相关推荐

beat365体育登陆网址 客服岗位职责和要求

客服岗位职责和要求

📅 07-13 👁️ 8333
beat365体育登陆网址 欧洲移民为何考虑匈牙利?多维度核心优势解析

欧洲移民为何考虑匈牙利?多维度核心优势解析

📅 01-08 👁️ 3058
beat365体育登陆网址 雪花啤酒系列推荐:10款口感清爽,畅快无比的啤酒选择!

雪花啤酒系列推荐:10款口感清爽,畅快无比的啤酒选择!

📅 02-19 👁️ 8950
365真正的官网 妈妈是超人3

妈妈是超人3

📅 01-25 👁️ 7902
365bet.com 足浴盆产品排行榜

足浴盆产品排行榜

📅 08-03 👁️ 6677
beat365体育登陆网址 电子商务的兴起: 介绍、发展与分类

电子商务的兴起: 介绍、发展与分类

📅 01-29 👁️ 7892
365真正的官网 三种人不宜站桩,需要特别注意(附自查表)

三种人不宜站桩,需要特别注意(附自查表)

📅 06-21 👁️ 9077
365bet.com 自动铁锤-魔兽世界正式服物品数据库

自动铁锤-魔兽世界正式服物品数据库

📅 12-02 👁️ 9129