最近看到一本好评量很高的的C语言入门书,课本真的很好,入门的话。专业性没有那么强,但入门足够了!!好评!看着看着就想把这本书的题课后习题都写出来,最后就有了这个小结。可能有的不是最好,不那么专业,但主要是以初学者的思维角度去写。尽量让初学者通俗易懂。

链接:https://pan.baidu.com/s/1nArPBm8nxCrj8awWQBglSw

提取码:zlm8

第五章

  1. //第六节
  2. /*请在4~100内验证哥德巴赫猜想,输出每一个偶数的所有可能的拆分方法。
  3. 例如:
  4. 4=2+2
  5. 6=3+3
  6. 8=3+5
  7. 10=3+7=5+5
  8. 12=5+7
  9. 14=3+11=7+7
  10. ……
  11. */
  12. #include <stdio.h>
  13. #include <stdlib.h>
  14. int main() {
  15. int k,a,b,i,fa,fb;
  16. for(k=4;k<=100;k=k+2){
  17. printf("%d",k);
  18. for(a=2;a<=k/2;a++){
  19. fa=0;//判断a是否为素数
  20. for(i=2;i<=a-1;i++){
  21. if(a%i==0){
  22. fa=1;
  23. break;
  24. }
  25. }
  26. if(fa==0){//如果a为素数
  27. b=k-a;//判断b是否为质数
  28. fb=0;
  29. for(i=2;i<=b-1;i++){
  30. if(b%i==0){
  31. fb=1;
  32. break;
  33. }
  34. }
  35. if(fb==0){
  36. printf("=");
  37. printf("%d+%d",a,b);
  38. }
  39. }
  40. }
  41. printf("\n");
  42. }
  43. system("pause");
  44. return 0;
  45. }
  1. //第七节
  2. /*1、输入一个3位数,求这个数个位、十位和百位的数之和。例如, 输入782,输出17;输入156,输出12。*/
  3. #include <stdio.h>
  4. #include <stdlib.h>
  5. int main() {
  6. int a,i,j,k;
  7. scanf("%d",&a);
  8. i=a/100;
  9. j=(a/10)%10;
  10. k=a%10;
  11. printf("%d",i+j+k);
  12. system("pause");
  13. return 0;
  14. }
  15. /*2.输入一个n 位数,范围在1~99 999 999,求这个n位数每一位上的数之和。
  16. 例如,输入12,输出3;输入234 510,输出15。*/
  17. #include <stdio.h>
  18. #include <stdlib.h>
  19. int main() {
  20. long int a,sum=0,i;
  21. scanf("%d",&a);
  22. i=a;
  23. while(i){
  24. sum=sum+(i%10);//通过循环将数字n的每一位都剥离下来,并存储到sum中
  25. i=i/10;
  26. }
  27. printf("%d",sum);
  28. system("pause");
  29. return 0;
  30. }
  1. //第八节
  2. /*用1~6这6个自然数组成一个三角形,并让这个三角形三条边上数字之和相等。例如,如图5-2所示的三角形中,三条边的值之和分别 为:5+3+4、4+2+6、5+1+6,都等于12。那么现在请你输出所有的可能。
  3. */
  4. #include <stdio.h>
  5. #include <stdlib.h>
  6. int main() {
  7. int a, b, c, ab, bc, ac,count=1;
  8. for (a = 1; a <= 6; a++)
  9. for (b = 1; b <= 6; b++)
  10. for (c = 1; c <= 6; c++)
  11. for (ab = 1; ab <= 6; ab++)
  12. for (bc = 1; bc <= 6; bc++)
  13. for (ac = 1; ac <= 6; ac++) {
  14. if (a != b && a != c && a != ab && a != bc &&
  15. a != ac && b != c && b != ab && b != bc &&
  16. b != ac && c != ab && c != bc &&
  17. c != ac && ab != bc &&
  18. ab != ac && bc != ac) {
  19. if (a + ab + b == a + ac + c && a + ab + b == b + bc + c) {
  20. printf("这个三角形有%d\n",count);
  21. printf(" %d \n", a);
  22. printf(" %d %d \n", ab, ac);
  23. printf("%d %d %d\n", b, bc, c);
  24. count++;
  25. }
  26. }
  27. }
  28. system("pause");
  29. return 0;
  30. }
  1. //第九节
  2. /*如何生成一个1~20 000 000的随机数?*/
  3. #include <stdio.h>
  4. #include <time.h>
  5. #include <stdlib.h>
  6. int main() {
  7. int a;
  8. srand((unsigned)time(NULL));
  9. a=rand()*1000;
  10. printf("%d",a);
  11. system("pause");
  12. return 0;
  13. }

