ImageVerifierCode 换一换
格式:DOCX , 页数:27 ,大小:124.74KB ,
资源ID:967583      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/967583.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C语言练习考研复习题.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C语言练习考研复习题.docx

1、C语言练习考研复习题1. 编写一个程序将用户输入的正整数转化为对应的二进制数。#include#include int main() int num; printf(请输入一个正整数:); scanf(%d, &num); /异常输入直接结束 if (num 0) printf(%d, a-i); printf(n); return 0;2. 请写出你所了解的linux系统中常用的命令并解释其功能。(1)pwd命令 该命令的英文解释为print working directory(打印工作目录)。输入pwd命令,Linux会输出当前目录。 (2) cd命令 cd命令用来改变所在目录。 cd /

2、 转到根目录中 cd 转到/home/user用户目录下 cd /usr 转到根目录下的usr目录中-绝对路径 cd test 转到当前目录下的test子目录中-相对路径(3)ls命令 ls命令用来查看目录的容。 选项 含义 -a 列举目录中的全部文件,包括隐藏文件 -l 列举目录中的细节,包括权限、所有者、组群、大小、创建日期、文件是否是等 -f 列举的文件显示文件类型 -r 逆向,从后向前地列举目录中容 -R 递归,该选项递归地列举当前目录下所有子目录的容 -s 大小,按文件大小排序 -h 以人类可读的方式显示文件的大小,如用K、M、G作单位 ls -l examples.doc 列举文件

3、examples.doc的所有信息 (4) cat命令 cat命令可以用来合并文件,也可以用来在屏幕上显示整个文件的容。 cat snow.txt 该命令显示文件snow.txt的容,ctrl+D退出cat。 (5)grep命令 grep命令的最大功能是在一堆文件中查找一个特定的字符串。 grep money test.txt 以上命令在test.txt中查找money这个字符串,grep查找是区分大小写的。 (6) touch命令 touch命令用来创建新文件,他可以创建一个空白的文件,可以在其中添加文本和数据。 touch newfile 该命令创建一个名为newfile的空白文件。 (7

4、)cp命令 cp命令用来拷贝文件,要复制文件,输入命令: cp cp t.txt Document/t 该命令将把文件t.txt复制到Document目录下,并命名为t。 3. 编写一个程序计算任一输入数字的各位数字之和。#include#include int main() int num; printf(请输入一个正整数:); scanf(%d, &num); /异常输入直接结束 if (num 0) printf(输入错误!); exit(0); int result = 0; while (num != 0) result += num % 10; num = num / 10; pr

5、intf(%dn, result); return 0;4. 编写一个程序判断用户输入任一正整数是否为素数。#include#include int main() int num; printf(请输入一个大于1正整数:); scanf(%d, &num); /异常输入直接结束 if (num 0 | num = 1) printf(输入错误!); exit(0); if (num=2) printf(%d是素数。n, num); exit(0); bool flag = true; /默认判断是素数 for (int i = 2; i num; i+) if (num%i = 0) flag

6、 =false; /发现了其他因子,不是素数 break; if (flag = true) printf(%d是素数。n, num); else printf(%d不是素数。n, num); return 0;5. 编写一个程序求给定三个字符串的最长公共字串。(难)这里我只写了两个字符串的比较方法,三个字符串的意思是一样的。#include #include #include int longest_common_substring(char *str1, char *str2) int i, k, len1, len2, len, s1_start, s2_start, idx, curm

7、ax, max; len1 = strlen(str1); len2 = strlen(str2); len = len1 + len2; max = 0; for (i = 0; i len; i+) s1_start = s2_start = 0; if (i len1) s1_start = len1 - i; /每次开始匹配的起始位置 else s2_start = i - len1; curmax = 0; for (idx = 0; (s1_start + idx len1) & (s2_start + idx max ? curmax : max; if (curmax max)

8、 max = curmax; k = s1_start + idx - 1; /保存连续子串长度增加时连续子串最后一个字符在str1字符串中的下标位置, /便于输出公共连续子串 curmax = 0; /max = curmax max ? curmax : max; if (curmax max) max = curmax; k = s1_start + idx - 1; /输出公共子串 char s100; for (i = 0; i max; i+) si = str1k - max + 1 + i; /公共字串在str1中的下标起始位置为k-max+1,结束位置为k si = 0; p

9、rintf(最长公共子串为:); puts(s); return max;int main(void) char str1100, str2100; printf(请输入第一个字符串:); gets(str1); printf(请输入第二个字符串:); gets(str2); int len = longest_common_substring(str1, str2); printf(最长公共连续子串的长度为:%dn, len); return 0;6. 编写一个程序计算用户输入的起始时间到终止时间的天数。#include bool isLeapYear(int year);int CalcD

10、ay(int yerar1, int month1, int day1, int year2, int month2, int day2);int leapMonth12 = 31,29,31,30,31,30,31,31,30,31,30,31 ;int normalMonth12 = 31,28,31,30,31,30,31,31,30,31,30,31 ;int main() int year1, year2, month1, month2, day1, day2; printf(请输入第一个日期(年 月 日):); scanf(%d%d%d, &year1, &month1, &day

11、1); printf(请输入第二个日期(年 月 日):); scanf(%d%d%d, &year2, &month2, &day2); int sum = CalcDay(year1, month1, day1, year2, month2, day2); printf(%dn, sum); return 0;/判断是否为闰年bool isLeapYear(int year) if (year % 4 = 0 & year % 100 != 0 | year % 400 = 0) return true; return false;int CalcDay(int yerar1, int mo

12、nth1, int day1, int year2, int month2, int day2) int result=0; if (yerar1!=year2) for (int i = yerar1+1; i year2; i+) /计算相差的整年 if (isLeapYear(i) result += 366; else result += 365; if (isLeapYear(yerar1) for (int i = month1+1; i = 12; i+) result += leapMonthi - 1; result += leapMonthmonth1 - 1 - day1; if (isLeapYear(yerar1) = false)

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1