当前位置: 首页 > news >正文

初学C语言100题:经典例题节选(源码分享)

1.输出10000以内所有完数

完数的概念 一个正整数的所有因子(除了自身以外的约数)的和恰巧等于它本身

#include <stdio.h>int main()
{int i = 0;for (i = 2; i <= 10000; i++)//生成1到10000之间的数{int j = 0;int sum = 0;//注意这里的sum每次循环结束都要重置一下for (j = 1; j < i; j++)//每次{if (i % j == 0)//如果模等于0 说明该数是因子{sum += j;//}}if (sum == i)printf("%d ", i);}return 0;
}

2.水仙花数

仙花数是指一个 3 位数,它的每个数位上的数字的 3次幂之和等于它本身。

例如:1^3 + 5^3+ 3^3 = 153。

#include <stdio.h>int main()
{int a, b, c;int i = 0;for (i = 100; i < 1000; i++){a = i % 10;b = i / 10 % 10;c = i / 100;if ((a * a * a + b * b * b + c * c * c) == i){printf("%d为水仙花数\n", i);}}return 0;
}

3.循环右移

#include <stdio.h>
int main()
{int arr[] = { 1,2,3,4,5 };int k = arr[4];//把最后一位存储到一个变量中int i = 0;for (i = 4; i >=1; i--){arr[i] = arr[i - 1];//每次后一位等于前一位的值}arr[0] = k;//把最后一位放到第一位中for (i = 0; i < 5; i++){printf("%d ", arr[i]);}return 0;
}

4.数组的逆置

#include <stdio.h>int main()
{int arr[] = { 1,2,3,4,5,6,7,8,9,10 };int i, j, t;for (i = 0,j = 9; i < j; i++, j--){t = arr[i];arr[i] = arr[j];arr[j] = t;}for (i = 0; i < 10; i++){printf("%d ", arr[i]);}return 0;
}

5.字符串的逆置

#include <stdio.h>
#include <string.h>
int main()
{char s[] = "helloworld";int len = strlen(s);char* p, * q;char ch;p = s;q = s + len-1;while (p < q){ch = *p;*p = *q;*q = ch;p++;q--;}puts(s);return 0;
}

6.删除字符串中的字符

#include <stdio.h>
#include <string.h>
int main()
{char arr[] = "abcccbbaac";char ch;printf("请输入你要删除的字符\n");scanf("%c", &ch);int len = strlen(arr);//求字符串长度int i, j = 0;for (i = 0; i < len; i++){if (arr[i] == ch)continue;//如果为要删除字符,跳过继续循环else{arr[j] = arr[i];// 如果不是要删除的字符,字符向前覆盖j++;}}arr[j] = '\0';//循环结束 最后一个为字符串的\0printf("%s\n", arr);//for (i = 0; arr[i] != '\0'; i++)//{//	printf("%c", arr[i]);//}return 0;
}

感谢大家能看到最后, 如果有不足的地方多多指出,会持续更新的!码字不易,求三连

http://www.lryc.cn/news/358145.html

相关文章:

  • C++设计模式之策略模式、迭代器模式、适配器模式、工厂模式、超级工厂模式、享元模式、代理模式
  • 18 js时间对象
  • 安卓赤拳配音v1.0.2Ai配音神器+百位主播音色
  • 前端面试题日常练-day40 【面试题】
  • UG NX二次开发(C#)-UFun函数-利用UFPart.Export导出模型中的对象并创建一个新的part
  • SFOS2:组件介绍
  • 交换机的三层交换技术
  • 探秘URL的奥义:JavaScript中轻松获取页面参数值的N种姿势【含代码示例】
  • VSCode小技巧,忽略不想格式化的代码行
  • 揭秘网络编程:同步与异步IO模型的实战演练
  • 在Visual Studio Code和Visual Studio 2022下配置Clang-Format,格式化成Google C++ Style
  • 民国漫画杂志《时代漫画》第32期.PDF
  • RTKLIB学习--前向滤波
  • 利用C++与Python调用千帆免费大模型,构建个性化AI对话系统
  • VTK9.2.0+QT5.14.0绘制三维显示背景
  • Vue.js2+Cesium1.103.0 十六、多模型轨迹运动
  • Matlab|基于PMU相量测量单元进行电力系统电压幅值和相角状态估计
  • 【C++】---二叉搜索树
  • FastAPI - 依赖注入3
  • 【网络运维的重要性】
  • YOLOv5改进 | 注意力机制 | 添加双重注意力机制 DoubleAttention【附代码/涨点能手】
  • 自用网站合集
  • 【Golang】gin框架如何在中间件中捕获响应并修改后返回
  • 电脑同时配置两个版本mysql数据库常见问题
  • Java | Leetcode Java题解之第112题路径总和
  • HaloDB 的 Oracle 兼容模式
  • 【Python】解决Python报错:TypeError: ‘xxx‘ object does not support item assignment
  • Spring-注解
  • 旧手机翻身成为办公利器——PalmDock的介绍也使用
  • 期货交易的雷区