C语言之变量使用

1.已知圆半径r=2.5,计算面积,并输出。

#include<stdio.h>
#include<stdlib.h>
#define PI 3.1415936
int main()
{
	double r=2.5;
	double s=0;
	s=PI*r*r/2;//r代表2.5,参与运算
	printf("s=%.2lf",s);//读取s的值输出 
}

说明:.2lf表示结果保留两位小数。

2.通过赋值运算修改变量的值;例题:已知2个圆半径分别为2.5,3.5,计算两个圆面积和,并输出。

#include<stdio.h>
#include<stdlib.h>
#define PI 3.1415926
int main()
{
	double r=2.5;
	double s=0;
	s=PI*r*r/2; //修改s的值 
	r=3.5;  //修改r的值
	s=s+PI*r*r/2; //修改s的值
	printf("s=%.2lf",s); 
}

 3.变量声明,可以在函数外声明变量,也可以在函数内声明变量。

3.1函数内声明变量

#include<stdio.h>
int main()
{
	int n=100;
	int m=n+100;
	printf("\nn=%d,m=%d",n,m);
	int x=100;
	x=x+100;
	int y=x;
	printf("\nx=%d,y=%d",x,y);
}

 注释:\n为换行字符

3.2函数外声明变量

#include<stdio.h>
int n=100;
int m=200;
int main()
{
	printf("\nn=%d\nm=%d",n,m);
	int x=100;
	x=x+100;
	if(x>0)
	{
		int y=x;
		printf("\nx=%d,y=%d",x,y);
	}
 } 

 4.限制变量读写

#include<stdio.h>
int main()
{
	double r=2.5;
	double s=0;
	const double PI=3.1415926;
	s=PI*r*r/2;
	printf("s=%.2lf",s);	
}

 注释:const函数用来限制变量写。

5.课后案例

问题陈述:在电影评分推荐系统中,用户的评分可以作为为其他用户推荐影片的数据依据。假设有一个影片评分机,每次给出一部影片,用户输入各自的评分结果。为了更好地为用户推荐影片,同时记录给出评分的用户ID。为了区分不同的用户,大多数系统会为每个用户指定一个唯一的ID。同时,考虑到系统中用户数量的持续增加,用户ID通常以长整型表示。影片评分范围设置为0~10的整数,采用int型表示。本节通过给出提示信息,实现用户输入自己的ID及给定影片的评分。

问题的输入:假设仅考虑一个用户的ID和相应的评分:user_id1及rating1。

问题的输出:该用户的ID及评分结果。

/*Author:"程序设计基础(C)"课程组
*Description:根据提示为指定的电影评分,先输入用户ID,再评分(0~10分)*/
#include<stdio.h>
int main()
{
	long user_id1; /*声明一个long型变量,保存用户ID*/ 
	int rating1; /*声明一个int型变量,保存用户评分*/
	printf("The movie to be rated:\n");/*输出提示信息*/
	printf("Title:Harry Potter and the Half-Blood Prince\n");
	printf("Please input User1 ID and rating(0~10):\n");
	scanf("%1d%d",&user_id1,&rating1); /*从键盘读取用户1的ID和相应评分*/
	printf("ID &ratings are %1d,%d\n",user_id1,rating1);/*输出用户ID及其评分*/
	return 0; 	
 } 

6.课后练习题

6.1分析程序及其结果

#include<stdio.h>
int main()
{
	int a,b;
	b=0;
	a=2147483647;
	b=a+100;
	printf("a=%d,b=%d",a,b);
	return 0;
}

分析:B的值为负数,原因在于int的取值范围为:

当int型整数超出自己范围时,会从它的最小值重新开始,例如:

int i=2147483647;//int范围:-2147483648~2147483647

int i+1=-2147483648;故int i+100=-2147483549.

6.2分析程序及其结果

#include<stdio.h>
int main()
{
	unsigned u=2200000000;
	printf("%u,%d",u,u);
	return 0;
 } 

 %u表示符号十进制整数,%d表示有符号10进制整数。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值