第六章

  1. //第六节
  2. //输入n个数,并将这n 个数按照从小到大或者从大到小的顺序输出。
  3. #include <stdio.h>
  4. #include <stdlib.h>
  5. int main(){
  6. int i,j,t,n;
  7. scanf("%d",&n);
  8. int a[n];
  9. for(i=0;i<n;i++){
  10. scanf("%d",&a[i]);
  11. }
  12. for(i=0;i<n-1;i++){
  13. for(j=i;j<n;j++){
  14. if(a[i]>a[j]){
  15. t=a[i];a[i]=a[j];a[j]=t;
  16. }
  17. }
  18. }
  19. for(i=0;i<n;i++){
  20. printf("%d ",a[i]);
  21. }
  22. return 0;
  23. }

第七章

  1. //第一节
  2. #include <stdio.h>
  3. #include <stdlib.h>
  4. int main(){
  5. int a,b;
  6. char c;
  7. scanf("%d%c%d",&a,&c,&b);
  8. if(c=='+')
  9. printf("%d",a+b);
  10. if(c=='-')
  11. printf("%d",a-b);
  12. if(c=='*')
  13. printf("%d",a*b);
  14. if(c=='/')
  15. printf("%d",a/b);
  16. return 0;
  17. }
  1. //第二节
  2. getchar()读取一个字符,输入后等待用户按“Enter”键结束(带回 显)。
  3. getche()读取一个字符,输入后立即获取字符,不用按“Enter”键 结束(带回显)。
  4. getch()读取一个字符,输入后立即获取字符,不用按“Enter”键 来结束(不带回显)。
  1. //第六节
  2. //输入两个单词,然后按照字典序输出这两个单词。
  3. //strcmp(a, b)就是比较字符串a和字 符串b在字典中的顺序。
  4. //如果字符串a和字符串b完全相同,那么返回值为0。
  5. //如果字符串a在字典中比字符串b先出现,那么返回值小于0。
  6. //如果字符串a在字典中比字符串b后出现,那么返回值大于0。
  7. //举一个例子:假设a和b是两个字符数组,分别存储两个字符串,然 后把a和b按照字典序输出。
  8. #include <stdio.h>
  9. #include <stdlib.h>
  10. int main(){
  11. char a[101],b[101];
  12. gets(a);
  13. gets(b);
  14. if(strcmp(a,b)<=0){
  15. puts(a);
  16. puts(b);
  17. }else{
  18. puts(b);
  19. puts(a);
  20. }
  21. return 0;
  22. }
  1. //第七节
  2. //输入5个单词,然后把这些单词按照字典序输出。
  3. //strcpy(a[i], a[j]);的意思就是把字符串a[j]的内容原封不动地复制到字符串a[i]中,从而替换掉字符串a[i]中原来的内容。
  4. #include <stdio.h>
  5. #include <stdlib.h>
  6. int main(){
  7. char a[5][11],t[11];
  8. int i,j;
  9. for(i=0;i<=4;i++){
  10. gets(a[i]);
  11. }
  12. for(i=0;i<=3;i++){
  13. for(j=j+1;j<=4;j++){
  14. if(strcmp(a[i],a[j])>0){
  15. strcpy(t,a[i]);
  16. strcpy(a[i],a[j]);
  17. strcpy(a[j],t);
  18. }
  19. }
  20. }
  21. for(i=0;i<=4;i++){
  22. puts(a[i]);
  23. }
  24. return 0;
  25. }

