数据类型、运算符、表达式———第一次上机实验

Part1: 验证性内容

/*学号*/ 
#include<stdio.h>
int main(){
    printf("201883300089\n");
    printf("yahooooooooooooooooooooooooooo\n") ;
    return 0;
} 

 Hello world改写

/*求两个整数的乘积*/
#include <stdio.h>
int product(int,int);   /*函数product()*/
int main(void) {
    int x,y,s;
    scanf("%d %d",&x,&y);
    s = product(x,y);
    printf("The mul is: %d",s);
    return 0;
}
 /*函数product()定义*/
int product(int a, int b) {
    int mul;
    mul = a*b;
    return mul;
}

 定义新的函数,并进行引用做乘法运算。

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

 整数相除时,注意数据类型和运算顺序及优先级

/*自加自减*/ 
#include<stdio.h>
int main(){
    int a=5,b=8;
    printf("a++=%d\n",a++);/*后置运算,先参与其他运算,在对变量进行改变 */ 
    printf("a=%d\n",a);
    printf("++b=%d\n",++b);/*前置运算,先改变变量,在进行运算*/
    printf("b=%d\n",b);
    return 0; 
} 
/*关系运算与逻辑运算*/ 
#include<stdio.h>
int main(){
    int a=5,b=8,c=8;
    printf("%d,%d,%d,%d\n",a==b&&a==c,a!=b&&a!=c,a>=b&&a>=c,a<=b&&a<=c);//关系运算符  >  <  >=  <=  ==  !=
    printf("%d,%d\n",a<=b||a>=c,a==b||b==c);                              //逻辑运算符  &&  ||   ! 
    printf("%d,%d,%d,%d\n",!(a==b),!(a>=b),!(a>=c),!(a<=b));
    return 0;     
} 

 

Part2:

ex1

// 程序功能:
// 要求用户从键盘输入一个整数,判断其是奇数还是偶数 
   
  #include <stdio.h> 
  int main() {
      int x;
      
      printf("输入一个整数: \n");
      scanf("%d",&x);
      
      // 在×××处填写相应表达式
      // 使得当表达式成立时,判定x是奇数,否则是偶数  
      if(x%2==1)  
          printf("是奇数");
      else
          printf("是偶数"); 
      
      return 0;
  } 

ex2

/* 工作日 休息日 */ 
 
 #include <stdio.h> 
  int main() {
      int days;
      printf("输入一个整数: \n");
      scanf("%d",&days);
      if(days>=1&&days<=5) // days在1到5之间
          printf("workdays, fighting\n");
      else if(days==6||7) // days是6或7
          printf("weekend, relax~\n");
      else
          printf("Ooops, not in 1~7\n");
      
      return 0;
  } 

    

ex3

/*大小写转换*/ 

  #include <stdio.h>
  int main() {
      char ch;
      printf("输入一个字符:\n");
      scanf("%c",&ch);
    if(ch>='a'&&ch<='a'+32)   // 判定ch是小写字母的表达式
          ch=ch-32 ; // 字母转换成大写字母的表达式语句
    printf("%c\n",ch);
      
      return 0;
  }

实验总结与体会

c语言学习了一段时间,也会写了一些短小的语句,但对于稍微复杂的问题却暂时还是不能解决。比如老师提出的对一个十进制的数求二进制表示,算法虽然已经想好了,但还暂时不能实现(输出结果始终是0,迫切的希望输入1可以输出一个1,完成我小语句的图灵测试)。毕竟首次接触(我之前的暑假寒假都在干什么),使用c语言也出现了许许多多意料中和意料外的事情。譬如忘掉分号,忘掉逗号,忘掉括号,甚至忘掉主函数和返回值,试图用核心的的几条语句无中生有。或是用没什么逻辑的语句诱骗计算机输出我根本不知道经过怎么计算得出的数字。或是修改之后没有重新编译一直点击运行,试图在我的递归操作中使其编译运行。至于意料之外的,也有一些,最头大的应该就是昨天半夜排好了博客却没有保存到草稿箱吧(可能上边这个自动保存是关机之后不起作用了吧)。其次应该是我这堪忧的打字速度,看着键盘找字母戳真的没什么速度可说。最后便是一些截屏、怎么打引号、分不清正斜杠反斜杠和怎么切换中英输入之类的琐碎事情了。感谢程序员的不懈努力,让我在一无所知的状况下都能玩的了电脑,打的了游戏。总之,虽然只是解决了简单的问题,但我还是相信我可以在c中找到乐趣的。               


                                                                                                                                                                                       嗯 会找到的     2019-03-21

猜你喜欢

转载自www.cnblogs.com/astraeus/p/10575660.html