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

C语言笔记4:错题整理

#1.1 编程题
判断101-500之间有多少个素数,放入数组中,遍历数组输出所有素数,
素数: 除了1和它本身以外不再有其他的因数。

具体实现 就用DeepSeek了 以下是AI生成代码

#include <stdio.h>
#include <math.h>// 函数声明
int isPrime(int num);int main() {int primes[100]; // 假设最多有100个素数(实际在101-500之间有少于100个素数)int count = 0;// 遍历101到500之间的所有数字for (int i = 101; i <= 500; i++) {if (isPrime(i)) {primes[count] = i; // 将素数存入数组count++;}}// 输出结果printf("101到500之间的素数共有%d个,分别是:\n", count);for (int i = 0; i < count; i++) {printf("%d ", primes[i]);if ((i + 1) % 10 == 0) { // 每行输出10个素数printf("\n");}}printf("\n");return 0;
}// 判断一个数是否为素数的函数
int isPrime(int num) {if (num <= 1) {return 0;}if (num == 2) {return 1;}if (num % 2 == 0) {return 0;}// 检查从3到sqrt(num)的所有奇数for (int i = 3; i <= sqrt(num); i += 2) {if (num % i == 0) {return 0;}}return 1;
}

1.2 从键盘输入10个数据,存入数组当中,程序实现,统计数组当中出现次数最多的数以及是哪一个数。(如果有次数相同则输出第一个出现数字).

#include <stdio.h>#define SIZE 10int main() {int arr[SIZE];int i, j;// 从键盘输入10个数据printf("请输入10个整数:\n");for (i = 0; i < SIZE; i++) {scanf("%d", &arr[i]);}int maxCount = 0;  // 最大出现次数int mostFrequent = arr[0];  // 出现次数最多的数,初始为第一个元素// 遍历数组统计每个数的出现次数for (i = 0; i < SIZE; i++) {int currentCount = 1;  // 当前数字的出现次数// 检查当前数字在数组中出现的次数for (j = i + 1; j < SIZE; j++) {if (arr[i] == arr[j]) {currentCount++;}}// 如果当前数字出现次数更多,更新最大值if (currentCount > maxCount) {maxCount = currentCount;mostFrequent = arr[i];}}// 输出结果printf("\n数组中出现次数最多的数是:%d\n", mostFrequent);printf("它出现了%d次。\n", maxCount);return 0;
}
  1. 有一个3×4的矩阵,要求输出其中最大的值以及它的行号和列号。
    int a[3][4] = {
    {123, 94, -10, 218},
    {3, 9, 10, -83},
    {45, 16, 44, -99}
    };
#include <stdio.h>int main() {int a[3][4] = {{123, 94, -10, 218},{3, 9, 10, -83},{45, 16, 44, -99}};int max = a[0][0];  // 初始化最大值为矩阵第一个元素int row = 0, col = 0;  // 初始化最大值的位置// 遍历矩阵寻找最大值for (int i = 0; i < 3; i++) {for (int j = 0; j < 4; j++) {if (a[i][j] > max) {max = a[i][j];row = i;col = j;}}}// 输出结果printf("矩阵中的最大值是:%d\n", max);printf("它位于第%d行,第%d列\n", row + 1, col + 1);  // 行号和列号从1开始计数return 0;
}

4 写一个函数,统计一个int类型(32)的数中有多少位二进制数1?

#include <stdio.h>int countBits(int num) {int count = 0;unsigned int unum = (unsigned int)num; // 处理负数情况for (int i = 0; i < 32; i++) {if (unum & 1) {  // 检查最低位是否为1count++;}unum >>= 1;  // 右移一位}return count;
}int main() {int number;printf("请输入一个整数: ");scanf("%d", &number);printf("数字 %d 的二进制表示中有 %d 个1\n", number, countBits(number));return 0;
}

请实现类似atoi函数,
把字符串“123456”转换成数值123456 int atoi(char *str);

#include <stdio.h>
int atoi(char* str);
int main(int argc, char *argv[])
{ char a[10]="12345678";printf("%d\n",atoi(a));return 0;
} 
int atoi(char* str)
{int result=0;while(*str){result=result*10+(*str)-'0';str++;}return result;
}

选择题和答案解析

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
//这题注意 宏定义特别小心

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
不是原创,我只是个搬运工 记录下错题,重要的事情说三遍
不是原创,我只是个搬运工 记录下错题,重要的事情说三遍
不是原创,我只是个搬运工 记录下错题,重要的事情说三遍

http://www.dtcms.com/a/310392.html

相关文章:

  • QT开发---图形与图像(补充)
  • ZYNQ与MPSoC实战:从Vitis入门到项目开发
  • Java学习-运算符
  • HRM论文解读
  • Windows安装虚拟机遇到内容解码失败
  • 【Django】-2- 处理HTTP请求
  • HTTP客户端实现:深入理解Go的net/http包
  • Vue3 + Vite 项目中 API 代理配置问题分析与解决
  • 如何处理Y2K38问题
  • 驾驶场景安全带识别误检率↓76%:陌讯动态特征聚合算法实战解析
  • 【深度学习①】 | Numpy数组篇
  • 【从0开始学习Java | 第12篇】内部类
  • C语言:冒泡排序
  • VUE:学习路径
  • 机器学习:开启智能时代的钥匙
  • 前端学习日记(十七)
  • Unity3D制作UI动画效果
  • treeshaking,webpack,vite
  • 技术为核,口碑为盾:普瑞眼科成都市场“卷王”地位的形成逻辑
  • Canny边缘检测算法-个人记录
  • 计数组合学7.10(舒尔函数的组合定义)
  • 图片搜索1688的商品技术实现:API接口item_search_img
  • 嵌入式——C语言:俄罗斯方块
  • C#常见的转义字符
  • 国产开源大模型崛起:使用Kimi K2/Qwen2/GLM-4.5搭建编程助手
  • 浏览器渲染过程
  • VSCode Python 与 C++ 联合调试配置指南
  • web前端第一次作业
  • TwinCAT3编程入门2
  • 如何快速给PDF加书签--保姆级教程