啊哈!C语言课后参考答案下的更多相关文章

  1. 啊哈!C语言课后参考答案上

    最近看到一本好评量很高的的C语言入门书,课本真的很好,入门的话.专业性没有那么强,但入门足够了!!好评!看着看着就想把这本书的题课后习题都写出来,最后就有了这个小结.可能有的不是最好,不那么专业,但主 ...

  2. 趣味编程:C#中Specification模式的实现(参考答案 - 下)

    一篇文章中我们利用C#语言的特性实现了一种轻量级的Specification模式,它的关键在于抛弃了具体的Specification类型,而是使用一个委托对象代替唯一关键的IsSatisfiedBy方 ...

  3. 全国计算机等级考试二级教程2019年版——Python语言程序设计参考答案

    第二章 Python语言基本语法元素 一.选择题C B B C A D B A D B二.编程题1.获得用户输入的一个整数N,计算并输出N的32次方.在这里插入图片描述2.获得用户输入的一段文字,将这 ...

  4. 《招聘一个靠谱的iOS》面试题参考答案(下)

    相关文章: <招聘一个靠谱的iOS>面试题参考答案(上) 说明:面试题来源是微博@我就叫Sunny怎么了的这篇博文:<招聘一个靠谱的 iOS>,其中共55题,除第一题为纠错题外 ...

  5. web实验指导书和课后习题参考答案

    实验指导书 :http://course.baidu.com/view/daf55bd026fff705cc170add.html 课后习题参考答案:http://wenku.baidu.com/li ...

  6. 【转载】经典10道c/c++语言经典笔试题(含全部所有参考答案)

    经典10道c/c++语言经典笔试题(含全部所有参考答案) 1. 下面这段代码的输出是多少(在32位机上). char *p; char *q[20]; char *m[20][20]; int (*n ...

  7. 史上最全Java面试题整理(附参考答案)

    下列面试题都是在网上收集的,本人抱着学习的态度找了下参考答案,有不足的地方还请指正,更多精彩内容可以关注我的微信公众号:Java团长 1.面向对象的特征有哪些方面? 抽象:将同类对象的共同特征提取出来 ...

  8. 非常全的linux面试笔试题及参考答案

    一.填空题: 1. 在Linux系统中,以 文件 方式访问设备 . 2. Linux内核引导时,从文件/etc/fstab 中读取要加载的文件系统. 3. Linux文件系统中每个文件用 i节点来标识 ...

  9. C++ Primer 第 5 版 习题参考答案

    从 5 月初 - 8 月 16 日,每天基本都在啃 C++ 的语法.起初直接看C++ Primer 中文版(第 5 版),发现后边的章节看着很吃力.所以就转而看了清华大学郑莉老师和李超老师的视频C++ ...

随机推荐

  1. @noi.ac - 489@ shuffle

    目录 @description@ @solution@ @accepted code@ @details@ @description@ 给定一个长度为 n 的序列 s1,s2,-,sn,它有 2^n− ...

  2. Logback新版本报no applicable action for [Encoding]问题

    logback.xml配置文件如下: <?xml version="1.0" encoding="UTF-8"?> <configuratio ...

  3. 请求(RequestInfo)

    请求类型 StringRequestInfo 用在 SuperSocket 命令行协议中. 你也可以根据你的应用程序的需要来定义你自己的请求类型. 例如, 如果所有请求都包含 DeviceID 信息, ...

  4. settTimeout vs setInterval

    setTimeout:过一段固定的时间后,将代码提交到代码队列中排队. setInterval:每隔一段固定的时间,执行一次代码. 他们两都接受两个参数,第一个参数是字符串或者函数,第二个参数是设定的 ...

  5. Python--day62--使用Bootstrap样式的出版社

    没有使用之前: 使用Bootstrap样式之后:

  6. 如何用for..of.. 遍历一个普通的对象?

    如何用for..of.. 遍历一个普通的对象? 首先了解一下for..of..: 它是es6新增的一个遍历方法,但只限于迭代器(iterator), 所以普通的对象用for..of遍历 是会报错的.下 ...

  7. 【9307】&【a303】过河卒(NOIP2002)

    Time Limit: 10 second Memory Limit: 2 MB 问题描述 如图,A点有一个过河卒,需要走到目标B点.卒行走的规则:可以向下.或者向右. 同时在棋盘上的任一点有一个对方 ...

  8. UVA 1025 "A Spy in the Metro " (DAG上的动态规划?? or 背包问题??)

    传送门 参考资料: [1]:算法竞赛入门经典:第九章 DAG上的动态规划 题意: Algorithm城市的地铁有 n 个站台,编号为 1~n,共有 M1+M2 辆列车驶过: 其中 M1 辆列车从 1 ...

  9. windows服务器运维日常--防火墙打开后ping不通

    1. 打开防火墙,有利于安全 2. 添加80端口,支持互联网访问:添加3389端口,以支持远程桌面连接 3. 发现开了防火墙之后,ping不通网址www.mjywxy.xin 4. 查找资料和测试发现 ...

  10. HDU 5912 Fraction(模拟)

    Problem Description Mr. Frog recently studied how to add two fractions up, and he came up with an ev ...