ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

实验一 C语言开发编程初体验

2022-03-26 17:31:34  阅读:251  来源: 互联网

标签:lf 初体验 EOF int scanf 编程 C语言 printf include


task1_1.c

#include<stdio.h>
int main()
{
    printf(" O\n");
    printf("<H>\n");
    printf("I I\n");
    printf("\n");
    printf(" O\n");
    printf("<H>\n");
    printf("I I\n");


    return 0;
}

 

 

 

task1_2.c

#include <stdio.h>
int main()
{
    printf(" O           O \n");
    printf("<H>         <H>\n");
    printf("I I         I I\n");


    return 0;
}

 

 

 

task2_2.c

#include <stdio.h>
#include <math.h>
int main()
{
    double x, ans;
    
    while(scanf("%lf", &x) != EOF)
    {
        ans = pow(x, 365);
        printf("%.2f的365次方: %.2f\n", x, ans);
        printf("\n");
    }
    
    
    return 0;
 }

 

 

 

task2_3.c

#include<stdio.h>
#include<math.h>
int main()
{
    double F,C;
    scanf("%lf",&C);
    
    while(C)
    {
       F=9.0/5*C+32;
       printf("摄氏度C=%.2f时,华氏度f=%.2f\n",C,F);
       scanf("%lf",&C);   
    }
    
    
    return 0;
}

 

 

 

task3.c

#include<stdio.h>
int main()
{
    double x,y;
    char c1,c2,c3;
    int a1,a2,a3;
    
    scanf("%d%d%d",&a1,&a2,&a3);//未加地址运算符
    printf("%d,%d,%d\n",a1,a2,a3);
    getchar();
    
    scanf("%c%c%c",&c1,&c2,&c3);
    printf("%c,%c,%c\n",c1,c2,c3);

    scanf("%lf,%lf",&x,&y);//输出精度double型f前要加l
    printf("%lf,%lf\n",x,y);
    
    
    return 0;
}

 

 

 

task4.c

#include <stdio.h>
#include<math.h>
int main()
{
    int age1, age2;
    char gender1, gender2;
    
    
    scanf("%d%c%d%c", &age1, &gender1, &age2, &gender2);
    printf("age1 = %d, gender1 = %c\n", age1, gender1);
    printf("age2 = %d, gender2 = %c\n", age2, gender2);
    
    
    return 0; 
}

 

 

 

task5.c

#include <stdio.h>
int main()
{
    char ans1, ans2;
    
    printf("第3章认真学完一遍了没? (输入y或Y表示认真学完一遍了,输入n或N表示没有) :");
    ans1 = getchar(); // 从键盘输入一个字符,赋值给ans1
    getchar(); // 思考这里为什么要加这一行。试着去掉这一行,看看对运行有没有影响。
    
    printf("\n动手敲代码实践了没? (输入y或Y表示敲了,输入n或N表示木有敲) :");
    ans2 = getchar();
    
    if (ans1=='y'||ans2=='y'||ans1=='Y'||ans2=='Y') // 待补足,判断用户回答ans1和ans2都是小写y或大写Y
        printf("\n罗马不是一天建成的, 继续保持哦:)\n");
    else
        printf("\n罗马不是一天毁灭的, 我们回头建设吧\n");
    
    
    return 0;
}

 

 

 

task6.c

#include<stdio.h>
int main()
{
    int answer;
    char words[5000];
    
    printf("网课学习让一些人欢喜一些人忧.\n");
    printf("1.作为喜欢自学且自律的人,觉得这样很好,有网络,自主学习,很OK.\n");
    printf("2.不喜欢,很不喜欢,眼睛快瞎了,脑壳有点卡...\n");
    printf("3.中间派,不知道,说不清.\n");
    printf("4.其它...\n");
    printf("你的选择是:");
    scanf("%d",&answer);
    
    if(answer==4)
    {
        printf("请补充说明你的想法:\n");
        getchar();
        gets(words);
        
    }
    
    printf("\n");
    
    printf("当遇到问题时,你会选择:\n");
    printf("1.遇到问题就解决问题。不懂的,搜索式学习,逐个攻破.\n");
    printf("2.遇到问题,不高兴。然后,...,没有了.\n");
    printf("3.其它...\n");
    printf("你的选择:");
    scanf("%d",&answer);
    
    if(answer==1)
        printf(":)\n");
    else if(answer==2)
        printf("这样不能解决问题啊...我们选择1好不好:)\n");
    else if(answer==3)
    {
        printf("请补充说明你的想法: \n");
        getchar();
        gets(words);
    }
    
    return 0;
}

 

 

 

实验总结

1.

EOF,为End Of File的缩写,通常在文本的最后存在此字符表示资料结束。
在微软的DOS和Windows中,读取数据时终端不会产生EOF。此时,应用程序知道数据源是一个终端(或者其它“字符设备”),并将一个已知的保留的字符或序列解释为文件结束的指明;最普遍地说,它是ASCII码中的替换字符(Control-Z,代码26)。
在C语言中,或更精确地说成C标准函数库中表示文件结束符(end of file)。在while循环中以EOF作为文件结束标志,这种以EOF作为文件结束标志的文件,必须是文本文件。在文本文件中,数据都是以字符的ASCII代码值的形式存放。我们知道,ASCII代码值的范围是0~127,不可能出现-1,因此可以用EOF作为文件结束标志。
档案存取或其它 I/O 功能可能传回等于象征符号值 (巨集) EOF 指示档案结束的情形发生。实际上 EOF 的值通常为 -1,但它依系统有所不同。巨集 EOF会在编译原始码前展开实际值给预处理器。
C语言中,EOF常被作为文件结束的标志。还有很多文件处理函数处错误后的返回值也是EOF,因此常被用来判断调用一个函数是否成功。

原文链接:https://blog.csdn.net/henu1710252658/article/details/83040281

 

2.pow() 函数用来求 x 的 y 次幂(次方),其原型为:
    double pow(double x, double y);

且头文件:#include <math.h>

3.在连续运用多个scanf()函数或getchar()函数时,为了防止上一次输入的‘\n'被下一个输入函数读取,要在期间加入一个  getchar();  语句,使被缓存在读取区的’\n'被消耗,从而不会影响下一次读取。

4.在scanf()函数中,%f对应float类型,%lf对应double类型,两者需要严格区分,否则无法输入数据。

标签:lf,初体验,EOF,int,scanf,编程,C语言,printf,include
来源: https://www.cnblogs.com/2534517202qwe/p/16060007.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有