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进制整数。