码迷,mamicode.com
首页 > 其他好文 > 详细

实验1(19.3.20)

时间:2019-03-20 22:15:08      阅读:186      评论:0      收藏:0      [点我收藏+]

标签:一个   除了   can   大写   ||   基本   http   理解   3.2   

 

【实验结论】

一、Part1:验证性内容。

1、输出学号。

这个不难,把C语言的基本框架拎出来,再加个printf函数输出就可以了。

#include<stdio.h>
int main(){
printf("201883300119");
return 0;
}

 PS:如果在printf("201883300119");这句中“”缺失的话系统会提示错误,因为它不符合格式化输出函数printf()的调用格式。(详见书本P45,有详细说明)

2、P3 例1.2

程序源代码如下:

#include<stdio.h>
int product(int,int);
int main(void){
int x,y,s;
scanf("%d%d",&x,&y);
s=product(x,y);
printf("The mul is:%d",s);
return 0;
}

int product(int a,int b){
int mul;
mul=a*b;
return mul;
}

 这里特别要注意语句后面的分号

这个程序还涉及到子函数的问题,除了要写出主函数的表达语句之外,还要定义一个子函数,定义子函数的语句在主函数之后。

3、P116页的三个习题

(1)题的代码

#include<stdio.h>
int main(){
    int a=5,b=7,c=100,d,e,f;
    d=a/b*c;
    e=a*c/b;
    f=c/b*a;
    printf("d=%d,e=%d,f=%d\n",d,e,f);
    return 0;
} 

如果按照正常的数学思维,很容易以为:

d=71,e=71,f=71

然而,运行出来是这样的(手动滑稽)

技术图片

这就是优先级和运算顺序的体现。

(2)(3)题同理,提醒我们要格外小心优先级和运算顺序,就不多加赘述了。

-----------------------------------假装华丽的分割线--------------------------------------------

二、Part2.补全程序。

1、判断奇偶数。

话不多说,补全后的程序源代码如下:

#include<stdio.h>
int main(){
    int x;
    printf("输入一个整数:\n");
    scanf("%d",&x);
    if (x%2==1)
    printf("是奇数\n");
    else
    printf("是偶数\n"); 
    return 0;
} 

运行结果:

技术图片                    技术图片                   技术图片

经验证无误

反思:写代码时,把if(x%2==1)中的“==”误写为“=”。

结果提示错误。

想了半天,才反应过来“=”是赋值运算符,“==”才是C语言的“等于”。

 

2、工作日/休息日的判定

放上源代码

#include<stdio.h>
int main(){
    int days;
    printf("输入一个1至7之间的整数:\n");
    scanf("%d",&days);
    if(days>=1&days<=5)
    printf("workdays,FIGHTING!\n");
    else if (days==6||days==7)
    printf("weekends,RELAX!\n");
    else
    printf("Ooops,not in 1 to 7\n");
    return 0;
} 

运行结果:

技术图片              技术图片          技术图片

经验证,无误。

这个也要注意运算符的优先级,之前因为没搞清楚优先级而总是输出一些奇怪的错误的结果,由于当时做实验时没拍下来,就不一一的分享和分析了。

注意:符号全部需要用英文符!!!(惨痛的教训)

为什么要说上面那句话呢,因为我不小心用了个中文的“;”在程序里,提示错误愣是没检查出来。。。。。。

 

3.英文小写转换为大写。

#include<stdio.h>
int main(){
    char ch;
    printf ("输入一个字符:\n");
    scanf("%c",&ch);
    if(ch>=97&ch<=122)
    ch=ch-32; 
    else
    ch=ch; 
    printf("%c\n",ch);
    return 0;
} 

运行结果:

技术图片                技术图片

经验证,无误。

掌握大小写字母A和a在ASCⅡ码数值差32,小写a的ASCⅡ码为97(十进制)就ok了。

 

【实验总结和体会】

1、首次实验,对操作系统不大熟悉,以及对一些基本的编码规则、语句规范理解不深,造成很多错误,花费时间过长。但是,熟能生巧。只有多练习,多熟悉,才能对C语言编程有更好的理解,才能又快、又准确地写出自己想要的程序。

2、语句需要在表达式后面加英文的分号“;”。别漏了!!!

 

2019.3.20

实验1(19.3.20)

标签:一个   除了   can   大写   ||   基本   http   理解   3.2   

原文地址:https://www.cnblogs.com/zys-0119/p/10565527.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!